とんちむ日記

RubyとJavaScriptと猫が好きです

初めて学ぶプログラミング言語は何がいいか?

結論から言えば何したいかによるってことになりますが、まぁ・・・もうちょっと掘り下げていきましょう。

 

新米エンジニアの僕は今でこそ一応はプログラミングができるようになりましたが、それは今の会社の研修を受けてしっかりと指導してもらったり、一緒に励む同期の仲間がいたりしたからこそできたものだと思います。

 

入社するまでプログラミングに憧れてはいたものの、何度も挫折してばかりでした。

小学生の時にBASICを勉強しようとして、挫折。まぁこれは無理がありましたね。

次に高校かな?Perl&CGIを勉強しようとして挫折。当時あったブラウザゲームをいじりたかったんですよね。

最後にObjective-CこれはiPhoneアプリを作りたかったから。まぁ少しばかり動きましたがなんで動くのかよくわからないままだったので全く身につきませんでした。

 

どれもうまくいきませんでした。最初の二つは理解力不足のせいが大きいですね。最後の一つは選んだ本が良くなかった気がしますね。ものによりますが作りながら学ぶ系の書籍はプログラミング未経験者はやめといたほうがいいと思います。

 

で、本題何ですが、まずプログラミングをやりたい人って色々いますよね? その目的次第だと思うんです。例えば将来エンジニアになりたいという人。そんな人は言語の勉強よりもまず業界のこと知るべきだと思います。一口にエンジニアと言ってもいろいろあるし、どの分野ではどんな言語が主流なのかとか、どんなものを作りたいのか。Web系なのか組み込みなのかで全然使う言語は違ってきます。まぁいろんな分野でも使える言語もあるんですが。

 

アプリを作りたいという人だったら限られてきますね、iOSアプリならswiftだったり、Objective-cだったりですね。Objective-CJavaよりも歴史が長いらしいですがswiftの方が後発なだけあって扱い易いという話をよく聞きます。

AndroidアプリならJavaですね(とはいえ今後これも動向が変わるかもしれません)、アプリはHTML5JavaScriptを使って作るという方法もあるそうです。そのほうが環境構築とか考えると手軽かもしれません。

 

個人的にはJavaやCのようなちょっと堅めの言語がいいんじゃないかと思います。まぁ最初で躓いたりする可能性も大ですが・・・。今はRubyを仕方なく触っているのですが、緩いしなんか目茶苦茶なこともできるしで、Rubyキモイと思っていますw

いきなり型宣言なしのゆるゆるの言語からだといざJavaとかに移った時にめんどくささ半端ないと思います。(慣れれば静的型そのものは便利なんですが)

 

マルチな環境で使えるということも考えるとやっぱしJavaがいいんじゃないでしょうか。Web界隈でもまだまだ人気の言語だし。今後もしばらくは廃れなさそうです。ただし、どの言語もやりたいことを形にできるようになるまで時間がかかります。これが何の役に立つの? って気持ちは始めはずーっとついてくるでしょうがいずれ全部が繋がっていくはずです。頑張っていきましょう。