2015技術總結

來源:互聯網
上載者:User
這一年也接近尾聲了,也專註寫了不少代碼,中間有很多嘗試,也有很多覺得有意義的地方值得記錄一下,順便半年沒寫 Blog 了,也刷下存在感(雖然本來就沒有)

寒假在家的時候沒事研究了一陣 Laravel 的代碼,順手修了一個 Bug, 感覺對 Laravel 的設計思想有了一些更深入的理解,但是後來的項目中也沒有用過這個架構了,原本還想再開發幾個 Laravel 的小外掛程式,也不了了之了,算是一個不小的遺憾:)

回到學校的時候研究了一下 Excel 的檔案結構,只瞭解了一下舊版本的 Excel 2003 的檔案,看了很多 Microsoft 的文檔,尤其是和 Compound File 有關的,對 Excel 有了更多的理解,也按照文檔和理解寫了一個 PHP 的 Excel 的擴充,用來快速讀取一個 Excel 2003 檔案,目的是為了提供一個比 PHPExcel 更加快速的讀取方案,實踐效果還是不錯的,比 PHPExcel 快千倍(因為是純 c 寫的嘛),地址在這裡 php-fast-excel,但是也是由於最後項目裡沒有更多的需求了,所以也沒有再更新 Todo List 上面的事情了。但是在其它多重專案中有用到另一個 Excel 的擴充 php_fast_xlsxwriter,這個是用來匯出為一個 Excel 07 版本的文檔,利用了 xlsxwriter 的 c 庫,封裝成了一個 PHP 的擴充,實踐證明,比 PHPExcel 啟動並執行速度快很多,基本上瞬間就出來結果了。

由於有了兩次寫 PHP 擴充的經曆,然後就在春天去了次 PHPCon,去聽了 PHP 在實際業務中的一些應用,也從鳥哥那裡瞭解了 PHP 7 的新特性,以及一些關鍵點的實現,講實在的,去聽了下還是受益匪淺的。

後來的大部分時間都是在做業務方面的東西,從理解業務到實現這個業務,在這個過程中,有嘗試著去使用設計模式。發現有的時候良好的設計會給未來維護帶來很大的方便,如果設計的夠通用的話,有的新業務也可以用舊業務的架構進行實現,實現了事半功倍的效果。但是,有時候這也會是個雙刃劍,因為業務總不可能按照一開始的設計走,所以可能有多餘的設計,這一點是要注意並且避免的。所幸的是,這一年的設計基本上滿足了大多數需求,也給自己省了不少工作量。但是,由於自身的不成熟,導致了這些東西只能夠為自己所使用,爭取在明年以及未來的設計中,能夠更易用,而且能夠有讓其他人很容易上手的架構設計方案。

其實四月份的時候就立了另一個 iOS 的項目,因為也是第一次完整的做一個 GUI 的項目(以前做的一個純粹是 Win32 API + BMP 圖的實現),所以拖到了現在,才把功能做完,還有一些細節方面的美化,可能要到過年完後才能看到這個 App。這中間在十一我回家的時候經曆了一次重構,由原先的隨便拼 ViewController 的方案,改成了一個邏輯比較清晰的,後來加功能的時候也方便了很多,然後就是十二月的時候做了一文混排的實現,利用了 YYText 的庫,發現國人做的一些開源項目已經很不錯了。在做 iOS 項目的時候暴露出自己很多方面的不足,尤其是多線程,以及 UI 渲染實踐的匱乏,只懂得理論,而這一次剛好是一個很好的機會,從非同步多線程到 UI 渲染,都有了一次極大的理解和提升。

除了在技術方面的工作之外,在經曆過幾次“見世面”和“坑人及被坑”後,發現有好多地方還有很大的學習空間,不僅僅要在技術能力上下功夫,更應該在為人處世上有所注意和提升。

展望

技術方面,儘可能往更深層次走,PHP 經常被黑是因為它實在是太過於簡單了,爭取明年對 PHP 7 的核心有一個深入的理解;架構設計方面,儘可能做到易於他人理解,易於多人使用,更多的減少重複工作量,儘可能將系統做成可組態管理的,而不是寫死在代碼中的;加深對 UI 以及多線程編程的理解,爭取能夠再重構一下 iOS 的代碼,用一些比較好的思想( Promise 什麼的),來使得已經臃腫的代碼更簡潔、更易讀;演算法方面,以前都是有心情做一做,明年還是爭取有個目標出來,翻了下演算法導論發現八成已經學過了,爭取多做做題,保持一種能做出題的狀態來。並且多總結一些經驗更新部落格吧= =這都半年沒寫了,以前的也都寫的是皮毛,總之文字和表述能力還需要加強。

非技術方面,爭取有個女朋友:)

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.