针对初学者的设计原则?

15 投票
18 回答
2821 浏览
提问于 2025-04-15 16:48

我编程大约有一年了,写的东西都能运行,但从我的角度来看,代码写得非常糟糕。我想知道有没有什么好的(免费的)软件设计书籍,可以给初学者一些指导?我觉得如果我了解一些软件设计的思维过程,就不会遇到这么多问题了。

18 个回答

7

DRYYAGNI是初学者很好的入门概念,你需要学习和理解面向对象编程

关于设计模式(这比DRY和面向对象编程稍微复杂和抽象一些),你可以从免费的设计模式 - Java 伴侣中学习。虽然它不是Python的内容,但这并不重要——经典的设计模式在任何地方都适用。

当你想更进一步时,可以看看领域驱动设计Eric Evans的免费DDD书籍),当然还有单元测试,相信我,这会让你的代码和设计能力都有所提升。

12

《Head First Design Patterns》 可能是一本更容易理解的书,适合初学者入门GoF的《设计模式》这本书。

Steve McConnell的《Code Complete》 是一本关于代码的好指南,里面讲了很多内容,包括如何在那些不支持某些好策略的编程语言中使用这些策略。

Martin Fowler的《Refactoring》 里提到了很多设计模式,但它更像是一本关于一般代码的目录,教你如何写得更好(我在读《Code Complete》的时候也读了这本书,差不多在读《设计模式》之前的几年里,《Refactoring》对我看待自己写的代码产生了很大的影响。我觉得是朝着更好的方向发展)。

这些书都不是“免费的”。但你想要多好的建议呢?如果你想在职业上有所投资,这其实是最便宜的方式。

4

多看看别人的代码。这是学习更好设计原则的最佳方法。在工作中看看同事的代码,论坛上看看别人的代码,关注一些开源项目……而且要不断地编码,因为你在过程中犯的错误才是最好的老师。

推荐你看看一本书,《务实程序员:从学徒到大师》。这本书非常适合填补你知识上的空白。

撰写回答