という疑問にお答えする記事です。
Progateで主要言語を全部やってみた
Progateで一通り主要言語をわざと勉強してみました。
先輩プログラマーなどに言われていて、今回の件は初心者には不要なのは知っているのですが、単に好奇心です。
また、他にも同じようなことをする人がいるのではないかなと思うので、注意喚起も目的です。
少し慣れている人はProgateだとスライド検索でざっと見て、
『あ、主要言語でやることは同じだ』
と気付くと思います。
さて、Progate内の主要言語というのは、
- Python
- Ruby
- PHP
- JavaScript
- Java
- (Swift)
- (Go)
あたりでしょうか。
Java以外は全部やってみました。
ぶっちゃけですね、
全部同じですね(笑)
細かいところが違うだけで、やることはほぼ同じです。
PHPはサーバーサイド言語ですし、JavaScriptは幅広く使われるので、特徴はあります。
しかし、Progateで扱う内容はほぼ同じです。
おそらく、主要なプログラミング言語、特にオブジェクト指向を中心とした言語は根本的にだいたい同じなんだと思います。
いや、もう一つにしてくれ~~~
と思うのですが、深くなると違うのでしょう。
PHPはセキュリティが弱いとか~、Rubyはどうとか~とか色々と言われいますが、私みたいな素人からするとほぼ同じなので、どれで勉強してもいいのかなと感じます。
個人的にはやはりPythonが好きです。
Rubyは直観的に書けるので、自分には合っている気がします。endが面倒です。
PHPも好きですが、セミコロン;が面倒ですね(笑)
極めるならPythonか、Rubyか迷いますね。
やはり日本人が作った言語だけあって、書籍の質がいいのはRubyかなとは思います。
ここでの主要言語というのは
「極めていると仕事で使える言語」
としておきます。
どの言語を学ぶとしても気を付けるべきこと
フレームワークではなく、プログラミング言語自体をしっかり理解しましょうということです。
Rubyを例にとると、
Rubyを極めましょう。
フレームワークのRuby on Railsを中心ではなく。
ということです。
私がプログラミングの先生に言われるのは
言語の深い理解がないのにフレームワークばかりを勉強してもあまり役に立たない
とよく言われるので、その点は要注意だと思います。
ある程度は知っておいて損はない言語
と言っても、1つの言語だけでは事足りないことが多いのも事実です。
プログラミングをやっている人なら誰でもある程度知っている言語は何なのか。
これらを確認しておきましょう。
やっておいても損はないというか、プログラミングをやっていると、そもそもわかっていないとどうしようもない言語がいくつかあります。
- HTML(マークアップ言語なので、厳密にはプログラミング言語ではない)
- CSS(スタイルシート言語、厳密にはプログラミング言語ではない)
- (Sass)
- JavaScript(プログラミング言語の1つ)
- SQL
- Command Line
- Git
これらはProgateの内容であれば、すぐ終わるのでやっておいて損はないと思います。
ただし、最初からHTML&CSSを深くやる必要はないのではないかなぁと思います。
さらっとでよいのかなと。
Rubyをやりたい人はRubyを。
JavaならJavaをひたすら。
PythonならPythonを深くふか~~~く勉強して、必要になったら必要な項目を勉強すればよいと思います。
つまり、
主要言語をひたすら極める。
というのが大切です。
ざっと全体をやっても仕事にはならないでしょうから。
どうせあとで必要になるので、時間のある人はProgateやドットインストールで必要なものはさらっと抑えておく。
その程度でよいのかなと思います。
私自身は『独学プログラマー』でPythonから勉強し始めたくらいなので、別にHTML&CSSがあんまりわかっていなくても全然大丈夫です。
JavaScriptはウェブサイトを作る人は逃れることはできないでしょう。
最近はJavaScriptの進化が著しくて、知っておいて損はないのではないでしょうか。
主要言語をたくさんやるのはおすすめしない
これ私のことなのですが、Python→JavaScript→Ruby→PHPという感じで勉強してみましたが、ほとんど同じなので時間の無駄です。
いや、実際には無駄ではなくて、同じようなことを繰り返すので、2つ目のJavaScriptからはProgateなら速攻で終わります(笑)
RubyもPHPも
「あー、いつものあれね」
のような感じになります。
RubyだけはRuby on Railsがあるので、そこそこ深く学べますが、それ以外の言語はほぼ同じことをやります。
なので、例えば、ProgateでPythonを終えたら、一切何も見ずに白紙復元できるレベルにして、次からは本で勉強したほうが良いです。
あとはプログラミングコンテストとかCodeコンテストとかで、問題を解きまくって腕を磨くとかですね。
そして、何よりも実務経験を積める現場に、プログラマーとして働くことが一番大切だと思います。
私が通っていたスクールの同期のメンバーは、すでにプログラマーとしてデビューしていますが、やはり周りがプロなのでぐんぐん成長しています。
なんだかんだ環境が一番大切です。
まとめ
まとめておくと
Python, Ruby, PHP, JavaScript, Javaから1つ選ぶ。
その上で、
という感じです。
色々な言語をやると差異がわかりメリットもあるのですが、実務への距離は全く短くならないので、さっさと1つの言語に絞って勉強するのがおすすめです。
ちなみに、個人的にはPythonが一番シンプルで好きです。
Rubyは直観的にわかりやすいのと、Progate内であればフレームワークのRuby on Railsまである程度演習することができるので、Progate内では他の言語よりも有利かもしれません。
PHPは、ProgateではフレームワークLaravelは扱われていませんが、レッスン数が多く、PHP自体を深く理解できると感じました。
その他のプログラミング関連記事はこちら(^^)/