人気コンパイラ言語5選
はじめに
今回から、現在人気があるプログラミング言語を個別に紹介していきます。本稿ではコンパイラ言語5選と題して、C、C++、Objective-C、Java、C#の5つを取り扱います。この5つの言語は、TIOBE Softwareのランキングを参考に上位の言語を選んでいます。
TIOBE Software: The Coding Standards Company
TIOBE Softwareのランキングは検索のヒット数などを元に、プログラミング言語の人気をランキング化したもので、2011年3月度のランキングでは、上から、Java、C、C++、C#、PHP、Python、(Visual)Basic、Objective-C、Perl、JavaScript、Rubyの順になっています。
なお、上記ランキングは英語圏の影響が強く出ています。日本語圏で集計した場合はまた違った結果になることが予想されます。日本の仕事で求められている言語を知りたい方は、実際にプログラマ向けの求人サイトで求人数を比較した方が、より求めている情報に近い答えを見つけられると思います。
コンパイラ言語は学習難易度が高めな言語が多いですが、その代わり実行速度が速く、本格的なシステムを構築する際に利用されることも多いです。
各言語を紹介する前に「プログラミング言語の難易度」について、少しだけ解説します。
プログラミング言語の学習難易度
「どのプログラミング言語を学べばいいか」について話していると、「C++は難しい」とか「PHPは簡単だ」といった意見が聞こえてくることがあります。
どの言語を難しいと感じるかは、人によって意見が分かれるところです。例えばCを学ぶ際に出てくる「ポインタ」という概念は、初心者にとって難解だと言われていますが、人によってはあっさり理解できてしまうこともあるようです。
言語の難易度を統計的に示すことは難しいことであり、そうしたデータはあまり多くは公開されていません。そこで参考になるか悩ましいところではありますが、下記に筆者がこれまで利用してきた言語について、主観的に難易度を付けた一覧を掲載します。
図1:筆者主観によるプログラミング言語学習難易度ランキング |
これはあくまで筆者の主観の話で、特にPerlのポジションについては「もっと簡単だ」と言う人も多いでしょう。PythonとRubyを比べた場合、私はRubyの方が覚えやすかった(でも、どちらが好きかと聞かれたらPythonだ)と感じましたが、逆だと感じる人も多いと思います。
ただ、全体的にPHP、Ruby、Python、JavaScriptなどのLL(軽量言語)と呼ばれる言語は簡単だと感じる人が多く、C++やC、Javaなどのコンパイラ言語の方が難しいと感じる人が多いようです。
難易度に関わる要素
プログラミング言語の学習難易度には、いくつかの要素が関わっています。
1つは「記述の簡易さ」です。例えば「指定したファイルに書いてある文字を読み込む」というプログラムを作ろうと考えたとします。この時、「ファイルを読み込め!」という命令を1行書くだけで処理をしてくれる。そんな言語であれば覚えるのも簡単ですよね。RubyやPythonなどは比較的簡単にこうした処理が書けます。
難しい言語では、読み込むファイルのサイズに応じてバッファをプログラマが意識して確保しないといけないとか、ファイルを読むのに利用できる機能がいくつか用意されていて、プログラマが適切に選択しなければいけなかったりします。CやC++、Javaなどがそうです。
メモリ管理も言語の難しさを左右する要素になります。プログラムは情報をメモリ上に保持して処理を行います。この時、必要なメモリを確保したり、使い終わったメモリを解放したりする処理を、自動で行ってくれる(ガベージコレクションと言います)言語と、手動で行う言語(CやC++)があります。
プログラマが自前でメモリを管理した方が、処理速度は速くなる場合が多いです。しかし解放し忘れるとメモリリークが発生するなどのリスクがあり、適切に管理するのはプログラマにとって負担になります。
その他にも、文法の複雑さ、覚える必要がある機能の多さ、参考書などの入門者用情報の多さなどによっても、言語の難易度は左右されます。
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- プログラミング言語がたくさんある理由
- TIOBE、プログラミング言語の検索数を集計した「TIOBE Index」(2018年4月版)を発表
- 人気軽量プログラミング言語5選
- 【データから紐解く!】2017年の人気プログラミング言語を徹底比較!
- 需要No. 1言語はどれ? 2016年度人気プログラミング言語を徹底比較
- TIOBE、プログラミング言語の検索数を集計した「TIOBE Index」(2020年1月版)を発表
- TIOBE、プログラミング言語の検索数を集計した「TIOBE Index」(2019年9月版)を発表
- TIOBE、プログラミング言語の検索数を集計した「TIOBE Programming Community Index」(2018年9月版)を発表、Pythonが3位に
- TIOBE、プログラミング言語の検索数を集計した「TIOBE Programming Community Index」(2018年9月版)を発表、Pythonが3位に
- 米Appleが「Swift」をOSSとして公開、1位Java、2位Python…12月のPYPL言語ランキング発表、ほか