アカウント名:
パスワード:
def __init__(self,
なんだよ __init__ とか self とかって思う
Java系のクラス名をもってコンストラクタとする風習よりはいいだろう。Java系のthisを省略できる風習よりもいいだろう。 どうでもいいことを言うとselfは別にselfでなくてもいいのでdef __init__(this,でもいいClassでもいいしFuncでもStaticでもいい
クラス名をコンストラクタとするのはJava系というか、一般にはC++のやりかたで、おそらくC++の設計で参考にしていたSimulaあたりが元祖冗長ではあるが、多重継承のときに明示できるメリットがある。Javaにはないけどね
メンバ関数にselfをいちいちつけるのは冗長で、クラスは後付なんだろうと感じる。FortranやPerlでもそんなかんじでクラスが実装されている。
どちらだろうとできることに違いはないということは優劣があるわけでもない。それでも気持ち悪く感じた最初の印象が残っているひとがいてもおかしくない。優劣の話をしているのではなく印象だけなんだから「~よりもいいだろう」とかの言い草は議論の余地なしという感じで気持ち悪い。
Python系のひとはやりかたはひとつにしろ、とか押し付けがましい印象がある(偏見)
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
あつくて寝られない時はhackしろ! 386BSD(98)はそうやってつくられましたよ? -- あるハッカー
Pythonっていまだに気持ち悪い (スコア:0)
def __init__(self,
なんだよ __init__ とか self とかって思う
Re: (スコア:0)
Java系のクラス名をもってコンストラクタとする風習よりはいいだろう。Java系のthisを省略できる風習よりもいいだろう。 どうでもいいことを言うとselfは別にselfでなくてもいいのでdef __init__(this,でもいいClassでもいいしFuncでもStaticでもいい
Re: Pythonっていまだに気持ち悪い (スコア:0)
クラス名をコンストラクタとするのはJava系というか、一般にはC++のやりかたで、
おそらくC++の設計で参考にしていたSimulaあたりが元祖
冗長ではあるが、多重継承のときに明示できるメリットがある。Javaにはないけどね
メンバ関数にselfをいちいちつけるのは冗長で、クラスは後付なんだろうと感じる。
FortranやPerlでもそんなかんじでクラスが実装されている。
どちらだろうとできることに違いはないということは優劣があるわけでもない。
それでも気持ち悪く感じた最初の印象が残っているひとがいてもおかしくない。
優劣の話をしているのではなく印象だけなんだから「~よりもいいだろう」とか
の言い草は議論の余地なしという感じで気持ち悪い。
Python系のひとはやりかたはひとつにしろ、とか押し付けがましい印象がある(偏見)