手続き型コードにできなくて、OOPコードにできることは何ですか? - ページ 5

 
Mrluck07:

あなたの例では、OOのコーディングをしてコンパイルをクリックすると、機械語のコードが生成されます。しかし、この機械語は手続き的なものなのでしょうか?私はその答えを知らないのですが、どなたかご存知ですか?もし、機械語コードが手続き的であるなら、OOはより高度な言語と呼ぶことができるでしょう、それはコーディングを容易にするだけで、特別なものではありません。そこで質問ですが、元コードはプロデッショナルなのでしょうか、そうでないのでしょうか?


あなたはプログラマーではないので、あなたが知っていることについて話した方がいいでしょう。
 
Amir Yacoby:
あなたはプログラマーではないので、あなたが知っていることについて話した方がいい。
私はプログラマーではありませんが、EAをコーディングすることはできます。
 
Mrluck07:
私はプログラマーではありませんが、EAをコーディングすることはできます。
OOではありませんし、手続き型とも言えません(手続きはマシンコードより上位で、OOより下位です)。

例えば、int型の配列を定義して、それぞれに乱数を入れて合計するような簡単な2行のコードを手続き型で書いてみてください。
機械語だと1時間くらいかかるけど(私は昔アセンブリを書いたことがある)、手続き型だと10行もかからないよ。
 
Amir Yacoby:
これはOOではありませんし、手続き型とも呼べません(手続きはマシンコードより上位でOOより下位です)。

例えば、int型の配列を定義して、それぞれに乱数を入れて、それを合計するといった簡単な2行のコードを手続き型で書いてみてください。
機械語では1時間かかるが(私は過去にアセンブリを書いた)、手続き型では10行以下のコードですむ。

手続き型=リニア

機械語コードが010000100のとき、CPUはそれを線形に読むのか、読まないのか?私はその答えを知らないのですが、説明してもらえますか?しかし、もし答えが直線的であれば、それは手続き的であり、直線的であるため、両者は同じであることは知っています。

 
Mrluck07:

プロシージャル=リニア


マシンコードが010000100のとき、CPUはそれをリニアに読むのか、読まないのか?その答えがわからないのですが、説明してもらえますか?でも、もし答えが「線形的」なら、それは線形的だから手続き的だということはわかるんだ。

おそらくシーケンシャルという意味でしょう。そうです、CPUの命令はプロシージャと同様に順次実行されますし、クラス内のどのメソッドも同様に順次実行されます。

 
Ex Ovo Omnia:

おそらくシーケンシャルという意味でしょう。そうです、CPUの命令はプロシージャと同様に順次実行されますし、クラス内のどのメソッドも同様に実行されます。

このトピックの答えは、私の考えでは「何もない」です。

また、インクルードファイルを使って関数を 呼び出すような手続き的なコーディングもできます。
 
Mrluck07:

では、このトピックの答えは--私の意見では--「何もない」です。

それはモジュラー・プログラミングと呼ばれるもので、なぜそれがOOでないのか分かりませんが、私にとっては同じことなのです。

しかし、もしあなたがシーケンシャルとは手続き的なものだと考えているのなら、私はノーと言わざるを得ないでしょう。

 

本題から外れた議論は止めて欲しい。ありがとうございます。

EDIT: もし哲学的なプログラミングの議論をしたいのであれば、フォーラムの一般セクションに独自のトピックを作成してください。