《代码大全 2》4
初读《代码大全2》时,最直观的感受是它像一本“代码工程师的行为手册”。书中对变量命名、注释规范、代码格式等基础问题的细致阐述,颠覆了我此前“能跑就行”的粗放认知。作者强调“代码首先是给人读的,其次才是给机器执行的”,这句话让我重新审视自己的代码习惯——曾经为了图快用“a”“b”做变量名,为了省时间跳过注释,结果半个月后回头看自己的代码都需要“考古”。
书中关于“变量命名的力量”章节让我印象深刻。它提出“使用描述性名称,避免模糊的缩写”,并举例对比“calcTotal()”与“ct()”的可读性差异。我试着在项目中实践这一原则,将原本的“tmp”“res”等变量名替换为“userInputTemp”“orderResult”,团队协作时同事再也不用频繁来问“这个变量到底代表什么”,沟通效率明显提升。
初读阶段最有收获的是建立了“规范即效率”的认知。以前总觉得遵循规范会拖慢开发速度,但实际上当代码形成统一风格后,调试时定位问题更快,重构时修改成本更低。就像书中说的:“好的规范不是束缚,而是让你在正确的轨道上跑得更稳。”这一阶段的阅读,让我从“写代码”向“写好代码”迈出了第一步。如果说初读聚焦“怎么做”,再读《代码大全2》时,我更关注“为什么这么做”以及“如何做得更好”。这一阶段对“软件设计”和“质量保障”两部分内容有了更深的理解。书中将设计比喻为“搭建建筑的蓝图”,强调“在写第一行代码前,设计已经开始”,这彻底改变了我“边写边想”的开发模式。
在设计原则部分,“单一职责原则”和“开闭原则”的讲解让我茅塞顿开。此前开发一个用户管理模块时,我把用户信息查询、修改、权限校验都写在一个类里,导致后续需求变更时,改一处代码牵一发而动全身。按照书中的方法重构后,我将模块拆分为“UserEntity”“UserService”“PermissionChecker”三个类,每个类只负责一项功能,后续新增“用户注销”功能时,只需在“UserService”中扩展方法,无需修改其他类,代码的可维护性大大提高。
质量保障章节中,“防御式编程”的理念让我受益匪浅。书中建议“永远不要相信输入数据”,我在项目中加入了参数校验、异常捕获等机制,原本经常出现的“空指针异常”“数据格式错误”等问题减少了80%以上。同时,书中对单元测试的强调也让我养成了“测试先行”的习惯——现在写代码前先想好测试用例,开发完成后通过单元测试验证,不仅减少了线上bug,也让自己对代码的正确性更有信心。再读阶段让我明白,代码的价值不仅在于实现功能,更在于其可扩展性、可维护性和可靠性。

浙公网安备 33010602011771号