面向对象设计:使用方法参数与属性

本文关键字:属性 参数 使用方法 面向对象设计 | 更新日期: 2023-09-27 17:57:37

在面向对象的设计中,以下哪项更好?

使用以下方法发送参数:

obj.InsertRecord("raed","1987")

或使用属性,如:

obj.name= "raed"
obj.year= "1987"
obj.InsertRecord() 

面向对象设计:使用方法参数与属性

如果发送参数,则每次obj的类签名更改时都必须更改InsertRecord()签名(例如,如果添加description属性),因为您希望保存这些新属性。

此外,对象本身不应该为保存自己而烦恼。这不是对象的责任。所以,像这样的东西是最经得起未来考验的:

ObjectStorage.InsertRecord(obj);

面向对象编程,这是首选:obj.InsertRecord("raed", "1987");

面向组件编程,后者是首选:像这样:

obj.name = "raed";
obj.year = "1987";
obj.InsertRecord();

顺便说一句,这属于程序员。stackexchange