简单程序的面向对象性、可扩展性和模块性



我们如何有效地将面向对象性、可扩展性和模块化应用于简单程序?如果是应用程序,我可以识别实体及其之间的关系。当涉及到简单的程序时,我无法做到这一点。

请帮助我在链接中的柏林时钟程序中实现面向对象、可扩展性和模块化。

http://technologyconversations.com/2014/02/25/java-8-tutorial-through-katas-berlin-clock-easy/

提前感谢。

以下是我如何解决问题

  1. 面向对象性首先,找出问题中涉及的所有实体。然后将它们积分为类。例如,在这种情况下,时钟基于不同的灯及其相互通信来显示实际时间

因此,我将Light视为一个抽象类,并从这个抽象Light类继承不同的其他灯光(例如,RedLight、YelloLight等)并对其进行扩展。

  1. 可扩展性

始终使用接口,而不是直接访问类。通过这种方式,你可以替换或扩展你的类

  1. 模块性

将您的模型(类)、业务逻辑、UI逻辑等分离在不同的类库(或单独的项目)中。

希望这个简单的解释能有所帮助。

最新更新