Architecture 函数应该查找数据还是检索数据?

Architecture 函数应该查找数据还是检索数据?,architecture,structure,conventions,Architecture,Structure,Conventions,我正在构建一个从数据库获取数据的服务,并提供方法和属性来计算和显示数据 初始化时,数据存储在服务的属性上。它还拥有一个私有方法,该方法循环遍历数据,计算具有特定属性的项 调用此私有方法时,我将数据作为参数传递: myPrivateFunction(this.data) 但是,我考虑过重命名数据属性。这样做会迫使我在每次调用时也重命名每个参数。(假设我使用的IDE不能自动执行此操作) 如果函数能够自己检索数据,我可以避免这种情况。但是,启用此功能不太方便,因为数据不在私有方法的范围内 我想知道是否

我正在构建一个从数据库获取数据的服务,并提供方法和属性来计算和显示数据

初始化时,数据存储在服务的属性上。它还拥有一个私有方法,该方法循环遍历数据,计算具有特定属性的项

调用此私有方法时,我将数据作为参数传递:

myPrivateFunction(this.data)

但是,我考虑过重命名
数据
属性。这样做会迫使我在每次调用时也重命名每个参数。(假设我使用的IDE不能自动执行此操作)

如果函数能够自己检索数据,我可以避免这种情况。但是,启用此功能不太方便,因为数据不在私有方法的范围内


我想知道是否有任何规则或约定,关于函数是应该通过自身还是通过参数来检索要处理的数据?

我更喜欢将数据作为参数传递,因为它明确了函数的作用,并且允许轻松跟踪数据流。我同意,如果你添加一个新的论点,可能很难维持所有这些论点。为了使更改更容易,您可以使用对象而不是参数列表。如果在应用程序的多个层之间传递对象,此技术尤其有用。如果向对象添加新属性,则只需更改第一个和最后一个函数(在函数链中)