thinkPHP如何最佳化代碼

來源:互聯網
上載者:User
現在感覺自己代碼很重複,邏輯一複雜,代碼就全堆積在一起。沒辦法分開,不利於維護和擴充。請問大神們該如何最佳化。

回複內容:

現在感覺自己代碼很重複,邏輯一複雜,代碼就全堆積在一起。沒辦法分開,不利於維護和擴充。請問大神們該如何最佳化。

如果不說理論,單單從php出發:

  1. 學習php開源項目,推薦laravel或者symfony,嚴格的來講thinkphp算不上物件導向。推薦的理由是:程式碼群組件化程度高(寫出的代碼易於分享和重用), 各大測試載入器支援非常好。

  2. 覆蓋測試,常用的測試架構有phpunit, phpspec, behat,codecept。 想要一下子寫出優秀的代碼很難,經驗需要在不斷的最佳化中汲取,不寫測試的代碼是無法重構的。推薦一個簡單清晰的解釋怎麼寫測試的投影片:
    http://www.slideshare.net/cakper/2014-0407-php-spec-the-only-design-tool-you-need-4developers

  3. 代碼書寫遵循psr1/psr2代碼標準 https://github.com/PizzaLiu/PHP-FIG。

http://www.zhihu.com/question/35992354

看書,提升理論水平,沒有理論都是瞎搞

推薦兩本,先看第一本,再看第二本

《公司專屬應用程式架構模式》
http://book.douban.com/subject/1230559/

《實現領域驅動設計》
http://book.douban.com/subject/25844633/

順便黑一下,少用thinkphp,thinkphp用得越熟練,代碼越爛

首先是選對架構,laravel 或者 yii 是不錯的選擇。其次你認為代碼複雜,邏輯有重複能反映出現有系統架構已經不能滿足未來業務增長,臭長的業務代碼要抽絲剝繭的抽離或者獨立出來,用好的架構模式或者架構來應對。

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.