是否有关于如何将对象传递给函数的指南或建议?是否建议始终将完整对象传递给函数:
calculateSomething(car1, car2, aircraft)
或者仅传递函数真正需要的属性更好吗?
calculateSomething(car1.speed, car1.length, car2.speed, aircraft.height)
第一种方法似乎更方便,特别是当函数需要更多属性时。但是,我的直觉告诉我,第二种方法的计算效率更高,因为函数不必处理完整的对象。
是否有针对此的一般编程建议,还是针对每个功能在可读性和速度之间进行权衡?
答案 0 :(得分:1)
永远不要直接传递属性。因为这会破坏面向对象编程的原则,(Encapsulation)特别是如果它涉及对属性进行更改。
始终使用getter和setter来更改对象属性。