我已經閱讀了關於OOP DDD/PoEAA /四人幫的幾本書,它們都沒有涉及驗證的主題 - 它似乎總是假定數據是有效的。面向對象設計 - 何處/何時驗證屬性?
我從這篇文章的答案(OOP Design Question - Validating properties)中收集到一個客戶端應該只嘗試在域對象上設置有效屬性值。
此人已經問過類似的疑問,仍然沒有答案:http://bytes.com/topic/php/answers/789086-php-oop-setters-getters-data-validation#post3136182
那麼,你如何確保它是有效的? 你有沒有一個「驗證方法」,每個吸氣和吸氣器?
- isValidName()
- 的setName()
- 的getName()
我似乎缺少有關OOP數據驗證的一些關鍵基礎知識 - 你可以點我一本書,封面這個話題詳細? - 即。覆蓋不同類型的驗證/不變量/處理反饋/使用例外或不等
我想補充的是,經過一些調查研究,我發現這個有用:http://devcity.net/Articles/381/1/article.aspx – 2010-04-09 22:08:10