在宅「ママ×プログラミング」でライフステージに合わせた働き方を実現こんにちは。エンジニア兼ライターとして数多くのシステム開発を経験してきた山下といいます。プログラミング学習をはじめるにあたり、始めにぶつかる壁はどのプログラミング言語を学ぶのかということですよね。なかには、プログラミング言語でなにができるの?どうやってプログラミング言語を選べばいいの?そもそもプログラミング言語ってなに?と思っている方も多いのではないでしょうか。プログラミング言語はとても種類が多く、それぞれ特徴や将来性・学びやすさなども異なるため、これから学習をはじめる方にとっては、選ぶのが大変だと思います。プログラミング言語選定は今後のエンジニア人生に関わる大切な選択です。この選択を間違えると、あなたの目指すエンジニア像とは違ったキャリア形成になってしまうことも考えられます。この記事では、そういった選択ミスがないように、プログラミング言語ごとの特徴を解説したうえで、おすすめのプログラミング言語を10種類ご紹介いたします。あわせて、目的別にプログラミング言語を選定できるフローチャートや職種別におすすめプログラミング言語を解説しているので、活用していただければ幸いです。まとめまずはプログラミング言語について知ろうそもそもプログラミング言語ってなに?これからプログラミングを学ぼうと考えている方の中にはこのような方もいるのではないでしょうか。簡潔に言えば、プログラミング言語とはコンピュータに指示を出すための言葉です。このプログラミング言語を用いてコンピュータに様々な命令を出すことを「プログラミング」といいます。いった基本的なことから知りたい方はこちらの記事も合わせて御覧ください。2020年1月15日プログラミング言語の数プログラミング言語には実際の言葉と同じように様々な種類があります。用途によって必要な言語が異なり、主要言語だけでも200種類を超えます。プログラミング言語によって以下の項目に違いがあります。そのため、あなたに合った言語選定が必要です。将来性プログラミング言語の種類プログラミング言語は「フロントエンド言語」と「サーバーサイド言語」の2種類に大きく別けることができます。プログラミング言語の種類またプログラミング言語とは別に「マークアップ言語」「スタイルシート言語」があります。これらの言語も組み合わせてWebサイトやアプリは作られています。合わせて学ぶフレームワークプログラミング言語にはそれぞれ「フレームワーク」と呼ばれるものがあります。プログラミング学習は基本的にこのフレームワークを用いて進めるのが一般的です。フレームワークとは「汎用的な機能群」を指していて、このフレームワークを用いることで、システム開発を効率的に進めることができます。いえ、なかなかイメージがつかないですよね。家に例えてみましょう。家がアプリだとします。その骨組みがフレームワークです。通常、システムの基盤となる骨組みからプログラミングして作成しなければいけません。フレームワークならば、骨組みに機能を追加するだけでアプリやシステムが開発できるようになります。目的が決まってるけど必要な言語がわからない人は?やりたいことは決まってるけど、どの言語を選べばいいのかわからない...なかにはこのように目的が決まってるけど、どんな学習をしていけばいいかわからない方もいらっしゃいますよね。そんな時は、「プログラミング学習プラン診断アプリ」をご活用ください。最短1分で簡易的な学習プランとあなたに必要なプログラミング言語を診断いたします。プログラミング学習プランを診断する失敗しないプログラミング言語の選び方プログラミング言語はそれぞれ、需要や将来性・学びやすさなどが異なります。そのため、「こんなはずじゃなかった...。」と失敗しないためには目的を持って言語選定をしなければなりません。これから学習を始める方だと、言語ごとに何が違うのかはわからないですよね。そこで、失敗しないための言語選定を行う前提知識として、できることの違い年収の違い求人数の違い習得難易度の違い将来性の違いについてご紹介いたします。できることの違いを知るプログラミング言語はそれぞれできること・できないことがあり、1つのプログラミング言語を習得すれば、何でもできるという訳ではありません。Rubyであれば、WEBアプリやWEBサービスを簡単に作成することができますが、Swiftという言語だとWEBアプリの作成は簡単ではありません。SwiftはiOSアプリ開発に関しては他の言語を圧倒するシェア率を誇ります。このようにプログラミング言語はできることが異なり、それぞれに得手不得手があります。年収の違いを知るプログラミング言語は、言語ごとに年収にも差があります。https://www.bizreach.co.jp/pressroom/pressrelease/2018/0807.html2018年に「ビズリーチ」の行った「プログラミング言語別年収調査」によると、1位の「Go言語」と10位の「C言語」の間には最大値で600万円の差があります。プログラミング言語の種類は200種類以上あるので、言語による年収差はかなり大きいと言えます。求人数の違いを知るプログラミング言語によって求人数も違います。ランキング」によると、Javaが31.10%・PHPが14.96%と約45%のシェア率があることがわかります。このように、プログラミング言語によって求人数が大きく異なります。日本では、大規模なシステム開発に用いられるJavaのニーズが高い傾向にあります。習得難易度の違いを知るプログラミング言語は、環境構築が必要なもの・オブジェクト指向に対する理解が必要なものなど、学ぶ前に前提知識が必要な言語もあります。言語によって記述量が異なったり、構文が複雑であったりと初心者が始めて学ぶ言語としては適していないプログラミング言語もあります。将来性の違いを知るプログラミング言語は日々トレンドが変化します。そのため、いま使われている言語でも将来的に使用されるとは限りません。https://www.benfrederickson.com/ranking-programming-languages-by-github-users/開発プラットフォームとして人気の「Github」のユーザーを対象とした言語ごとの利用率の推移は年々変化しており、近年では「Go言語」や「Typescript」の需要が急激に伸びております。https://www.benfrederickson.com/ranking-programming-languages-by-github-users/しかし、いままで主要言語として利用されていた「Ruby」や「PHP」は年々利用者の数が減少しています。このように、言語によって将来性は異なり、どんな言語を学べばいいのか将来性なども加味して選ぶ必要があります。伸びていくかどうか?消えてしまう可能性はないか?IT業界のトレンドにマッチしているか?などがこの「将来性」に該当します。苦労して言語を習得したとしても、近い未来にその言語があまり使われなくなったり、廃れてしまったら、学習した労力や時間が勿体ないですよね。上記のような事を考えると将来性という観点が重要になってきます。現在ではAI(人工知能)やVR(仮想現実)のような分野が注目を浴びていて、今後もその需要は拡大していくと考えられています。具体的な言語でいうと、主にAIはPythonという言語、VRはC#という言語などが該当しますね。年収プログラミングを習得して仕事にしていきたいなら、平均年収も大事なポイントですよね。ビズリーチなどの求人検索サイトが年収について毎年発表していますので、そちらのデータを参考にしました。求人数や募集してる案件の数などがこの項目に該当します。転職や就職はもちろん、フリーランスとして仕事を獲得していたいと考えている方は重視すべき項目です。こちらの項目もビズリーチやWantedly、リクナビNEXTなど、プログラマーの求人や案件が多いサイトを参考に算出しました。(2019年5月22日現在)学びやすさ習得するまでの期間が短いか?初心者向けのサイトや教材が多くあり、学びやすい環境か?プログラムの書き方が直感的か?などが「初心者でも学びやすい言語かであるか?」という項目になります。プログラミングを学ぶ方や、なるべく短い期間で習得したいと思っている方、独学で習得したいと思っている方などは参考にすべき項目と言えるでしょう。https://www.ruby-lang.org/Rubyは教育機関で使われることもあり、とにかく読みやすく書きやすい言語です。慣れるとコードをとても短く、早く書くことができます。WebサイトやWebサービスを作る際におすすめできる言語です。学習する際には、HTMLやCSS、JavaScriptなども一緒に覚えることになるので、その点でも初心者の最初の学習にもっとも適していると言えます。Rubyのメリットサーバーの知識がつくので、汎用的な知識をつけやすい非常に多くのWEBサービスやアプリ、ゲームに使われている最近では業務系の分野でも案件が増えてきているRubyはWEBサービスは勿論、スマホアプリやゲーム、業務系アプリ等も得意としていて汎用性が高いです。仕事面では、日本でも採用事例が増えてきて、経験が少なくても歓迎されやすい言語です。インターンや副業にもおすすめです。Rubyのデメリット処理速度が少し遅い大規模開発には向いていないRubyは「学ぶ!作る!」という点において物凄く優秀なのですが、言語仕様として処理速度が遅いのが弱点となります。大規模なシステムを作成したり、複雑なデータベースの使用すると遅くなりがちです。最近は改善されつつあり、クラウド技術の発展により軽減されてきています。)上記でわかる通り、Rubyの平均年収は550万円と高い水準を誇っています。このランクのなかでは一位の求人数です。いまプログラミングスクールで一番教えられている言語であり、海外でも需要が高まってきている言語の一つでもあります。その理由としては先ほど解説した学習のしやすさと案件の豊富さ、年収水準が高い点がポイントになっています。できる事・作れる物RubyでできることWebアプリケーションSNSブログオンラインショッピングサイトAPIスクレイピングスマホアプリ機械学習Rubyでは、以上の8つのものが作れます。シンプルで学びやすく、様々なものが作れる応用が効くことは、初心者におすすめできる理由の一つです。驚きなのは機会学習にも対応していることです。今、AI(人工知能)が様々な商品に搭載されていおり、話題を呼んでいます。いえ、機会学習であればPythonの方が今のところ優秀なので、これからの展望に期待ですね。railsというフレームワークを活用して作られたサイトとして有名です。ユーザーの投稿のしやすさや、アカウントの管理など、なるべく使いやすように作られています。railsを使用して作られています。世界一のUU(ユニークユーザー)数を誇る「Facebook」の開発にも採用されていて、大規模なシステム開発においても有用な言語です。AI(人工知能)領域で力を発揮している言語としても知られています。実は様々な場面で使える言語として重宝されています。Pythonのメリット・デメリットを覗いてみましょう。Pythonのメリット文法がシンプルで書きやすく読みやすいAIや機械学習の専門分野で実績があるライブラリが豊富で開発を高速化できるWebフレームワークでWebサービスを高速でリリースできるフレームワークやライブラリが充実しているため様々なシーンで活躍できるシンプルで書きやすく読みやすいことは初心者にとって一番のメリットでしょう。)2019年5月に発表されたPYPLの人気言語ランキングでは1位です。求人数もかなり増えています。平均年収が高い言語の中でもRubyに次いで案件数が多く、需要がうなぎのぼりで高まっています。フリーランス案件としての仕事は少ないものの、企業が求めていないかと聞かれればそんなことはありません。今後は案件数も右肩上がりで上昇していくだろうと考えています。できること・作れるものまず、Pythonでできることを見ていきましょう。PythonでできることWEBアプリデータ解析/分析ツール人工知能マーケティングに関連する職業の人に非常におすすめできる言語でもあります。その理由は、データ分析や解析などに強い点です。データ分析に強い言語という利点を活かし、人工知能の開発にも一番使われている言語です。(ロボット)「Youtube」や「Instagram」など、ライフスタイルの一部になっているサイトにもPythonは使われています。「Pepper」などのロボット関連の人工知能のプログラミングにも利用されています。多岐に渡って利用される言語だということが分かりますね。https://www.php.net/manual/ja/index.php特徴PHPは日本では多くのWEBサービスで利用されている言語です。CMSサイト(管理者ページで簡単に更新できるようになっているサイト)作成によく利用される「WordPress」や、ECサイト設置に利用される「EC-CUBE」などにも使用されています。多いネット上にPHPの情報が多い多くのサービスで使われている求人が多い日本ではJavaと並んでよく使われる言語で、利用者が多くネット上でもPHPに関する日本語で解説されている情報が豊富です。多くのサービスで利用され、そのユーザー数も多いことから、求人数も豊富です。思うかもしれませんが、実はある程度ルールがないと無法地帯になってしまいます。Job!)2019年5月に発表されたPYPLの人気言語ランキングでは5位です。WordPressの対応言語でもあるため、その影響もありそうですね!求人数もJavaに次いでトップクラスの数を誇っています。Web系では、一番需要がある言語なので、利用者も多く、PHPエンジニアを欲している企業もかなり多いです。できること・作れるものまず、PHPでできることからみていきましょう。PHPでできることWebアプリWebサービス結論としてPHPでは、Web系しかできません。Webアプリ開発においてPHPは日本で一番使われている言語です。Webアプリやサービスを作りたいなら、まず学ぶべきはこの言語だと言えます。Webアプリといってもピンと来ないと思うので、具体的に言うと、以下のようなものを作ることができます。PHPで作れるものECサイトSNSブログお問い合わせフォーム予約システム社内管理システムこのようなWebサービス・メディアで必要があるものや、管理システムなどのシステム側のコーディングにも使われます。https://developer.mozilla.org/ja/docs/Web/JavaScript/Guide特徴JavaScriptは、特にクロスプラットフォームの環境が充実しており、JavaScript単体だけでスマホアプリも作れたり、サーバサイドのデータ管理の部分も作れたりします。JavaScriptのメリットブラウザだけで動作確認できるので学習がとても始めやすい各種ツールの使い方を覚えるだけで色んなモノが作れる。WEB系もユーザーがいかに使いやすいかを考え、改良することが求められるようになってきており、JavaScriptのスキルが仕事として歓迎されやすくなっている点もプラス評価です。JavaScriptのデメリット新しい物が次々出ていて学習するポイントが安定しない結局広い範囲の知識がないと使いこなせないJavaScriptが使えるフロントエンジニアは重宝されるものの、サーバサイドの知識もある程度要求されます。仕事として行う場合は他の言語の知識も必要になってくる場合が多く見受けられます。JavaScriptはいろいろなことができますが「このツールだけできればエンジニアとしてご飯が食べられる!」というものは限られています。言語別年収ランキングをまとめてみました。)2019年5月に発表されたPYPLの人気言語ランキングでは3位です。見た目に動きをつけられる言語としてかなり根強く人気があります。JavaScriptはフロントもバックエンドもどちらもいける柔軟性の高い言語です。案件数もPHPと同じとまではいかなくても増えてきています。学習しといて損はない言語ですね。できること・作れるものJavaScriptのできることから見ていきましょう。JavaScriptのできることWebサイトに動きをつけるユーザー操作で処理ができる非同期通信ができるユーザーの操作(フォームの送信、マウスのドラッグ&ドロップ、画像の読み込み、テキストの選択など)で様々な処理ができます。これはJavaSciptの大きな特徴でWebサイトに多く使われています。非同期通信といって、ページを再度読み込むことなく、リアルタイムで更新できる技術を使用できるのもJavaScriptの特徴です。非同期以外の通信のものはページが表示されるのに時間がかかりますが、非同期通信は通信の時間を待たずに一瞬で表示できます。https://www.java.com/ja/特徴Javaは、Google三大言語のひとつで、コンピュータのOSに依存しない汎用性の高い言語です。大型の業務システムを作る際に採用されることが多いです。コンパイラ言語(コーディングした後に実行するためのファイルを作ってから使うもの)なので、PHP/Python/Rubyと言ったスクリプト言語よりも高速に処理ができます。どのコンピュータにも搭載できるという特徴を持っています。Javaのメリットプログラミングそのものの知識がしっかりつく大きい業務を作るときに採用されやすいAndroidアプリをスタンダードな方法で作れるオブジェクト指向や、汎用的な言語の知識がしっかり学べます。業務としてもJavaの経験を持つエンジニアは歓迎されやすいため有効な武器にしていけます。WEBシステムだけではなく、その汎用性から組み込み系やスマホ(Androidアプリ)にも使用されています。Javaを学習するデメリット学習コストが比較的高く動きを確認しながら学習できない米国で伸び悩んでいるため日本でも見直す所が増えるかも記述するコードの量が多くなり、設計が複雑で学習コストが高いもし個人でシステムを作るとなっても、相当量のコードを書かなければいけないのでまず採用されません(逆に大規模なシステムにお金をかけて作れる場合は採用しやすいです)。言語別年収ランキングをまとめてみました。)2019年5月に発表されたPYPLの人気言語ランキングでは2位。プログラミングという言葉を知ってて知らない人はいないくらいの超有名言語で、露出も多いことが人気の理由かもしれません。OSに依存しないという特徴によってJavaの経験を持つエンジニアは歓迎されやすく需要が高いです。Androidアプリを作れるところも強みですね。処理するスピードが早いので、サクサク動くユーザーにストレスのないアプリが作れます。できること・作れるものまずJavaでできることを見ていきましょう。人工知能を用いたアプリ開発IoTシステムシステム用のソフト開発ゲームソフトの開発このように様々な分野で使われていることもあり、Javaの需要は過去5年間で見てもやはり高いです。求人数はNo.1で企業研修でプログラミングを学ぶ場合はほとんどこのJavaを学ぶことになります。「Javaを使っている現場が多く、一番需要がある」という点に尽きます。作れる物もご紹介しておきます。Javaで作れるもの楽天の業務効率化を図る企業システムメガバンクなど金融機関の会計システムTwitterEvernoteAndroidアプリこのように多岐に渡ります。金融機関のシステム関係はJavaのシェアが高くほとんどの場合で使われています。アプリ系にもJavaは使われていて、汎用性の高さがわかりますね。https://docs.microsoft.com/ja-jp/cpp/c-language/c-language-reference特徴C言語は、1972年にアメリカで開発されたとても汎用性の高いプログラミング言語です。組み込み系(家電、ロボットなど)と呼ばれるものや、研究目的のシミュレーションツール、コンシューマ向けゲーム(家庭用ゲーム機)のプログラミングで主に使用されます。C++は基本的にC言語の上位互換で、C言語をマスターした後の次のステージと言ってもいいでしょう。C言語/C++のメリット比較的難しいがその分プログラミング基礎力が付くとても早い動作のアプリが作れるようになる1972年に開発されてからこれまで様々な現場で使われてきたC言語は、C言語より後に開発された「PHP・Java・Python・Objective-C」など多くの言語に影響を与えたため、C言語をできる人はこれらの言語の学習も比較的簡単に進めることができるでしょう。C言語/C++のデメリット使いこなせるようになる前にすごく挫折しやすい中途半端な理解だと難易度の高いバグが出がちネームバリュー(知名度)から「とりあえずこれできればいいんでしょう!」という理由で学び始めて、そのほとんどの人が挫折すると思われるのがC言語です。)2019年5月に発表されたPYPLの人気言語ランキングでは、6位。フリーランス案件を扱うレバテックフリーランスでは、C言語の案件は16件、C++の案件は43件と、数は少なくなるものの、フリーランスでも仕事あります。C言語は誕生してから歴史があるだけに、特に正社員ではかなりの案件数でした。非公開案件を含めたらとんでもない量になりそうですね!できる事・作れる物C言語で作れるものは非常にたくさんあります。ロボット電化製品ソフトウェアOSなど、様々なプログラムがC言語を使って作られています。最近ではJavaでAndroidアプリを作ると処理が重い(カクカクと動く、またはアプリが落ちる)ので、C++でAndroidアプリを開発しているという人もいます。大企業や国のシステムでも使われるため、数年から数十年に渡った保守運用などの業務もあります。Watchで利用するアプリを開発することができます。これまでApple製品の開発には「Objective-C」というものが使われることが多かったのですが、どんどんSwiftに切り替わっていっています。Swiftのメリット最前線を走っている人も経歴が長くない為、活躍しやすいこれからアプリ以外の用途も広がっていくと期待できるいずれアプリ開発を仕事にしたい人や、ベンチャー企業でビジネスアイディアを形にしたい人におすすめです。)2019年5月に発表されたPYPLの人気言語ランキングでは、9位。2014年にできたモダン言語としてFacebookをはじめとする大企業が注目していた言語でもあるため人気は高いです。転職サイトdodaによると、swiftの求人数は282件で、フリーランスエンジニア向け求人サイトポテパンによると12件の求人数と、いずれもとても求人が溢れているというわけではありません。iPhoneの普及率を考えると、今後の需要は高まっていくと考えられます。日本ではフリーランス案件の獲得がしにくい言語かもしれませんが、年収は高いため需要が一概に低いとは言えない言語だと言えそうですね!できる事・作れる物Swiftを使うと、主にApple製品用のアプリを中心に、Webアプリなども作成することができます。TVアプリWEBアプリ、WEBサーバーこれまではアプリはObjective-Cで開発、WEBサーバーはRubyで作るといったように、2つの言語を使用する必要がありました。SwiftではWEBアプリ、WEBサーバーの両方を作ることができるようになったため、通信が発生するアプリを作る場合に非常に効率がよくなりました。https://docs.microsoft.com/ja-jp/dotnet/visual-basic/特徴VisualBasic.NET(以下、VB.NET)とは、Microsoftが作っている基本的にWindowsコンピュータ上で利用するプログラミング言語です。VB.NETのメリットとにかく簡単でわかりやすいそのまま仕事で使えることもあるC言語やJavaと比較すると、私たちが日常に使うような言葉(自然言語)に似ているため、プログラミング初心者でも分かりやすいので、IT教育の現場でも使われています。VB.NETのデメリット他言語よりも簡単な分、汎用性が欠けることがある自然言語に近いので簡単に理解しながら学習が進められるというメリットの反面、VisualBasic.NETでしか開発できないアプリもあり、汎用性に欠けてしまいます。:350万円程度2019年5月に発表されたPYPLの人気言語ランキングでは、VB.NETは17位。一時期は5位ほどまで人気が復活していたのですが、現在の人気は下降気味です。初心者向けフリーランス案件のサイト「ポテパン」で公開されているVBの案件は10件ほど、転職サイトdodaでは598件ほど求人があるので、フリーランスよりも正社員としての需要の方があります。できる事・作れる物VB.NETはボタンやテキストボックス等、ユーザーが直接目にする部分の開発に適しています。各プログラムごとにまとまったコードになっているので、組み合わせるだけでプログラムを作ることができます。EXCEL、Outlook、WordなどのWindowsのアプリのプログラム構築も可能で、メールの件名や本文を条件によって分けて自動で返信をしたりなどもできます。https://docs.microsoft.com/ja-jp/dotnet/csharp/特徴C#は、C言語に近い文法で、C++よりも簡単にオブジェクト指向で処理を書いて行けるように作られている言語です。業務で使う他は、ゲームを作る際に学習されている方が多いです。「Unity」という3Dゲーム作成を得意としているゲーム開発ツールで採用されている為、Unityを使うという用途でも人気になっています。C#のメリットゲームで動かしながら学びやすいゲーム開発に使える環境や、ライブラリ(処理をまとめたパッケージ)が比較的多い為、ゲームを作りながらオブジェクト指向を学んでいきやすいです。.NETという環境を利用することでiOS/Android向けのアプリの開発も可能になっています。:500万円後半2019年5月に発表されたPYPLの人気言語ランキングでは、4位。ゲーム言語で有名なC#は一定の人気がやはりありますね!転職サイトdodaでは1445件の求人数、ポテパンフリーランスでは48件の求人数と、いずれも求人数は多めです。ゲームディレクション系のお仕事が主で、案件数からも、かなり需要がある言語だということがう伺えますね。できる事・作れる物C#で作れるものは主に下記の3点です。Mac」がリリースされたことによりMacでもC#を使った開発ができるようになりました。Unity」ではUnityを使ったゲームを紹介してますので、こちらも気になったら見てみてください。http://golang.jp/特徴Goは、2009年にGoogleによって開発された比較的新しい言語です。Softwareによる2016年のプログラミング言語大賞ではGoが大賞を受賞しました。Goの主な特徴として、軽量なスレッディングやシンプルでバランスのとれた言語で、安全性が高くシステムの運用に支障をきたすGC(ガーベッジコレクション)やメモリリークが起きにくい言語でもあります。Goのメリット安定性、柔軟性が高い軽量な並行処理Goのデメリット比較的新しい言語では標準で提供されているような、継承や例外がない日本国内でも広告配信システムやアプリケーションの開発で、Goを扱った案件が増えてきています。)ビズリーチ調べの平均年収では第1位のGo。2019年5月に発表されたPYPLの人気言語ランキングでは、14位です。求人案件数が少ないものの、平均年収が高い言語として注目を浴びている言語でもあります!ただ、現在の日本では仕事の案件数的にはやっぱり少ない方ではあるようです。初心者向けのフリーランス案件を扱うポテパンでは、Goの公開されている案件は33件でした。非公開案件はこの4倍くらいあるため、これから伸びることを考えれば十分な案件量だと考えられますね!できる事・作れる物Goでは、主にこのようなものが作成できます。Webサーバー構築アプリケーション開発コマンドラインツール将来的にはデスクトップアプリの開発も期待されている言語なので、今後アプリ開発といえばGoの選択肢が出て来る日も近いかもしれません。notepairsなどの様々なアプリがGoによって開発されています。転職のしやすさを重視するなら作りたいものが決まっていない状態で、とにかく転職を目指すならJavaとPHPがおすすめです。この2種類のプログラミング言語は日本全体の求人の約45%を占めています。募集する企業の数が、他の言語に比べて圧倒的に多いため、習得すれば未経験からでも転職を目指すことが容易になるでしょう。Webサイト・Webサービスを作りたいならWebサイト制作やWebサービスを開発したいなら、PHP・Ruby・Javascriptがおすすめです。どの言語も初心者が扱いやすく、はじめて学習を始める言語としても適しています。PHPはWordPressのカスタマイズに用いられており、Web制作に特化した言語です。Rails」というフレームワークを使うことで簡単にWebアプリを作成することができます。Javascriptはフレームワークが豊富にあり、フロントエンド・バックエンド両方の開発ができる万能型の言語です。人工知能を開発したいならいま流行りの人工知能を開発したいなら、PythonかR言語の2択です。Pythonは人工知能開発に特化したフレームワークが豊富にあるため、人工知能全般の開発をしたい方におすすめです。R言語は統計学の分野において力を発揮する言語で、機械学習のなかでもデータ分析を得意としています。前提として、プログラミング言語以外にも高い数学知識が必要となるため、その条件を踏まえた上で選択するといいでしょう。システム開発をしたいならシステム開発に携わりたいなら、C言語・C++・Javaがおすすめです。この3つのプログラミング言語は、多様性が高く処理速度も他の言語に比べてトップクラスです。Javaは大規模開発に用いられることが多く、習得することで有名な大企業のシステム開発案件に携われる可能性があるなど、とても需要の高い言語です。C言語・C++は機器にプログラミングを組み込む際によく用いられ、最近話題のIoTなどに活用されています。スマホアプリ開発をしたいならスマホアプリを開発したいなら、Swift・Kotlin・Javaがおすすめです。それぞれ用途が明確に別れており、iOSアプリ開発ならSwift、AndroidアプリにはKotlin・Javaが用いられます。Swift・KotlinはJavaよりも習得難易度が低く、初学者でも学びやすい構造になっているので、アプリ開発を仕事にしたいのならSwift・Kotlinから選ぶといいでしょう。ゲーム開発をしたいならゲーム開発をしたいならC#とUnityを活用しましょう。これらはPS4やWii、PCゲームなど様々なプラットフォームのゲームを開発することができます。UnityはVRやMR・ARといった最先端技術も開発することができるため、とても需要が高く、Unity自体はプログラミング知識があまりなくても感覚的に操作することができます。職業別プログラミング言語分布図システムエンジニアを目指す人におすすめのプログラミング言語システムエンジニアを目指すなら、SQLなどのDBに関するスキルとサーバーサイド言語が必要となります。SQLは業務の中核を担うため、確実に習得しておきたいですね。あわせて学ぶサーバーサイド言語は、Ruby・Java・PHP・Pythonなどがありますが、現在のIT業界の需要を考えるとJavaを学ぶことをおすすめします。Javaは大規模開発に使用されることが多いため、習得することで様々な企業の求人にエントリーできるようになります。始めて学ぶ言語としては、比較的難しい部類にはいる言語なので、学びやすさを重視するならRubyをおすすめします。システムエンジニアについてはこちらの記事で詳しく解説しているので、SEを目指す人はぜひご覧ください。目指す人におすすめのプログラミング言語Webエンジニアは、基本的にアジャイル開発でプロジェクトが進むため、サーバーサイド・フロントエンド両方を扱えた方がいいでしょう。基本的なスキルとしてPHP・JavaScriptはある程度扱えるようにしましょう。その他の言語に関しては、企業のニーズに合わせて習得することをおすすめします。大人数で開発を進めるSEと違い、Webエンジニアは少人数で開発を行うことが多いため、Webエンジニアとしての価値を高めるにはSQLなどDBのスキルを習得するのもいいでしょう。Webエンジニアについてはこちらの記事で詳しく紹介しているので、ぜひご覧ください。目指す人におすすめのプログラミング言語フリーランスエンジニアを目指す人は、基本的にいままでの培ってきた経験をベースに必要な言語を学んでいくことになります。そのため、コレと決まった言語は特にありません。未経験からフリーランスエンジニアを目指すのであれば、比較的案件が豊富で獲得しやすいPHP・Javascriptを学ぶことがおすすめです。クラウドワークスなどにはWordPressの制作案件やカスタマイズ案件が多いので、特にWordPressのカスタマイズに必須なPHPを中心に学んでおくといいでしょう。未経験からフリーランスエンジニアを目指す方法は、こちらの記事にまとめているのでご確認ください。副業が目的の人もフリーランス同様、Web系の言語を学ぶといいでしょう。先程も述べた通り、クラウドワークスにはWordPress案件が豊富にあります。そのため、PHPやJavascriptを学ぶことで無理なく副業収入を得ることができるのでおすすめです。WordPress案件は相場よりも低価格な場合が多いので、高収入を望むならRubyなどを学んでWebアプリ開発案件を行うといいでしょう。結局初心者はどの言語を学ぶべきなの?これまでランキング形式で人気プログラミング言語を紹介してきました。目的が決まっていれば目的から逆算して必要なプログラミング言語を算出することができますが、エンジニアに転職することやフリーランスが目的であったりすると、どの言語を学べばいいのか決められないですよね。そこで、おすすめしたい方法はプロに相談するこということです。弊社「侍エンジニア塾」で行っている無料体験レッスンでは、専属コンサルタントがあなたの不安や悩み、今後のキャリアなどについてお話させていただいたうえで、あなたに必要なプログラミング言語を算出して、オーダーメイドカリキュラムを作成いたします。カリキュラムを作成したからといって、受講しなければならないといったことはありません。なにから始めればいいか分からないという方は、ぜひ弊社の無料体験レッスンをご活用下さい。無料体験レッスンを予約するプログラミング言語に関するQ&AQ:プログラミング言語は1個で十分なの?A:一つの言語だけでもエンジニアになることはできる。システム開発には基本的に複数のプログラミング言語が使われています。そのため、一人でシステム開発を行うのであれば、複数のプログラミング言語を覚える必要があるでしょう。基本的にエンジニアはチームで開発を行い、それぞれが得意な領域を担当します。そのため、一つの言語を習得すればエンジニアに就職・転職することは可能です。Q:結局どの言語を学べばいいかわからないときは?A:守備範囲の広いプログラミング言語を学習しよう。プログラミング言語を習得して、エンジニアとして活躍したいということであれば、一つに特化したプログラミング言語よりも守備範囲の広いプログラミング言語を選択した方がいいでしょう。特化した言語だと、その分野の案件しかこなすことができないため、潰しが効きません。記事の後半にご紹介した守備範囲の広いプログラミング言語ランキングを参考に言語選定を行ってみて下さい。Q:習得できるまでの期間はどれくらい?A:一般的には独学で1000時間必要。独学で一つのプログラミング言語を習得するには、一般的に1000時間必要と言われています。この時間はあくまでも目安であり、教材や学習環境によって大きく変化します。これらが整っていれば習得までの時間を300〜500時間ほどまで減らすことができるでしょう。いえ、個人差が大きいのであくまでも参考程度に受け取っていただけると幸いです。Q:特化した言語がいいの?いろいろできる言語がいいの?A:作りたいものが決まっているなら特化した言語がいい。何か作りたい目的があるならば、その目的に特化したプログラミング言語を選ぶほうがいいでしょう。iOSアプリ開発をしたいのであればSwiftを習得した方が、他の言語でアプリ開発を行うよりも簡単に開発を進めることができます。目的が明確になっていないのであれば、守備範囲の広いプログラミング言語を選んだほうがいいでしょう。目的が漠然としていてプログラミング言語を決めかねているのであれば、プログラミング学習診断アプリをご活用下さい。2〜3問の質問からあなたにあったプログラミング言語を選定致します。プログラミング言語を診断してみるQ:フリーランスになりやすい言語って?A:求人数と学習難易度からみてPHPがおすすめです。クラウドテック」によると、Java・PHPで5割以上のシェア率があります。希少性の高いGo・Pythonなどの言語は高単価案件が多いです。これからプログラミング学習を始める初学者には学びやすさと求人案件の多さからPHPがおすすめです。まとめいかがでしたでしょうか?入門者おすすめのプログラミング言語をランキング形式でご紹介してきました。プログラミング言語はどれも一長一短です。今回の内容を参考に、自分のやりたいことやなりたいものから逆算して、プログラミングの学習を初めて頂ければ幸いです!プログラミング初心者がまず抑えておきたいポイントをまとめた記事もありますので参考にしてみてください。2019年12月2日TweetPocket「プログラミング、右も左もわからない...」という方にオススメ当プログラミングスクール「侍エンジニア塾」では、これまで6000人以上のエンジニアを輩出してきました。その経験を通して、プログラミング学習に成功する人は、「目的目標が明確でそれに合わせた学習プランがあること」「常に相談できる人がそばにいること」「自己解決能力が身につくこと」この3つが根付いている傾向を発見しました。侍エンジニア塾は上記3つの成功ポイントを満たすようなサービス設計に磨きをかけております。「自分のスタイルや目的に合わせて学習を進めたいな」とお考えの方は、ぜひチェックしてみてください。書いた人ヤマシタシステムエンジニアとして10年勤務→フリーランスへ。現在は侍ブログ編集部としてこれまでに200記事以上の記事を執筆。大規模システム開発からWebアプリ開発まで経験あり。最近ではPythonの機械学習に挑戦中。Reserved.現役生徒500名以上が在籍する弊社のプログラミング学習プランをあなたに合わせて最短1分で診断します。