“优秀编程书籍”文章中很少提及的五本优秀编程书籍
《惯犯》
1. 实用的面向对象设计:使用 Ruby 的敏捷入门
2. 使用 Python 进行测试驱动开发(又名“服从测试山羊”)
3. C#中的函数式编程
4. 软件安全的24宗罪:编程缺陷及其修复方法
5. 敏捷测试:测试人员和敏捷团队的实用指南
结论
如果你搜索“编程书籍”或“开发者必读书籍”,你会找到很多文章,上面都列出了同样的五六本书籍。在本文中,我想推荐一些优秀的编程书籍,但它们并没有得到应有的关注。
这里没有附属链接,只是我个人对一些值得更多认可的书籍的看法。其中三本书是针对特定语言的,但如果它们不是你的语言,也不要错过。你会发现里面的基础课程适用于一般的开发。这份清单上的书籍没有只适合特定语言的书籍。
《惯犯》
这些书都很棒,只是没有得到足够的关注,但这仅代表我个人的看法。我鼓励您在评论区发表您自己的看法,但请记住,这份书单是“另类”书籍。具体来说,我避免提及像《程序员修炼之道》 、《精益求精》、《人月神话》之类的书。您知道,这类文章里总是会提到这些书。
1. 实用的面向对象设计:使用 Ruby 的敏捷入门
作者:Sandi Metz,链接在此。
这本书非常适合学习面向对象编程原理,也是从“初学者”过渡到“中级”面向对象编程技能的理想起点。说实话,我对这本书赞不绝口,而且很惊讶它竟然没有被频繁提及。
如果你不懂 Ruby,也不用担心。书中的示例足够直观(Ruby 语法也足够简单易懂),你仍然可以吸收书中的课程内容。
2. 使用 Python 进行测试驱动开发(又名“服从测试山羊”)

您可以在此处 免费在线阅读此文。
《Python 测试驱动开发》是一本很棒的入门书,介绍了 Python 和 Django 中的 TDD。作者 Harry Percival 非常擅长从头到尾讲解 TDD,涵盖了单元测试、模拟测试,甚至还涉及了持续集成。
你需要具备 Python 的入门水平以及一些基本的 Web 开发知识,才能真正从本书中受益。本书对 Django 的大部分内容都进行了详尽的讲解。
3. C#中的函数式编程
作者:Oliver Sturm,链接在此
这本书非常适合学习函数式编程范式,尤其适合面向对象编程 (OOP) 背景的学生。本书之所以能如此透彻地讲解函数式编程原理,是因为 C# 不像 Haskell 那样专为函数式编程而构建。因此,为了理解函数式编程的概念,你需要比学习纯函数式语言时付出更多努力。
您需要具备初级到中级的 C#(或其他强类型 OOP 语言)熟练程度才能充分利用本书。
4. 软件安全的24宗罪:编程缺陷及其修复方法
作者:Michael Howard、David LeBlanc、John Viega
本书涵盖了从命令注入到密码学漏洞等一系列令人意想不到的安全问题。以我个人的经验来看,编程指南和学习资料往往在安全信息方面有所欠缺,因此对于初出茅庐的程序员来说,这样的一本书必不可少。
要完全理解本书,你需要一些基础知识,但要具备广泛的知识。例如,如果你对数据库一无所知,你可能无法理解 SQL 注入的严重性。相反,本书提供了多种语言的示例,这使得它与语言无关(或者我猜是多语言的?)。
这本书的一个缺点是价格有点贵。
5. 敏捷测试:测试人员和敏捷团队的实用指南
Lisa Crispin 和 Janet Gregory 合著
这本书或许看起来有点奇怪,但相信我,对于测试人员和开发人员来说,这本书绝对值得一读。这本书非常棒,作者们在测试社区也非常活跃。在这本书中,作者们探讨了敏捷测试象限的测试策略、理念、技巧和案例。我相信优秀的开发人员也一定是优秀的测试人员,而忽略这本书中值得学习的经验教训,对你的职业发展/技能发展无疑是雪上加霜。
不过,我要指出的是,如果你已经在软件开发团队中积累了一些经验(无论担任何种角色),本书的课程会更有意义。如果你不了解 SDLC 在实践中是如何运作的,这本书就不会那么引人入胜。
另外值得一提的是,作者还写了《更多敏捷测试》,分享了自第一本书出版以来的更多经验教训。这本书也相当不错,如果你喜欢第一本书,强烈推荐。
结论
希望这份书单对你有所帮助。一旦你读完了那些最常被推荐的软件开发书籍,下次再想找到好的推荐就难了。就像我之前说的,对于那些值得一读但推荐不足的书籍,请随意发表你的看法。
文章来源:https://dev.to/erikwhiting88/5-great-programming-books-rarely-laid-in-great-programming-books-articles-4l5j