Yᴏᴜʀ Pʀᴏᴅᴜᴄᴛ ʜᴇʀᴇ!
在此處新增指向您的公司或專案的連結:購買 GitHub 贊助。
世界的邏輯先於一切真理與謬誤。
— 路德維希‧維根斯坦[1]
程式設計師所相信的謊言的精選清單。
例如一個想法:有效的電子郵件地址恰好有一個@
字元。因此,您將使用此規則來實作電子郵件欄位驗證邏輯。正確的?錯誤的!現實情況是:電子郵件可以有多個@
字元。因此,您的實作應該允許這樣做。最初的想法是你所相信的謊言。
以下列出的錯誤文章將全面列出您應該注意的錯誤信念,以幫助您成為更好的程式設計師。
<
和>
會導致 XSS 攻擊 - 由於英國允許公司使用特殊字元註冊,駭客利用它們註冊"><SCRIPT SRC=MJT.XSS.HT></SCRIPT> LTD
,而且還; DROP TABLE "COMPANIES";-- LTD
、 BETTS & TWINE LTD
和SAFDASD & SFSAF ' SFDAASF" LTD
。tax
- PHP 5.4+ 稅務管理庫。 YYYY
、 yyyy
以及為什麼您的年份可能是錯誤的 - 日期的字符串格式很難。libvldmail
- 一個實作基於 RFC 的電子郵件地址檢查的函式庫。 NSPersonNameComponentsFormatter
- 人名組成部分的在地化表示。 關於字元編碼、字串格式化、unicode 和國際化。
Latin-1
假設 - 大多數程式設計師在Latin-1
上花費了太多時間,他們忘記了其他腳本的怪癖。hostname-validate
- 嘗試在 Python 中驗證主機名稱。 libphonenumber
- Google 的通用 Java、C++ 和 JavaScript 函式庫,用於解析、格式化和驗證國際電話號碼。也適用於 C#、Objective-C、Python、Ruby 和 PHP。 20252
),因為他收到的郵件非常多。libaddressinput
- Google 的通用 C++ 和 Java 函式庫,用於解析、格式化和驗證國際郵寄地址。addressing
- PHP 5.4+ 尋址庫,由 Google 資料集提供支援。postal-address
- 用於解析、標準化和呈現郵政地址的 Python 模組。address
- 使用 Google 資料集驗證和格式化地址的 Go 庫。 /
開頭,那麼它就是一個路徑。在 Windows 上則不然。/dev/urandom
神話 - 關於/dev/urandom
和/dev/random
的一些事情被一次又一次地重複。但它們仍然是錯誤的。mtime
的流行誤解 - 關於為什麼文件的mtime
比較可能被認為有害的帖子的一部分。0.1 + 0.2 != 0.3
。MR
後綴視為Mister
並將其刪除。 隨時歡迎您的貢獻!請先查看貢獻指南。
過去幾年,這份清單在社群媒體上頗受歡迎。請參閱其他地方討論和提及的內容。
標題圖片是根據 Iza Bella 於 2010 年 2 月拍攝的經過修改的照片,並根據 Creative Commons BY-SA 2.0 UK 許可分發。
[1]:筆記本,1914-1916 (Liveright,2022)-來源:第 14e 頁。 [↑]