.net framework 4.0 40個跡象顯示你還是PHP菜鳥
我願意把本文歸入我的「程式設計糗事」系列。儘管在正規大學課程中,接觸到軟體工程、企業級軟體架構和資料庫設計,但我還是時不時地體會到下述事實帶給我的「罪惡」感,當然,都是我的主觀感受,並且面向Eclipse:
你是PHP菜鳥,如果你:
1. 不會利用如phpDoc這樣的工具來適當地註解你的程式碼
2. 對優秀的整合開發環境如Zend Studio或Eclipse PDT視而不見
3. 從未用過任何形式的版本控制系統,如Subclipse
4. 不採用某種編碼與命名標準,以及通用約定,不能在專案開發週期裡貫徹落實
5.不使用統一開發方式
6. 不轉換(或)也不驗證某些輸入或SQL查詢串(譯註:參考PHP相關函數)
7. 不在編碼之前徹底規劃你的程式
8 . 不使用測試驅動開發
9. 不在錯誤開啟狀態下進行編碼和測試(譯註:參考PHP函數error_reporting)
10. 對調試器的好處視而不見
11. 不重構你的代碼
12. 不使用類似MVC模式把程式的不同層次分割開
13. 不知道這些概念:KISS, DRY, MVC, OOP, REST
14. 不用return而是直接在你的函數或類別中輸出(echo/print)內容
15. 對單元測試或通用測試的優點視而不見
16. 總是返回硬編碼的HTML,卻不返回純粹的數據,字符串,或對象
17. 總是對「訊息」與「設定參數」進行硬編碼
18. 不對SQL查詢語句做最佳化
19. 不使用__autoload(譯:參考PHP手冊相關描述)
20. 不允許智慧型錯誤處理(譯註:參考PEAR的ErrorStack)
21. 使用$_GET取代$_POST來做具有破壞性的傳遞操作
22. 不知道怎麼利用正規表示式
23 . 從未聽過SQL注入或跨站腳本
24. 不允許簡易配置,也不允許類別的建構函式接受參數傳遞而後執行set/get方法,或運行時的常數定義
25.不理解物件導向程式設計(OOP)的優點和缺點
26. 不視情形大小而濫用OOP
27. 自認為實現可重複使用的軟體一定等於/需要讓你的程式碼遵循OOP
28. 不利用智能缺省值
29. 沒有單一的配置文件
30. 不想暴露文件源碼,卻用.inc後綴名取代了.php
31. 不使用資料庫抽象層
32. 不能保持DRY作風,即不重複自己,如果你總是在複製粘貼一些東西,說明你設計得很差勁
33. 沒有實現讓一個函數/類/方法只做一件事,也不能組合利用它們
34. 沒能嘗試OOP的特長,如抽象類別、介面、多態、繼承,存取控制修飾符(譯:如public, private, protected)
35. 不用現有的設計模式最佳化你的程式體系設計
36. 不允許你的使用者在你擁有很多檔案或目錄的情況下定義基礎目錄
37. 污染了名稱空間,例如用常見字串命名你的函式庫函數
38. 使用資料庫表時不使用表前綴
39. 不使用統一的模板引擎
40. 不關注已有的PHP開發框架,懶於探索;其實先進的開發理念和美妙代碼就蘊含其中。
譯註:另有馬永佔翻譯版本《PHP程式設計師的40點陋習》,簡潔並配有譯者註釋。
以上就介紹了.net framework 4.0 40個跡象表明你還是PHP菜鳥,包括了.net framework 4.0方面的內容,希望對PHP教程有興趣的朋友有所幫助。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

JWT是一種基於JSON的開放標準,用於在各方之間安全地傳輸信息,主要用於身份驗證和信息交換。 1.JWT由Header、Payload和Signature三部分組成。 2.JWT的工作原理包括生成JWT、驗證JWT和解析Payload三個步驟。 3.在PHP中使用JWT進行身份驗證時,可以生成和驗證JWT,並在高級用法中包含用戶角色和權限信息。 4.常見錯誤包括簽名驗證失敗、令牌過期和Payload過大,調試技巧包括使用調試工具和日誌記錄。 5.性能優化和最佳實踐包括使用合適的簽名算法、合理設置有效期、

會話劫持可以通過以下步驟實現:1.獲取會話ID,2.使用會話ID,3.保持會話活躍。在PHP中防範會話劫持的方法包括:1.使用session_regenerate_id()函數重新生成會話ID,2.通過數據庫存儲會話數據,3.確保所有會話數據通過HTTPS傳輸。

SOLID原則在PHP開發中的應用包括:1.單一職責原則(SRP):每個類只負責一個功能。 2.開閉原則(OCP):通過擴展而非修改實現變化。 3.里氏替換原則(LSP):子類可替換基類而不影響程序正確性。 4.接口隔離原則(ISP):使用細粒度接口避免依賴不使用的方法。 5.依賴倒置原則(DIP):高低層次模塊都依賴於抽象,通過依賴注入實現。

在PHPStorm中如何進行CLI模式的調試?在使用PHPStorm進行開發時,有時我們需要在命令行界面(CLI)模式下調試PHP�...

如何在系統重啟後自動設置unixsocket的權限每次系統重啟後,我們都需要執行以下命令來修改unixsocket的權限:sudo...

靜態綁定(static::)在PHP中實現晚期靜態綁定(LSB),允許在靜態上下文中引用調用類而非定義類。 1)解析過程在運行時進行,2)在繼承關係中向上查找調用類,3)可能帶來性能開銷。
