私はこれらのオプションのワークフロー(#1と#2の比較)を探しています。 私は別のx()関数を呼び出す関数xx()を使用しています。これは汎用プログラミングワークフローです(コードはPython構文ですが、フローロジックは他の言語にも適用できます)。プログラミングワークフロー:どちらですか?引数を関数から関数に渡すか、出力を引数として他の関数に渡すか?
したがって、#1は、ある関数から別の関数に引数を渡す必要があるワークフローを示していますが、#2ではすべての引数を渡す必要はなく、2番目の関数の引数としての最初の関数の出力。
オプション#1:
def x(a):
<code>
return value
def xx(a):
x=x(a)
<code>
return value
print xx(a)
オプション#2:
def x(a):
<code>
return value
def xx(x):
<code>
return value
x=x(a)
print xx(x)
それは単純な例です。私がこれまでにオプション#1で見つけたのは、すべての引数がx()に渡されてxx()に渡されなければならないということです。
オプション#1
def x(a1,a2,….a100):
<code>
return value
def xx(b1,b2,…..b100):
x=x(b1,b2,….b100)
<code>
return value
print xx(45,'test',....,999)
オプション#2
def x(a1,a2,….a100):
<code>
return value
def xx(x):
<code>
return value
x=x(45,'test',....,999)
print xx(x)
:たくさんの引数を渡すときの例では、(これは私が複数の引数を渡すために*または**を使用していない基本的な例です) #1で
、def xx()で渡す引数を入力するためにたくさんの 'typing'をしなければなりません。#2はより洗練され、esierでデバッグします。では、これらのワークフローについて、どうやって考えるのでしょうか?ワークフロー#1にはいくつかの利点がありますか?一般的に#2は良いですか?どう思いますか? #1または#2を選ぶ理由は何か。
これに対する答えはもちろん、OOPを使用することです。 –
thanx、コードを修正しましたので、oopスタイルではありません。前の例は正しいものではないかもしれません。私はより一般的にしました。 – andio