假设我有一个名为“Program”的类,其中包含我将只创建一个实例的整个程序。
现在这个类包含很多(代码的一半),例如购物功能(方法等)。
使用如上所述的一半代码创建名为“ProgramWithoutShopping”的类是可以的,然后将我的购物相关代码放在名为“Program”的类中,扩展“ProgramWithoutShopping”,而不使用任何其他的ProgrammWithoutShopping目的
我的目标是通过分离的功能和较小的文件来获得更好的概述。
有人是一个实际使用这种策略的大项目的例子吗?
PS:如果您要写“不要使用类”,您可以假设我的程序在一个需要它成为类的框架中运行。
答案 0 :(得分:1)
您使用的是哪种语言? C#有一个部分关键字,对于这种情况也适用,不需要两个类。
要回答你的问题,让基类不直接做任何事情,但总体上是有用的是相当标准的。通常,这用于避免代码重复,但这不是严格的要求。
我会假设,2个课程足够吗?如果绝大多数代码库都在一个类中,那么即使有两个类,也会产生维护问题。
也许你可以将你的课程分成更精细的课程。例如,典型的OOP类集可能如下所示:
Customer
ShoppingCart
Item
Special
Payment
Order
这些只是数据对象,根据您的实现,您可能还可以封装一些算法,比如如何计算价格(尽管在这种情况下可以存在于Item中......)