大家好,我是飞宇。
前几天出版社给我邮寄了一本《代码整洁之道》以及《代码整洁之道:程序员的职业素养》,我看了下还不错,这本书也是经典书籍了。今天给大家送几本书,文末有赠书活动,欢迎参与,以前也做过类似的活动,很多小伙伴都觉得不错。
vjlhzfsmitk64089353544.png
“代码整洁是一套理念和技术,这些理念和技术能够帮助你像个工匠一样工作,让你回家时为自己的工作感到自豪。无论你是在实现业务逻辑,还是在进行系统编程,这都无所谓。它只是一套帮助你做好工作、让你感到满意的技术和理念。”
——Robert C. Martin
当前,AI生成代码的普及为软件开发带来了很大的变化,提高了开发人员的学习效率和开发效率,但是AI写的代码是好代码吗?AI写的代码是否会影响团队协作呢?专业开发人员是否会因此被替代?
随着项目的增长,AI生成代码如何审查、维护和扩展?AI生成代码的质量和安全如何保证?
不止一位资深从业者对此表示担忧,Sonar首席执行官塔里克·肖卡特表示:“开发人员感觉与AI助手生成的代码脱节,这导致问责和测试方面存在差距。”
Sonar产品副总裁法布里斯·贝林加德也表达了同样的看法:“AI无法完全取代人类的批判性思维或审查。”
《代码整洁之道》和《代码整洁之道:程序员的职业素养》的作者Bob大叔(Robert C. Martin)表示:“程序员很容易过度依赖像Copilot这样的工具,看到它们生成的代码就不加批评地接受,这很危险。我的建议是,要小心,把它当作工具来使用,并且始终记住,如果使用不当,工具也会伤害你。”
Bob大叔是软件工程领域的权威人物,设计模式和敏捷开发的先驱,敏捷联盟的首任主席,以及C++ Report的前主编。
他在《代码整洁之道》和《代码整洁之道:程序员的职业素养》中以独特的视角阐述了代码编写艺术,不仅包含如何编写整洁、高效的代码,更深度探索了编程艺术。
面对当前AI生成代码普及的境况,他表明了对初级程序员使用AI实现代码的担忧,并指出:“在职业生涯的前几年,甚至应该逐渐减少使用AI。”
hgzzttihegx64089353645.png
Bob大叔(Robert C. Martin)Part.1
《代码整洁之道》:编程艺术的深度探索与实践
knnprvkf1by64089353745.jpg
▼ 点击下方,即可购书
Bob大叔在书中以其丰富的编程经验和深厚的理论功底,为程序员精心打造了一套完整的编程实践方法。书中介绍了“整洁代码”的含义,从第2章开始,每一章都聚焦编程中的某个具体方面或技术,包括命名、函数(第3章)、注释、格式、对象和数据结构、错误处理、边界、单元测试、类、系统等,并用有趣、丰富的场景案例介绍编程中的核心概念、整洁技巧以及最佳实践。
nssjkvgaruv64089353845.png
代码不仅仅是实现功能的工具,更是程序员与计算机之间沟通的桥梁。因此,代码的可读性和可维护性至关重要。在代码命名规范上,Bob大叔强调好的命名就是好的代码,并在书中细致拆解。他提倡使用准确、简洁且具有描述性的命名,避免使用模糊、冗长或具有误导性的命名。这样的命名规范不仅有助于提升代码的可读性,还能让其他程序员在阅读代码时更加轻松地理解作者的意图。
xxmsvnryoua64089353945.png
fsknzvb5r2264089354045.png
2npul2z2cnn64089354145.png
r3z0vqw3i5b64089354245.png
hhhbeujid5d64089354345.png
在函数设计原则方面,Bob大叔深入探讨了单一职责原则、开放封闭原则等核心原则。每个函数应该只负责一个特定的功能,保持函数的短小精悍,这样有助于提升代码的可维护性和可扩展性。他还提倡使用开放封闭原则来设计函数,即函数应该对扩展开放,对修改封闭,这样可以在不改变现有代码的情况下,通过增加新的代码来扩展系统的功能。
timtw52rpyy64089354445.png
li0axcr0hin64089354545.png
24qc5yq14l564089354645.png
ys5sf2jxrph64089354745.png
lyavswlheyr64089354845.png
在类结构的合理组织上,Bob大叔强调类的职责单一性和高内聚低耦合的设计原则。一个类应该只负责一个特定的职责,避免类的功能过于复杂和冗余。同时,类与类之间应该保持低耦合,即类与类之间的依赖关系应该尽可能简单和明确,这样可以降低系统的复杂度和出错率。为了实现这些设计原则,Bob大叔还介绍了一些实用的设计模式,如工厂模式、单例模式等,这些模式可以帮助程序员更好地组织代码,提高代码的重用性和可扩展性。
5a3sqiq3q1e64089354946.png
0emkyby0xbn64089355046.png
mgfxvmv3f1o64089355146.png
总的来说,这些实践方法不仅能够帮助我们写出更加整洁、易读的代码,还能够提升编程思维能力和解决问题的能力,提高业务沟通效率。Part.2
《代码整洁之道:程序员的职业素养》:编程人生的全面素养提升
lhipn4dnyvm64089355246.jpg
▼ 点击下方,即可购书
如果说《代码整洁之道》是程序员构建编程基础的坚固基石,那么《代码整洁之道:程序员的职业素养》则是帮助我们提升全面素养的宝典。这本书不仅关注代码本身,更着眼于程序员在职业生涯中需要具备的素养和能力。书中用有趣、真实的案例详细阐述了程序员如何与团队成员进行有效沟通、如何管理时间和任务、如何保持持续学习和成长等关键工作技能。这些工作技能对于程序员来说至关重要,不仅能帮助我们更好地适应工作环境的变化,还能提升我们的团队协作能力和个人竞争力。在沟通方面,书中提供了多种实用的沟通技巧和方法,帮助程序员更好地与团队成员、项目经理和其他利益相关者进行沟通。这不仅有助于减少误解和冲突,还能够提升项目的整体进度和质量。
aofi5ponfzi64089355346.png
nbh0yvitfu564089355446.png
在时间管理方面,书中介绍了多种时间管理工具和方法,帮助程序员更好地规划和管理工作时间。这不仅能够提高工作效率,还能够减少工作压力。
在持续学习和成长方面,书中强调了程序员需要保持学习态度和成长意识。通过分享多种学习资源和成长路径,鼓励程序员不断挑战自己、超越自己,成为更加优秀的编程人才。
Part.3
“代码整洁之道”双子塔引领编程之路,成就卓越编程人生不论是在业务逻辑实现还是系统编程中,追求代码整洁都是提升工作效率和保证代码质量的关键。AI在软件开发领域的兴起无疑为行业注入了新的活力,提升了效率并拓宽了可能性边界。面对AI生成代码的普及,我们既要拥抱其带来的便利,更要清醒地认识到其局限性。正如Bob大叔所言,代码整洁与职业自豪感源自工匠般的心血倾注,这是任何技术目前难以完全复制的。《代码整洁之道》与《代码整洁之道:程序员的职业素养》如同编程世界中的双子塔,为我们提供了代码整洁和编程人生的宝贵指导和启示,让我们重新翻开这两本经典之作,拥抱代码整洁,成就卓越编程人生。
▼ 点击下方,即可购书
▼ 点击下方,即可购书
感兴趣的小伙伴可以点击上面链接购买
赠书活动
点击下方公众号,回复 抽奖 二字即可参与抽奖,注意不是本号哈
如下所示
欢迎 在看丨留言丨分享至朋友圈 三连 |