《程序员修炼之道:从小工到专家》阅读笔记(5)

发布时间 2023-11-01 16:18:56作者: 痛苦代码源

26解耦与得墨忒耳法则

将复杂问题分解成简单的模块,以降低整体系统的复杂性。解耦意味着两个或多个模块之间减少直接的依赖关系,遵循“单一职责”原则。这提高了软件的可维护性、可扩展性和长期的稳定性。得墨忒耳法则强调模块间的交互应通过最少的公共接口,以减少变更带来的影响。

27元程序设计:

借助于元数据来描述应用程序的结构和行为。这种设计方式让程序更容易适应需求变更,因为很多细节可以通过修改元数据来完成,而不改动程序核心逻辑。它有助于提高软件的可扩展性、可维护性和可定制性。

28关于时间耦合:

将与时间相关的依赖从代码中解耦,使得程序更容易进行优化和并发。这涉及诸如异步处理、多线程和消息传递等技术,以实现程序的并行执行。UML活动图可用于识别并发瓶颈,进一步提高系统性能。

29只是视图:

通过观察者模式和Model-View-Controller (MVC)模型来管理模块间的通信和事件处理。分离关注点,保证数据层和视图层之间的松耦合。使数据更新时不对前端视图有显著影响,视图变更不影响数据结构。

30黑板模式:

通过一个共享的“黑板”数据结构来组织独立的事件,以便多个模块在不直接交互的情况下协同工作。这种模式有助于降低模块间的耦合度,提高系统的可扩展性和可维护性。