- ベストアンサー
プログラミングの勉強
業務などで必要なソフトを作成できるようになりたいので プログラミングの勉強をしようと思うのですが、 たくさんの種類があってどれがいいのかわかりません フリー環境がそろい 習得のための参考書などが充実していて 広い範囲の用途に対応できるプログラミング言語は何でしょうか? 主に Windowsで動くGUIのソフトを作成したいと思っています。 Javaの関係でも Java Beans とEclipseとかあり、わからなくなりました。 よろしくお願いします
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
C#を学べば、Javaを学習するとき概念的なものはだいたい同じですのですぐに応用できるでしょう。その逆もしかりです。 また、「業務で使えるレベルのもの」といいますが、何をもって「業務で使えるレベル」というのでしょうか。例えば、Javaの場合、銀行などのような巨大システムであっても、基本的に全てオープンソースで作られていたりします。Javaでは、デファクトスタンダードなフレームワークやライブラリはほぼすべてオープンソースですから。ただし、それらは最初からJavaに付属するものではありません。自分で調べ、必要なライブラリをインストールして利用します。 Javaに限らず、すべての言語はだいたいそういう感じだと思いますよ。最初から、何から何まで全て揃っているというような言語はないでしょう。たいていは、標準的な機能がひと通り揃っていて、それ以外は自分で調べて必要なソフトウェアをインストールする、という形のはずです。 もう少し、具体的にどんなものを作りたいのか考えてから決められてはどうですか。例えば、業務に使われるような本格的なGUIプログラムを作成することを考えた場合でも、私ならとりあえずWebアプリとして作るでしょう。それが一番簡単ですから。ブラウザからサーバーにアクセスして動くシステムですね。GUIはHTML + JavaScriptで十分なものが作れますし、必要に応じてサーバー側にJavaかRubyあたりで処理を置いておけばいいし。今どき、ネイティブで動くアプリでないといけない事情などあまりない気がします。 こんな具合に、一つプログラムを作ることを考えても、さまざまなアプローチがあります。どんな言語であれ、どんなプログラムを作るのであれ、今はたいていはなんらかの形でアプローチできる道があると思います。そういった意味では、「どの言語を選ぶか」はあまり重要ではないでしょう。メジャーな言語ならば、どんなものでもたいていのことはできるはずですから。 そんなことで悩むより、とりあえずなんでもいいからやってみるのが一番です。実際にやってみれば、それが自分に向いているかどうかも自然とわかってくるはずです。1週間かけて「どの言語がいいか」を調べるより、その1週間でなんでもいいから挑戦してみたほうがはるかに得るものは大きいですよ。
その他の回答 (2)
- lv4u
- ベストアンサー率27% (1862/6715)
個人的にお勧めは、C#です。 無償版のVisualStudioの開発環境が入手できます。 無償版は、仕事で使うには、機能が不足していますけど、プログラムの勉強という目的には、十分に使えるものです。 さらにデータベースのSQLServerも同時にインストールされたりします。 そして、GUIというか画面をつかうソフトは、お手軽に作ることが可能です。 複雑な処理も、LINQの機能を使えば、手軽にコーディングできます。 また、プログラムからデーターベースを使う場合、DB設計の勉強や、SQL言語の勉強が必要だったりしますが、最新のC#では、SQL言語を意識しなくても、Entity Frameworkを使えば、データベースを使うことが可能になっています。 ただし、自動車の運転は、車の構造を理解してなくても可能ですが、車のトラブル時には、構造を理解していないと対処できません。 同様に、Entity Frameworkなどの利用で、手軽にC#によりプログラムが作れるとしても、「自分の思い通りのソフトを作りたい!」「業務で使えるソフトを作りたい」と思えば、やはり多くのことを学ぶ必要に迫られると思います。 このサイトにも手軽にWebサイトを作れる「WordPress」へのカスタマイズの質問をよく見かけます。手軽にそれっぽいものは作れても、細かな点で自分の希望どおりにサイトをカスタマイズしようとすれば、さまざまなことを勉強する必要がありますが、それと似たようなものですね。 P.S. 「業務に使う」ではなく、「プログラムを基礎からがっちり学びたい」ということなら、C言語をお勧めします。
お礼
回答どうもありがとうございました。 詳しい方のお話を聞けて、 とても参考になりました
補足
回答どうもありがとうございます。2件回答いただいたなかで、2件ともC#のアドバイスをいただいたのでC#を選択しようと思いましたが、無償版のVisualStudioだと業務に使うほどのはできないとのことでしたが、高機能なことができるレベルぐらいにもしもなった場合、購入しないといけなくなりそうですが、最初から全部の機能(有償版のみ利用可とかではなく)が利用できて勉強できて、参考文献が多くあるものはないでしょうか?
Windowsで動くGUIアプリケーションを作りたい、なおかつなるべく広い範囲の用途に対応できる、ということでしたら、C#あたりになると思います。GUIアプリケーションも作れますし、Windows 8のストアアプリ、Windows Phone、.netのサーバープログラムなどの開発もできます。またちょっと異色なところでは、Unityによる2D/3Dゲームの開発もC#を使います。 ただ、基本的には「マイクロソフトの提供する環境」に限られているんですよね。例えばLinuxやMacで動くアプリとか、AndroidやiPhoneのアプリなんかは作れません。(まぁ、C#でアプリを作って動かす方法もあるにはあるんですが、一般的なやり方ではないし、いろいろ面倒があるので、普通は使いません) そうした点なども含めて考えると、Javaにしておけば無難かな、という気もします。一応、WindowsやMac、Linuxで動かすGUIアプrも作れますし、Androidアプリ、サーバー開発と一通り行えます。プラットフォームを選ばないので、C#より一段と広い範囲で活用できます。 Java BeansとEclipseというのがどういう意味で出しているのかわかりませんが、Java BeansというのはJavaの技術の一つですし(ひょっとして、NetBeansと間違えてる?)、Eclipseは開発ツールの名前です。Javaの開発で、Eclipseなどがよく使われている、というだけです。他の開発環境を使ってもいいですし、なんならテキストエディタだけで開発もJavaなら不可能じゃありません。まぁ、EclipseでJava開発というスタイルが一番一般的とは思います。 C#の場合、基本的にマイクロソフトが出しているVisual Studio一本と考えていいでしょう。他にもあることはありますが、Visual Studioが一番広く使われていますし情報も豊富です。
お礼
回答どうもありがとうございました。 詳しい方のお話を聞けて、 とても参考になりました
補足
回答どうもありがとうございます。調べてみましたところNetBeansの間違いでした。C#を勉強した後に、JAVAでWindows以外のソフトを作ろうとした場合、C#で勉強したことは役に立ちますか?
お礼
回答どうもありがとうございました。 少しずつなんですが 教えていただいたことを参考に進めています。 とても助かりました。
補足
回答どうもありがとうございます。 地方で近くに専門の方がいないので、 いろいろなことが聞けて本当に参考になりました。 さっそくC#はじめてみたいともいます