プログラミングを勉強しようとしたときに、最初に浮かぶのは「どの言語を勉強したらよいか?」という疑問ではないでしょうか?
プログラミング言語は世の中にかなり多く存在します。
プログラミング言語によって、作れるプログラムの種類が変わります。
どんな仕事ができるかも変わります。
どの言語で仕事をするかで、将来のキャリアや年収にも大きく響いてくるわけです。
そこで、今回は現役プログラマーである私の目線で、初心者にも自信を持っておすすめできる言語を3つ紹介します!
おすすめの言語は、あくまで「今」おすすめの言語
技術の進歩やトレンドは、あっという間に変わっていきます。
ネットでおすすめの言語を探してみてもいいのですが、ネットの情報は最新の情報とは限りません。
なるべく最新トレンドを知る人に直接話を聞いて判断するのがおすすめです。
周りに話を聞ける人がいない場合は、プログラミングスクールの無料カウンセリングで情報収集してみるのもよいかと思います。
やりたいことは何か?
プログラミングでできることは、かなり多岐にわたります。
今回紹介するWeb系プログラミング言語では、下記のようなものを作ることができます。
・食べログや価格.comなどの口コミ投稿サイト
・Amazonや楽天などの通販サイト
・はてなブログ、FC2ブログなどのブログサイト
こういったものを開発したいのであれば、今回紹介するWeb系プログラミング言語が最適です。
もしWebサイトやWebアプリケーションより、スマホアプリが作りたいなぁ・・・と思うのでしたら、「Swift」「Kotlin」というプログラミング言語がおすすめなので、調べてみてください。
Web系言語のおすすめ3選
今回おすすめする言語は、下記の基準で選定しています。
・企業での採用率が高く、就職先/転職先が豊富
例えば、「Java」というプログラミング言語は日本で最も求人数が多く、技術的にも優れている言語なのですが、初心者にとっては難しく挫折しやすい言語なので今回は外しています。
言語 | こんな人におすすめ |
---|---|
Python | ・機械学習やAIを将来的にやりたい ・技術力で身を立てていきたい |
PHP | ・Web制作やデザインなどに興味がある ・食いっぱぐれる心配をしたくない |
Ruby | ・自社サービス開発に興味がある ・企画やディベートが好き |
細かいことはこのあと書いていきます。
Python
今からプログラミング学習を始めるのであれば、個人的には「Python」を一番おすすめします。
Pythonの特徴1:将来性が抜群
Pythonは、機械学習やAIの領域に強い言語です。
機械学習やAIプログラミングはここ数年でかなり注目されており、これらに有用なPythonを採用する企業が増えています。
ただ、「機械学習やAIなんて敷居が高そう・・・」と考えてしまうかもしれませんが、Python自体はWebアプリケーションを作るためのツール。
普通のWebサイトを開発する言語としてもPythonは使えますので、機械学習やAIをいきなりやる必要はありません。
まずは普通のWebアプリケーションやWebサービスを開発できるようになり、その後もっと高度な仕事がしたくなったら機械学習やAIなどにシフトしていけるのがいいところです。
技術力で身を立てていくスタイルを目指すのであれば、Pythonはおすすめですよ。
Pythonの特徴2:きれいなコードを書く癖ができる
Pythonは、書き方のルールがしっかりしています。
これは「誰が書いても同じようなコードになりやすいため、誰が読んでも意味を理解しやすい」というメリットを生みます。
プログラマーとして、読みやすいコードを書くことは重要なことです。
読みにくいコードを書くと、書いた本人ですら修正に苦労する・・・というのは実はよくある話です。
実際、私も業務でPythonのコードを書いていますが、同僚が書いたコードも簡単に読めてしまうので、他の言語に比べて圧倒的にコードを読んだり書いたりするのが楽になりました。
Pythonは「2」ではなく「3」を学ぼう
Pythonは大きく「python 2」と「Python 3」の二種類があります。
2系と3系では書き方が結構違います。
2系は旧バージョンで今後は徐々に使われなくなっていきますので、せっかく勉強するなら「Python 3」を学習することをおすすめします。
PHP
個人的には、PHPもありかなと思います。
PHPの特徴1:圧倒的な求人数
PHPは、国内に2番目に求人数の多い言語です。
参考:https://www.itmedia.co.jp/business/articles/1906/12/news123.html
ただ、最初に書いた通り、Javaは挫折する可能性が高いため、「初めて勉強する言語」としてはおすすめしません。
求人数が多いということは、PHPエンジニアを欲している企業が多いということであり、「エンジニアとして食いっぱぐれる心配は少ない」ということです。
私自身もPHPの実務経験がありますが、前回の転職でも「PHPができる」というだけでかなり多くの企業からお声がけを頂きました。
その需要の高さから、経験が浅い人でもPHPエンジニアであれば就職/転職は成功しやすいため、「とりあえずプログラマーとしてのキャリアをいち早く築きたい」のであればPHPはいい選択かなと思います。
最近はPythonやRubyを採用する企業が増えたことによって、PHPの求人も相対的に減ってはいるものの、まだまだ圧倒的な求人数で、仕事がなくなることはそうないでしょう。
PHPの特徴2:キャリアの幅が広い
PHPはコーポレートサイトやWebメディアなど、「Web制作」と呼ばれる分野で補助的に使用されることが多い言語です。
Web制作だとPHPはそこまで高度な技術力を要求されないため、経験が浅くても戦力として採用してもらいやすいというメリットがあります。
そのままWeb制作でデザインを再現するための言語(HTML/CSS/Javascript)まで手を伸ばし、フロントエンドエンジニアへキャリアを広げることも可能です。
一方で、決済やポイントプログラムなど、セキュリティや高度なロジックを求められる領域でも使用されています。
「ニコニコ動画」も、PHPで開発されてきたWebサービスでした。(現在はPHPからScalaという言語への置き換えが進んでいます)
そういった領域での経験を積むことで、バックエンドエンジニアとしてのキャリアを築いていくことも可能です。
PHPフレームワークは多種多様だがLaravelがおすすめ
プログラミング言語には、その言語本体とは別に、その言語を使うために便利な機能群を集めた「フレームワーク」と呼ばれるものがあります。
Pythonのフレームワークは「Django」、Rubyのフレームワークは「Ruby on Rails」が主流で、それを使うことがほとんどです。
ただ、PHPは下記のように様々なフレームワークがあり、どれもそれなりに使用されています。
・CakePHP
・FuelPHP
・codeigniter
これからPHPを学ぶ人は、一緒に勉強するフレームワークとして「Laravel」を選択することをおすすめします。
理由は下記の記事で書きましたので、お時間があるときに読んでみてください。
https://tetrablog.net/programming-beginners-should-study-laravel
Ruby
Webサービスの開発に携わりたいなら、Ruby on Railsは選択肢のひとつになります。
Rubyの特徴1:自社サービス企業での採用率が高い
日本国内、国外問わず多くのWebサービスがRubyで開発されています。
国外の事例だと、「GitHub」「FaceBook」「Twitter」「Airbnb」といったWebサービスも、かつてRuby on Railsで開発されていました。(ただ、これらのサービスは現在は別のプログラミング言語への置き換えが進んでいます)
国内では、「価格.com」や「食べログ」、「クラウドワークス」を始めとしたといったWebサービスがRuby on Railsで開発されています。
このようなWebサービスは、PythonやPHPでも開発できます。
ただ、実態としてwebサービスに積極的な企業ではRubyを採用していることが圧倒的に多いため、「Webサービス開発や企画をしたい」という思いがあるのであれば、Rubyを選択することをおすすめします。
Rubyの特徴2:フレームワーク「Ruby on Rails」が世界的に人気
Rubyには、Webサービスを作る上で有用な機能を提供する「Ruby on Rails」と呼ばれるフレームワークがあります。
厳密に言うと、自社サービス企業でRubyが採用されているのは、ほぼ100%この「Ruby on Rails」が使いやすいからです。
そのため、勉強にあたってはRuby単体ではなく「Ruby on Rails」を含めて勉強することが必須です。
Rubyの特徴3:数少ない国産のプログラミング言語で、国内コミュニティが活発
Rubyは、日本人エンジニア「まつもとゆきひろ」さんが開発したプログラミング言語です。
Rubyの日本語ドキュメントや、Rubyの記事を扱う日本語ブログが多く、初学者にとっては比較的勉強しやすいプログラミング言語です。
また、Rubyに関する勉強会も国内あちこちで開催されており、技術的な学びの機会やエンジニア同士の交流の機会を得やすい言語だと思います。
まとめ
ということで、現役プログラマーの私がおすすめするプログラミング言語は「Python」「PHP」「Ruby」でした。
ただ最初のほうでも書きましたが、技術の進歩やトレンドは、あっという間に変わっていきます。
なるべく最新トレンドを知る人に直接話を聞いて判断するのがおすすめです。
周りに話を聞ける人がいない場合は、プログラミングスクールの無料カウンセリングで情報収集してみるのもよいかと思います。
それでは!
コメント