パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

国産のNOWSMART 386-OSが暫定公開」記事へのコメント

  • by Anonymous Coward on 2002年07月21日 12時30分 (#129928)
    API例を見ると…
    • by G7 (3009) on 2002年07月21日 13時06分 (#129945)
      オフトピな一般論としてですが、ハンガリアンって少なくとも俺が思うに駄目駄目ですね。

      変数名に使うべき言葉としては、型の情報なんか結局はどうでもよくて、
      結城氏のデザパタ本でいうところの「役」というものを織り込むのが
      重要だなあと、日々思っています。

      この変数(や値)の、このコードにおける「役まわり」がhogehogeであったならば、
      変数名にもhogehogeという言葉を含めるべきだ、と。

      そりゃまあ、ある型でなければ、ある役に成れないことも多いのですが、
      逆にいえばそれはしばしば「役さえ(変数名として)表現しておけば、型は書くまでもなく判る」
      ことを意味しているわけで。

      となると、ハンガリアンなプレフィクス自体をコンパイラが面倒みてくれるわけでもない以上、
      型情報の表現を人間さまの気分のレベルでしか行なわないハンガリアンは、
      同じく気分で役情報(型情報を含む(!))を表現するスタイルと比べて、
      その表現力は、劣ることは有っても勝ることは無いわけで。

      あと、oopみたいに、型の概念がいろいろ多彩になると、ハンガリアンの単純な考えかたは破綻するし。
      たとえば継承や多重継承で「複数の型を同時に持つ」変数を作れるとか。
      以前、あたらしいクラスを作るたびにプレフィクスを増やしていったプロジェクトってのを見て、噴飯したことがあります。
      それに多態みたいに1つの変数が複数の型の解釈の余地を受けいれたくなったらお手あげだし。

      どう考えてもサヨウナラなんですよね。

      よだん:
      いまだに「オブジェクト(インスタンス)」と呼ぶべきものを「クラス」と間違って呼んでる人がいますが、
      ああいう人は「型」と「役」の区別ができてないことが多いように思います。
      同じ型でも役の違う複数のオブジェクトなんて、なんぼでも出てくるでしょうに…
      親コメント

人生の大半の問題はスルー力で解決する -- スルー力研究専門家

処理中...