メソッド内の参照変数を返さずに変更すると、悪い習慣とみなされますか?例えばC#で何も返さずに参照変数を変更するのは悪い習慣と考えられますか?
:
public Widget GetWidget()
{
Widget widget = FetchWidget();
ApplyPartNamePrefixes(widget);
return widget;
}
public void ApplyPartNamePrefixes(Widget widget)
{
widget.PartName1 = String.Format("{0}{1}", "*", widget.PartName1);
widget.PartName2 = String.Format("{0}{1}", "**", widget.PartName2);
}
このように、このメソッドは、Widgetクラスのインスタンスメソッドである必要があり、パラメータウィジェットを取る代わりに、現在のインスタンス(this)を操作するように感じます。 – Josh
しかし、書かれていても、あなたのメソッド名ではあなたが何かを変えていることはかなりわかります。だからここでは安全だと思います。 – CubanX