こんばんわ、今までVBAでプログラムを勉強していましたが、
そろそろ本格的な言語を学ぼうかな、なんて思っています。
そこで質問ですが、将来的には、システム的なこと、Webアプリケーション、Windowsアプリケーションなどを開発したいと思っています。
どのような言語が最適だと思いますか?自分的にはDelphi,C++,C#,Javaの
4言語で結構迷っています。
あと、最近雑誌などを見ると、JavaとC#を比較した記事を頻繁に見ます。
結局どちらがいいのでしょう。(たとえば開発のしやすさや言語の覚えやすさなど。)
次は何を覚えたらいいでしょうか?お願いします。
No.5ベストアンサー
- 回答日時:
答えにならないかもしれませんが・・・
「言語を学ぶ」というのが私にはしっくりしません。というのは、言語というのはあくまで何らかのシステムを組む上で、コンピュータに処理の順序なりを記述するものです。ですから、JAVA、C++、VB、Delphi(Pascal?)というのは、それを単に実現するための手段であって、システムの本質ではないからです。現に、実現したいシステムによって言語を選択するのは自然であるし、エキスパートと呼ばれるような人は、「一番得意」という言語はあっても、「この言語しかだめです」ということは言わないと聞きます。
ある雑誌に載っていた記事では、「新しい言語自身はたいしたことはない。本質を知っていれば、新しい言語が出たときも、単にコマンドなどの単語が違うだけで、同じである」と書いてある記事を読みました。
これには、私も共感します。
たとえば、私は、一般にはあまり使わなくなった機械語でプログラムを作るところからはじめていますが、日常、主に使う言語はVBですが、情報処理の試験ではFortranを選択したり、オブジェクト指向を勉強する材料としてはJAVAを使い、Windowsの部品を作るにはVCを使います。
「次は何をしたら」
本気でやるつもりなら、コンピュータ内部アーキテクチャー(機械語なども出てくるかも)、アルゴリズム、ハードウェア(ソフト開発者とハード開発者の間を狙う)などが考えられると思います。ただ、おそらく道は遠いとは思います。(実際、SON○などは、ハードとソフトの両方に精通した技術者を募集しているといううわさも聞いています。)
No.4
- 回答日時:
> 学ぶのに最適な言語、参考書などがあったら教えてください。
残念ながら『最適』な言語はありません。
Javaが有力ですが、「JDKのバージョンによる混乱」や「増えすぎたJava応用技術」のために『参考書ごとに書いてあることが違う』という最悪の状況になっています。
と言っても、その他の言語にきらべればまだマシです。
・C++はオブジェクト指向の実装方法がいいかげんすぎる
(VC++/MFCは輪をかけてひどい)
・C#は新しすぎて参考書の評価ができない
(わかりやすい本はあるが、「わかりやすい=正しい」とは言えない為)
・Delphiは良い環境だが"主流”を前提とすると?がつく
消去法で考えたらJavaしか残りません。
(C#,J#は半年後くらいに最適になる可能性が残っています)
「憂鬱なプログラマのためのオブジェクト指向開発講座」はC++を使っていますがオブジェクト指向を学ぶには良い本です。
「オブジェクト指向における再利用のためのデザインパターン」は最近主流になっているデザインパターンを使った設計の本です。
現在のプログラミングの主流は
・オブジェクト指向
・UMLによる表現
・デザインパターン
です。
No.3
- 回答日時:
>次は何を覚えたらいいでしょうか?
これは人それぞれだと思います。
それを踏まえて、私の意見(あくまで主観です)を。
私としてはJavaがいいかな、という感じです。
私はWeb開発系をやっているのですが、周りではJavaが主流となってきています。逆にDelphi、C++、C#は全く耳にしません。(他に聞くとしたらASP、Perl(CGI)、PHPかな、、、)
といっても私の社がWeb&Linux関連の開発がメインという環境なので、Javaが目立ってきているように見えるだけかもしれません。
以上、あまり参考にはなりませんが、、、(^-^;
No.2
- 回答日時:
>本格的な言語を学ぼうかな
VBAからのステップアップなら、C言語を(WindowsならSDKで)きっちり勉強することをお勧めします。
>開発のしやすさや言語の覚えやすさ
という路線なら、Delphiでしょう。
ほとんどWYSWYGで開発できます。
>主流
という面では、C&C++です。
(話題になるというのと、実践の現場で使用されるというのは、食い違っています)
Javaは、上記の言語のついでにかじる程度で十分と思います。C#は、実務者の評判悪いです。
あくまで、私見です。
No.1
- 回答日時:
プログラム言語の将来なんて誰にもわかりません。
現在、発売されているメーカー製コンピュータのほとんどは「WindowsOSが動作する環境」です(ユーザがWindowsをインストールするとは限りませんが…)。
結果、『Windowsで動作可能な言語』が主流であることは間違いないでしょう。
最近、MicrosoftからJ#のβ版リリースのアナウンスがありました。
これからも新しい言語は出てくるでしょう。
wakadonさんが候補に上げておられる4言語は全てオブジェクト指向に基づく言語です。
「言語は表記方法に過ぎない」と割り切ってオブジェクト指向や設計について学んでみてはいかがでしょうか。
C#とJavaの違いなんて日本語と英語の違いに比べれば微々たる物です。
本質的な部分が理解されていれば複数言語を使いこなすことは難しいものではありません。
この回答への補足
>「言語は表記方法に過ぎない」と割り切ってオブジェクト指向や設計について学んでみてはいかがでしょうか。
を学ぶのに最適な言語、参考書などがあったら教えてください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・【お題】絵本のタイトル
- ・【大喜利】世界最古のコンビニについて知ってる事を教えてください【投稿~10/10(木)】
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語、C+、C++、C#の違い
-
UNITY Float型の接尾辞fって
-
プログラムに書かれる"%"記号の...
-
Excel VBAで文字化けする (英語...
-
COBOLでのNOT = の AND条件
-
C++における継続行
-
C言語とhtmlの違いを どな...
-
プログラムからアイコンファイ...
-
vbaとc言語の関連性について
-
Solve()とは、なんですか?
-
C for Linuxでの設定ファイル読...
-
TANDEM言語ってあるんですか?
-
C++ ってなんて読む?
-
TO_CHARで小数点以下がある場合...
-
楽しくて最高のプログラミング...
-
WEBアプリケーション開発におけ...
-
VCとVC++
-
パスカルケースの由来。
-
家計簿ソフトの作成
-
COBOLで文字タイプを数字...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語、C+、C++、C#の違い
-
COBOLでのNOT = の AND条件
-
UNITY Float型の接尾辞fって
-
プログラムに書かれる"%"記号の...
-
C言語とhtmlの違いを どな...
-
vbaとc言語の関連性について
-
C++における継続行
-
COBOLで文字タイプを数字...
-
UWSCはどのプログラミング言語?
-
VCとVC++
-
TO_CHARで小数点以下がある場合...
-
VBSでDim、Private、Publicの違い
-
C++ ってなんて読む?
-
Excel VBAで文字化けする (英語...
-
VBSとWSHは読み方が違うだけで...
-
.Net Framework APIがあればMFC...
-
今ってプログラミング言語は何...
-
VBScriptで引数を省略したい場合
-
Excelの開発言語ってなんですか?
-
HTMLとC++で、どんなホームペー...
おすすめ情報