《代码大全2》第五部分阅读笔记
一、代码改善基础
- 重构的意义:代码重构并非功能的改变,而是对代码结构、可读性、可维护性的优化。它能使杂乱无章的代码变得井然有序,去除冗余逻辑,提升模块的内聚性,降低耦合度,让后续的开发与维护更加高效。
- 代码的可读性:始终将可读性放在重要位置,即使代码能正常运行,若难以理解,也会给团队协作、问题排查带来巨大障碍。使用清晰的变量名、函数名,合理添加注释,遵循统一的代码风格,都是增强可读性的关键手段。
- 代码审查:通过团队成员间的代码审查,可以发现个体不易察觉的问题,如潜在的逻辑漏洞、不符合规范之处、可优化的算法等。这不仅有助于提升代码质量,还能促进团队成员间的技术交流与学习。
二、面向对象设计要点
- 类与对象:类是对象的蓝图,设计类时需精准定义其职责与属性。一个类应聚焦于解决一类特定问题,避免承担过多无关功能,遵循单一职责原则,以提高类的内聚性。对象则是类的实例化,在创建和使用对象时,要充分考虑其生命周期,合理初始化与销毁,防止资源泄漏。
- 继承与多态:继承是代码复用的有力工具,但要谨慎使用,避免过度继承导致类层次结构复杂混乱,出现菱形继承等问题。多态则通过虚函数等机制,允许不同子类对象对同一消息做出不同响应,增强了代码的灵活性与扩展性,能更好地应对需求变化。
- 封装:将数据与操作数据的方法封装在类内部,对外只提供必要的接口,隐藏内部实现细节。这既能保护数据的完整性,防止外部误操作,又便于对类的内部逻辑进行修改,只要接口不变,外部代码无需调整,提高了代码的稳定性。
三、设计模式运用
- 常见模式:书中介绍了诸多实用的设计模式,如创建型模式中的单例模式,用于确保某个类只有一个实例,全局共享,适用于数据库连接池、日志管理器等场景;结构型模式中的代理模式,通过引入代理对象控制对真实对象的访问,可用于远程调用、权限控制等;行为型模式中的观察者模式,实现对象间的一对多依赖关系,当被观察对象状态改变时,自动通知观察者,常用于事件驱动系统、GUI 编程等。
- 模式选择:面对具体问题,不能盲目套用模式,需结合项目实际需求、规模、性能要求等因素综合考量。了解模式的优缺点、适用场景,才能在恰当的时候选择最合适的设计模式,助力项目开发。
四、软件架构层面
- 分层架构:常见的如三层架构(表现层、业务逻辑层、数据访问层),各层各司其职,降低了系统的复杂性,提高了可维护性。表现层专注于用户交互,业务逻辑层处理核心业务规则,数据访问层负责与数据库等数据源交互,层与层之间通过接口通信,便于替换和扩展。
- 架构权衡:在设计软件架构时,需在性能、可扩展性、开发成本、维护难度等多方面进行权衡。例如,分布式架构虽能提升系统扩展性,但会增加开发与运维成本;追求极致性能可能牺牲一定的代码可读性与可维护性。需依据项目优先级与资源状况做出明智抉择。
研读《代码大全2》第五部分后,深知从微观的代码改善到宏观的软件架构搭建,每一步都蕴含深厚学问,需要在实践中不断摸索、积累经验,才能打造出高质量的软件产品。
浙公网安备 33010602011771号