每个开发人员都必须知道的设计模式?

2022-09-01 09:49:49

每个开发人员都必须知道的设计模式是什么?

我对Java Web开发人员与Spring & Hibernate合作的上下文很感兴趣。我经常听说,良好的设计模式知识对于使用这些框架至关重要。任何人都可以列出具体细节吗?

例如,我知道理解抽象的工厂和工厂模式,单例模式等是绝对必要的。我正在寻找一个全面的列表。


答案 1

控制反转

如果您要设计解耦系统,则需要知道如何正确链接类之间的依赖关系。

命令模式和变体

特别是在Java中,由于语言中缺少闭包和函数指针,因此必须学习如何将一段功能作为对象传递给另一个方法。

工厂模式

工厂在Java框架中无处不在,了解为什么以及何时使用工厂模式至关重要。

单例(模式和反模式)

学习如何负责任地使用单例模式对于理解您可能正在阅读的其他人代码中的陷阱非常有帮助。

总的来说,学习模式的原因如何更重要。知道何时不应用模式与知道何时应用模式同样重要。


答案 2

每个人都应该知道辛格尔顿,但什么时候使用它!目前,这是我在工作项目中感到非常痛苦的根源。

单例使代码难以理解和遵循,并使编写单元测试变得更加困难。我喜欢博客文章Singletons是病态的骗子


推荐