アカウント名:
パスワード:
taro-nishinoの日記: Linus氏のC++に対する最近の否定的見解 http://srad.jp/~taro-nishino/journal/509450/ [srad.jp]
Linus氏のC++否定論は、C++というよりも、オブジェクト思考言語全般に当てはまります。読まずに批判・評価する人は、まず読みましょう。例えば、Linus氏はこういうことを言っています。
「良いコード設計は、いかにデータが移動するか、いかにデータを秩序立てるか、いかにデータを見つけ、他のデータと関連付けるか、について考えが次々と思い浮かぶ。だが、OO言語は、オブジェクトが重要であり、オブジェクトに関連付けられた
>"オブジェクトインターフェイス"を隠蔽これは何を言いたいのかさっぱりわからん。インターフェイスは隠蔽すべきでないし、むしろ積極的に明確にするのが普通。隠蔽すべきは、実装などの詳細部分。
言ってることが逆だよね。OOはオブジェクトそのものが重要ではなく、インターフェースやオブジェクト同士の関係が重要となっている。OO (正確にはADT)より前は、データの中身やその表現方法などが重要だった。というか、インターフェースなどの上位層とその層を明確に分離できてなかった。
リファクタリングの話のときにもあったけど、Cだと
struct A {...};struct B {...}void connectAB(A* aA, B* aB) {...}
をオブジェクト志向だと、
class A {...};class B {...}; void A::connectB(B* aB) {...}
にするのが気に入らないってことでしょ。コンパイラにとってはともかく、カプセル化することによって、わかったようなわからないような感じになる。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
吾輩はリファレンスである。名前はまだ無い -- perlの中の人
Linus氏の見解の日本語訳 (スコア:0)
taro-nishinoの日記: Linus氏のC++に対する最近の否定的見解
http://srad.jp/~taro-nishino/journal/509450/ [srad.jp]
Linus氏のC++否定論は、C++というよりも、オブジェクト思考言語全般に当てはまります。読まずに批判・評価する人は、まず読みましょう。
例えば、Linus氏はこういうことを言っています。
「良いコード設計は、いかにデータが移動するか、いかにデータを秩序立てるか、いかにデータを見つけ、他のデータと関連付けるか、について考えが次々と思い浮かぶ。
だが、OO言語は、オブジェクトが重要であり、オブジェクトに関連付けられた
Re: (スコア:0)
>"オブジェクトインターフェイス"を隠蔽
これは何を言いたいのかさっぱりわからん。
インターフェイスは隠蔽すべきでないし、むしろ積極的に明確にするのが普通。隠蔽すべきは、実装などの詳細部分。
Re: (スコア:0)
言ってることが逆だよね。
OOはオブジェクトそのものが重要ではなく、インターフェースやオブジェクト同士の関係が重要となっている。
OO (正確にはADT)より前は、データの中身やその表現方法などが重要だった。というか、インターフェースなどの上位層とその層を明確に分離できてなかった。
Re:Linus氏の見解の日本語訳 (スコア:1)
リファクタリングの話のときにもあったけど、
Cだと
をオブジェクト志向だと、
にするのが気に入らないってことでしょ。コンパイラにとってはともかく、カプセル化することによって、わかったようなわからないような感じになる。