C言語で「構造化プログラミング」を独学しました。目標は科学技術計算(シミュレーションを含む)です。現在、「オブジェクト指向プログラミング」に興味があるのですが、C言語をかじった者は、「オブジェクト指向プログラミング」としまして、C++へ移行するのが自然なのでしょうか。それとも、C++にこだわらず、JAVA言語などのトレンドに移行すべきなのでしょうか。C言語を独学した者が学ぶべき「オブジェクト指向プログラミング」言語は何でしょうか。お教えください。また、「オブジェクト指向プログラミング」に適した書籍もお教え頂けると助かります。よろしくお願いします。
No.1ベストアンサー
- 回答日時:
オブジェクト指向自体は根本的には「一連の処理と必要な値を使いやすくまとめておく」ことなので、これからどうするかについては好きにして下さいとしか…。
当然、オブジェクト化すること自体が抽象化なので実行速度は遅くはなっています。
楽をしてアプリケーションのような物を作りたければJAVA(遅い)などのほうがいいし、
徹底的に「速い数学や計算」をやりたければ逆にFORTRANとかのほうがいいと思われます。
アプリケーションを作るには多少の苦労はあっても、いつでもどこでも誰にでも幅広く便利な物を使いたければC++です。
ちなみにオブジェクト指向ってのは曖昧な抽象概念なので、
オブジェクト指向だと思える程度の実装があり、
使用者もひねくれずにオブジェクト指向と思って扱ってる限りは、それは全部オブジェクト指向です。
どう思えばいいのかと言うと、
コンストラクタを呼んで、メソッドを使って、デストラクトする方針であれば全部オブジェクト指向です。
それだけです。具体的な仕組みは一切問われません。
そのようにしかできないように設計されてる言語などは、強制的なオブジェクト指向です。
別にそんな仕組みは、普通のCでも作れます。(ある程度動的管理の処理が必要ですが)。
オブジェクト指向と言うのは、プログラムのデザインとして人間にとって必要だから「しょうがないので」導入する物の一つであって、
その辺は好きにしてください、というのが結論です。
オブジェクトかどうかで言語を選ぶ意味はほぼないと思われます。
TANUKIAさん、ありがとうございました。構造化プログラミングの先に、オブジェクト指向プログラミングがある訳ではなく、目的を持ってオブジェクト指向に移行するにも、熟慮が必要だとわかりました。本当にありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java オブジェクト指向プログラミングの実践本を紹介してください 3 2022/09/19 04:56
- その他(自然科学) 科学技術計算の仕事について 2 2023/02/04 18:09
- C言語・C++・C# 画像の画素値を変えるC言語のプログラムで指定された画像の中に白い三角形を右上に表示させるにはどのよう 3 2022/10/30 01:16
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/05/21 02:41
- C言語・C++・C# C言語の質問です、プログラミング初心者です このような文字列があった場合 "abcdef☆ghijk 4 2022/11/22 10:56
- C言語・C++・C# gettimeofday() と localtime_r() を使って現在の日時をマイクロ秒単位で表 2 2022/10/26 21:15
- C言語・C++・C# プログラミング言語「C#」の難易度ってどれくらいですか? 4 2022/05/12 19:15
- その他(プログラミング・Web制作) プログラミング 処理速度 1 2022/11/25 11:05
- その他(プログラミング・Web制作) 次に、楽天のアジャイル就活に参加して、1日で内定を獲得できる。私は大企業に就職できる? 2 2022/04/17 13:38
- C言語・C++・C# プログラミングのC言語についてですが 全く分かりません。 どなたか教えてくれないでしょうか、、? 3 2022/07/15 04:29
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
楽しくて最高のプログラミング...
-
C言語、C+、C++、C#の違い
-
VBSでDim、Private、Publicの違い
-
COBOLでのNOT = の AND条件
-
プログラムに書かれる"%"記号の...
-
C++ ってなんて読む?
-
Int('1234') で、strをかんたん...
-
COBOLで文字タイプを数字...
-
プログラムからアイコンファイ...
-
プログラミング言語の制作方法...
-
HTTPで .do という拡張子を見つ...
-
UNITY Float型の接尾辞fって
-
C++における継続行
-
Pythonって何を意識した言語な...
-
パスカルケースの由来。
-
C言語とhtmlの違いを どな...
-
最新のプログラム言語を学ぶに...
-
階乗の記号 ^
-
rpa化する言語としてら何があり...
-
質問失礼します。 プログラム言...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語、C+、C++、C#の違い
-
質問失礼します。 プログラム言...
-
最新のプログラム言語を学ぶに...
-
COBOLでのNOT = の AND条件
-
C言語って古いですか?
-
rpa化する言語としてら何があり...
-
UNITY Float型の接尾辞fって
-
TO_CHARで小数点以下がある場合...
-
プログラミング言語の制作方法...
-
COBOLで文字タイプを数字...
-
プログラムに書かれる"%"記号の...
-
C言語とhtmlの違いを どな...
-
Int('1234') で、strをかんたん...
-
C++ ってなんて読む?
-
Excel VBAで文字化けする (英語...
-
C言語 解答について。
-
VBSでDim、Private、Publicの違い
-
Excelの開発言語ってなんですか?
-
C# でソフト開発をした事のある...
-
C#とC++のざっくりとした違いを...
おすすめ情報