-
プログラミング言語とは
-
世界で注目されている言語ランキング
-
1位:Java
-
2位:C(言語)
-
3位:C++
-
4位:C
-
5位:Python
-
6位: JavaScript
-
7位:PHP
-
8位:Visual Basic .NET
-
9位:Assembly language
-
10位:Ruby
-
まとめ
プログラミング言語とは
プログラミング言語とは、
コンピューターに正確な指示を与えるための言語
です。コンピュータが解釈できる機械語と呼ばれる言語は人間にとって理解しにくいため、人間が理解しやすく、かつコンピュータに正確に指示を出すためにプログラミング言語が生まれました。
前述したとおり、プログラミング言語は
200種類以上存在
すると言われています。ただ、実際活用されている言語は一部で、日本と海外で流行している言語が異なることもあります。
世界で注目されている言語ランキング
引用:
TIOBE Index for October 2017|TIOBE Software
オランダのTIOBE Softwareという会社は、複数の
検索エンジン
の
検索結果
を集約し、話題になっているプログラミング言語を毎月ランキングで掲示しています。
2017年10月のランキング上位10位の言語は、以下のとおりです。
1位:Java2位:C(言語)3位:C++4位:C#5位:Python6位:JavaScript7位:PHP8位:Visual Basic .NET9位:Assembly language10位:Ruby
今回は、この10個のプログラミング言語について解説します。
1位:Java
Java(ジャバ)は世界的にも人気を集めている言語です。上図の検索割合でも10%以上がJavaに集まっています。
Javaの人気の要因は、
OS
に依存しないで開発できる
点です。プログラミング言語によっては、Windowsでは動作しても、Macでは使えないものもあります。その点Javaは汎用性があり、どんな環境でもソフトを動作させることができます。
Javaで開発できる
プログラム
は、
Web
アプリ
やデスクトップの
アプリ
などです。他にも、コンビニなどにあるP
OS
レジや勤怠管理システム、信号のシステムなど様々な場面で使われています。
有名どころでいうと、
Twitter
や
Evernote
などがJavaを使用しています。
2位:C(言語)
C言語は、1972年に開発された、プログラミング言語の中でも歴史が長い言語です。
他の言語よりもコンピューター寄りのコードであるため、初心者にとっては難易度が高まります。ただ、プログラミングの仕組みやコンピューターの動作を理解する必要がある分、
本格的にプログラミングを身につけたい場合はオススメ
です。大学の授業でもよく取り入れられています。
C言語は、
OS
やソフトウェア、ロボットの開発などに使います。近年話題の「
IoT(あらゆるモノが
インターネット
に繋がる仕組み)
」でも活躍しています。
Chrome
や
Safari
などのプラウザ、Webサーバーなど、
インターネット
の土台ともいえるサービスで使用されています。
3位:C++
C++(シープラスプラス)は、前述した
C言語の拡張版として開発されたプログラミング言語
です。日本語では、「シープラ」「シープラプラ」という通称があります。
C++は、C言語より開発効率が向上しています。またC言語との互換性もあるため、開発でC言語と一緒に使われることもあります。
4位:C#
C#(シーシャープ)は、Microsoft社が2000年に開発したプログラミング言語です。
前述したC言語やC++と関連があるように思えますが、違います。C#は、
C++とJavaの優れた点を取り入れて作られた言語
です。ただ、C言語に似た文法ではあるため、C言語系の言語を学んだことがある方にとっては習得しやすいでしょう。
C#は開発したMicrosoft社の
OS
であるWindows専用の言語でしたが、今は
OS
X(Macの
OS
)や
Android
など、幅広く対応しています。
Microsoft社やSkypeの公式サイト
で使用されています。
5位:Python
Python(パイソン)は、1991年に開発されたプログラミング言語です。歴史は長い言語ですが、
人工知能分野
で使われることもあり、近年注目を集めるようになりました。
Pythonはコードの文量が少なく、読みやすいことが特徴です。文法もシンプルなので、他人が書いた
プログラム
でも読み取りやすく、便利です。
Web
アプリ
ケーションや組み込み
アプリ
ケーション、人工知能の機械学習などで使われています。代表的なサービスでは、
YouTube
や
インス
タグ
ラム
、
Evernote
などがあります。
6位:JavaScript
JavaScript
(ジャバスクリプト)は、
Webブラウザに作業をさせるためのスクリプト言語
です。スクリプト言語とは、プログラミング言語のうち、
プログラム
の記述や実行を簡単にすることができる言語
を指します。
ユーザー
の
インターネット
での検索や、ホーム
ページ
での行動を処理しています。例えば、ネットショップで商品を選択するたびに現在の合計金額を試算してくれたり、申込時の入力
フォーム
で任意の
フォーム
をひとつ追加したりする際、
JavaScript
が使われています。
現在ではほとんどのWeb
ページ
に
JavaScript
が読み込まれていると言っても過言ではありません。
その他にも、Web
アプリ
ケーションやスマートフォン
アプリ
ケーションの開発にも使われています。
7位:PHP
PHP(ピーエイチピー)は、Web開発で使用されるスクリプト言語です。
HTML
というプログラミング言語と一緒に記述することができます。
HTML
はWeb
ページ
の文章や画像を表現するための言語です。文字の色や大きさといった文体を指定するための
CS
S
という言語とセットで使われます。
例えば、
HTML
と
CS
Sで制作した基本的なホーム
ページ
に、PHPを組み込むことでより使いやすい
ページ
にすることができます。例えばお問い合わせ
フォーム
や検索機能を追加する際に有用です。
また、
ブログ
やホーム
ページ
を制作・管理できる
WordPress
のカスタマイズも行うことができます。自社ホーム
ページ
を
WordPress
で制作している場合は、学ぶことで工夫の幅が広がるかもしれません。
8位:Visual Basic .NET
Visual Basic .NETは、Microsoft社が開発した
Windows用のプログラミング言語
です。
コードがコンピューター寄りの文体のC言語などと比較すると、
自然言語(人が使う言葉)寄り
であるため、初心者でも学びやすい言語です。
直接コードを打ち込むだけでなく、ボタンのようなパーツを画面上に配置し、そこから命令をするという特徴的な記述法です。
9位:Assembly language
Assembly languageは、日本語で「
アセンブリ言語
」といいます。アセンブリ言語で記述したファイルを変換する
プログラム
を「
アセンブラ
」といいますが、アセンブリ言語も合わせて「アセンブラ」と統一して呼ばれていることも多いようです。
アセンブリ言語は
C言語をつくるための言語
です。
コンピューターの言語を人に分かりやすい言語に変換する役割
を持っています。他のプログラミング言語であれば1行で書ける内容が、アセンブリ言語では数行かかります。
ただ、その分コンピューターの言語に忠実なので、性能を最大限活かすことができます。
コンピューターの仕組みやプログラミングの知識を根本から学びたい方は、アセンブリ言語から学ぶと理解が深まります。
10位:Ruby
Rubyは、
ホーム
ページ
などWeb上で利用するシステムを効率良く開発できるスクリプト言語
です。
Rubyは日本で開発された言語です。Javaなど海外で開発されたプログラミング言語に関する技術は、基本的に英語で情報提供されているため、最新のものは英語で読み取らないといけません。ただ、Rubyは
日本語で最新技術の情報を得ることができる
ため、活用しやすいというメリットがあります。
Cookpad(クックパッド)
や
食べログ
などで使用されています。
2019年3月時点での最新ランキング
引用:
TIOBE Index for March 2019|TIOBE Software
プログラムとは、OSがそのまま実行できるよう機械語に翻訳されたバイナリベースのファイルです。簡易なプログラムとしては例えばLinuxでよく使うコマンド類(cd や ls等)です。
プログラムはBasicやC++等、色々なプログラム言語の形式でテキストベースで書かれた命令文のファイル(ソースコード)を、コンパイラと呼ばれるもので、OS環境に適応できる機械語に翻訳して作られます。
つまり、あるプログラムを作るとき、ソースコードは同じでも、OSによって異なるプログラムを作るのであれば、コンパイラは異なります。
プログラムはスクリプトと比べて事前に機械語に翻訳(コンパイル)してあるので実行速度が速いというメリットがありますが、逆に言うと、コンパイルしないと使えないので開発でのデバッグ時等は毎回コンパイルするので面倒というデメリットがあったりします。
また、プログラムはバイナリ化されているので、他者からはどのように作られているのかはパッと見では分かりません。その為、リバースエンジニアリング等によって他者がプログラムを再利用するのが難しいというメリットもあります。ただし、オープンソースと呼ばれるものは、作者が自らソースコードをオープンにしているので、このメリットを放棄する、という宣言になります。
スクリプトとは、テキストファイルベースで書かれた命令文(ソースコード)のファイルのことを言います。スクリプトはインタープリタと呼ばれるものがスクリプト言語をその場で機械語に翻訳し、その場で実行します。
インタープリタを搭載しているのはOS(Linuxがシェルスクリプトを実行する、等)だったりミドルウェア(ブラウザがJavaScriptを実行する、あるいは、Webサーバが PHP や Perl を実行する等)だったりしますが、それらに応じてインタープリタは異なりますし、そのインタープリタによってスクリプト言語も異なります。
例えばLinuxであれば、bash等のシェルがインタープリタとなり、シェルスクリプトを実行します。
JITエンジン
スクリプトは、プログラムと比べて手軽な分、実行速度が遅いというデメリットがあり、最近では、実行前に事前に機械が扱い易い(つまり処理速度の速い)中間コードにコンパイルしておく、実行時コンパイラ(JITエンジン: Just in Time Engine)が主流です。
JITエンジンの実装としてはJAVAやC#、VB.net、eBPF 等が有名です。