实验素材
文章平均质量分 60
俺不会敲代码啊啊啊
这个作者很懒,什么都没留下…
展开
-
抽象工厂模式设计实验
(2)由于同一种风格的具体界面组件通常要一起显示,因此需要为每个组件都选择一个具体工厂,用户在使用时必须逐个进行设置,如果某个具体工厂选择失误将会导致界面显示混乱,虽然可以适当增加一些约束语句,但客户端代码和配置文件都较为复杂。楚锋软件公司的开发人员针对上述要求,决定使用工厂方法模式进行系统的设计。(1)当需要增加新的皮肤时,虽然不需要修改现有代码,但是需要增加大量类,针对每一个新增具体组件都需要增加一个具体工厂,类的个数成对增加,这无疑会导致系统越来越庞大,从而增加了系统的维护成本和运行开销。原创 2024-04-23 20:57:51 · 786 阅读 · 0 评论 -
工厂方法模式设计实验
通过使用简单工厂模式,将日志记录器对象的创建和使用分离,客户端只需使用由工厂类创建的日志记录器对象即可,无须关心对象的创建过程但是,虽然简单工厂模式实现了对象的创建和使用分离,仍然。(1)需要封装日志记录器的初始化过程,这些初始化工作较为复杂,例如需要初始化其他相关的类,还有可能需要配置工作环境(例如连接数据库或创建文件),导致代码较长,如果将它们都写在构造函数中,会导致构造函数庞大,不利于代码的修改和维护。(2)系统扩展不灵活,如果增加新类型的日志记录器,必须修改静态工厂方法的业务逻辑,违反了开闭原则。原创 2024-04-22 17:30:33 · 663 阅读 · 0 评论 -
面向对象设计原则实验之“迪米特法则”
在这些窗口中某些界面控件之间存在复杂的交互关系,一个控件事件的触发将导致多个其他界面控件产生响应。在本实例中可以通过引人一个专门用于控制界面控件交互的中间类(Mediator)来降低界面控件之间的耦合度。在引人中间类之后,界面控件之间不再发生直接引用,而是将请求先转发给中间类,再由中间类来完成对其他控件的调用。当需要增加或删除新的控件时只需要修改中间类即可,无须修改新增控件或已有控件的源代码,重构后的结构如图所示。导致在该窗口中增加新的界面控件时需要修改与之交互的其他控件的源代码;也不便于增加和删除控件。原创 2024-04-09 20:51:23 · 705 阅读 · 0 评论 -
面向对象设计原则实验之“合成复用原则”
如果需要对 DBUtil 的功能进行扩展,可以通过其子类来实现,例如通过子类OracleDBUtil 来连接 Oracle 数据库。系统采用 Access 作为数据库,与数据库操作有关的类(例如 CustomerDAO 类等)都需要连接致据库,连接数据库的方法 getConnection() 封装在 DBUtil 类中,由于需要重用 DBUtil 类的 getConnection() 方法,设计人员将 CustomerDAO 作为 DBUtil 类的子类,初始设计方案结构如下图所示。原创 2024-04-07 17:27:37 · 475 阅读 · 0 评论 -
面向对象设计原则实验之“接口隔离原则”
事实上,有一种特定的相关实践,可以使派生类无需实现这些方法,该实践的做法是把这些接口合并为一个基类,并在这个基类中提供接口中方法的退化实现。在本实例中,由于在接口 CustomerDataDisplay 中定义了太多方法,即该接口承担了太多职责,一方面导致该接口的实现类很庞大,在不同的实现类中都不得不实现接口中定义的所有方法,灵活性较差,如果出现大量的空方法,将导致系统中产生大量的无用代码,影响代码质量。现在,考虑一个这样的实现,TimedDoor,如果门开着的时间过长,它就会发出警报声。原创 2024-04-06 13:10:06 · 736 阅读 · 1 评论 -
面向对象设计原则实验“依赖倒置原则”
在本实验中,由于 CustomerDAO 针对具体数据转换器类编程,因此在增加新的数据转换器或者更换数据转换器时都不得不修改 CustomerDAO 的源代码。此时 CustomerDAO 将针对抽象数据转换类编程,程而可以将具体数据转换类类名存储在配置文件中,,需要更改时无需修改源代码,只需要修改配置文件即可。可能是GUI上的一个按钮图标,也可能是一个能够用手指按下的真正按钮,甚至可能是一个家庭安全系统中的运动检测器。它可以是计算机控制台的LED,也可以是停车场的水银灯,甚至是激光打印机中的激光。原创 2024-04-05 20:00:49 · 826 阅读 · 1 评论 -
面向对象设计原则实验之“开闭原则”
在实际开发时,客户端也可以针对抽象的 AbstraciChart 编程,而将具体的图表类类名存储在配置文件(如XML 文件)中,通过 DOM和反射等技术来读取配置文件并反射生成对象,无须修改客户端代码,只要修改配置文件即可实现更换具体图表类,完全符合开闭原则。原创 2024-04-01 17:04:55 · 673 阅读 · 0 评论 -
括号匹配实验
翻到以前的实验作业,当做笔记写在这里。原创 2024-03-13 23:18:49 · 353 阅读 · 0 评论