大家好
最近在看这本书:
Bob Martin 的“敏捷软件开发、原则、模式和实践”
本书中列出了以下(SOLID)敏捷设计原则:
- 单一职责原则
- 开闭原则
- 里氏替换原则
- 接口隔离原则
- 依赖倒置原则
由于这本书很旧(2003 年),我有一个问题:
- 除了 SOLID 方法,还有其他新开发的原理吗?如果是,是否有任何书籍/网站涵盖了这些新兴原则以及您可以推荐给我的实用代码示例?
当然,我可以谷歌搜索其中的一些。
但是,在stackoverflow中读写了很多profis,所以我也想听听他们的意见:D
大家好
最近在看这本书:
Bob Martin 的“敏捷软件开发、原则、模式和实践”
本书中列出了以下(SOLID)敏捷设计原则:
由于这本书很旧(2003 年),我有一个问题:
当然,我可以谷歌搜索其中的一些。
但是,在stackoverflow中读写了很多profis,所以我也想听听他们的意见:D
您可能想查看Code Complete和Pragmatic Programmer等书籍,因为它们还讨论了一些优秀的开发原则。
我喜欢 Eric Evans 的领域驱动设计方法:
正如您所描述的 SOLID 方法,DDD 主要是健全和干净的面向对象指南。DDD 尤其专注于创建尽可能与系统中要实现的业务相匹配的设计,而不是让它受您使用的技术和/或框架的指导。这导致了出色的可测试设计,易于重构。
为了支持 DDD,我喜欢 Alistair Cockburn 的 Hexagonal Architecture。它为您提供了有关面向对象系统的一般设计的好主意:
我目前正在探索的一种更先进和创新的方法是中心理论,但这还没有真正记录在案。关于它的介绍:
UncleBob 的书是一个坚实的开始;)我也会将他的 Clean Code 添加到您的阅读列表中。对于实际的代码构建来说,这是一本很棒的书。
善良,
担
这份清单不仅是为了设计原则,也是对 OOP、敏捷架构、设计和实践的解释,它基于我的实际项目中的错误模式和常规痛苦,包括书籍和在线文章:
您可以在作者/Object Mentor 的主页http://www.objectmentor.com找到更多设计原则。它们与 SOLID 大约在同一时间编写,您可以在http://www.objectmentor.com/resources/publishedArticles.html找到其中的大部分。