高速なプログラミング言語
・C
・Rust
・C++
・Go
世界中に膨大にある「プログラミング言語」。エンジニアの中には「次に何の言語を学ぶか」迷っている人もいるのでは?
そこで今回は書籍「プログラミング言語大全」(著:クジラ飛行机/技術評論社)より、「どのプログラミング言語を学ぶべきか」の章を一部抜粋して紹介しよう。次に何の言語を勉強しようか、迷っているエンジニアは必見だ。
プログラミング言語の選び方は様々なものがあります。基本的には書籍の中にある用途別の入門がおすすめですが、用途がまだ定まっていないという人も多いでしょう。そこで、おすすめのプログラミング言語の選び方をいくつか紹介します。
下記は、プログラミング言語を選びたい人に向けたYES/NOチャートです。
プログラミング言語の実行速度を気にする人は多いです。実のところ、本書で取り上げている言語の大部分は実用される言語なので、どれを選んでも速度的には十分な水準にあります。
またシステムやソフトウェアを作成すると、実はプログラミング言語の実行速度そのものは支配的ではないということもままあります。しかし、早いプログラミング言語に興味がある、自分が今行っている仕事で速いプログラミング言語が求められているので学びたいという人も多いでしょう。
一般に、静的型付けでコンパイルを必要とする言語のほうが動的型付け言語より実行速度が高速です。更に静的型付け言語でもネイティブコード(直接実行できるコード)を出力できるCやC++のほうが、VMを介する必要のあるバイトコードを生成するJavaなどの言語より高速な傾向があります。
The Computer Language Benchmarks Gameというプロジェクト内の(n-body)というベンチマークの結果を元に言語ごとの実行速度ランキングを作成しました。なお、これらのベンチマークは絶対的なものではなく、あくまで1つの指標として参考にしてください。
この中ではC、C++、Rustの3つ特に高速で、かつ多くの用途を備えるプログラミング言語です。
高速なプログラミング言語
・C
・Rust
・C++
・Go
プログラミング言語の書きやすさは数値化しづらい※指標です。情報がどれだけあるか、ライブラリ(機能拡張)が使いやすいか、言語そのものが書きやすいかなど複数の観点があります。ここでは書きやすいプログラミング言語を筆者の主観でピックアップします。
※開発言語と生産性に関する研究自体は国内外で行われています。ただし、様々な前提条件が絡んでくるため本書では取り上げていません。
書きやすさという点で、今もっとも人気があるプログラミング言語はPythonでしょう。Pythonは平易な構文やライブラリの充実で人気のプログラミング言語です。プログラミング言語の可読性を重視しており※、使いやすさと簡潔さの双方で優れた言語として知られています。なにか作るときにライブラリが多くあるのですぐに何でも作れて、コードも読みやすいことが多いです。
※Zen of Python(Python の禅)というドキュメントが知られています。
Rubyも書きやすい言語として人気を集めています。文法自体が書きやすさを重視している点が特徴です。主要な開発者に日本人が多いこともあり、充実した日本語ドキュメントがあるのも強みでしょう。(Rubyリファレンスマニュアルという日本語がオリジナルの公式ドキュメントが存在します。橋本将氏などの貢献が知られます)
静的型付け言語の分野では、ライバルのJavaと比べて記述が簡潔なKotlinなども人気を集めています。
なでしこは日本語で読み書きできるプログラミング言語です。
また教育用として人気のあるScratchはビジュアルプログラミング言語でコードを書かずにプログラムを作成でき、簡単なゲームを手軽に作成できます。
書きやすいプログラミング言語
・C
・Python
・Kotlin
・Ruby
・なでしこ
プログラミング言語を学んでいて陥りやすいのが、わかりやすい成果が出なくてモチベーションが上がらないという事態です。こんなときにおすすめなのが、グラフィックをすぐに作成・変更できるなど見た目の変化が簡単に起こせるプログラミング言語です。
おすすめはWebサイトに動きをつけることのできるJavaScriptです。Excelファイルを編集したり、グラフを作成したりして目に見える変化がすぐに出せるExcel VBAも面白いでしょう。
ゲーム開発に興味のある人はUnityからC#に入門するのもありかもしれません。ゲーム画面を動かしながらプログラミングに入門できます。
学んでいる実感が得やすいプログラミング言語
・C
・JavaScript
・C#(Unity)
・VBA
・Scratch
プログラムを学び、就職などに活用するため資格をゲットしたいとき、どんな言語を学ぶのが理想的でしょう?
プログラミング言語関連の資格は数多くあります。中でも最も人気のあるのが、基本情報技術者試験です。基本情報技術者試験の中には5つのプログラミング言語の中から1つを選び、その言語を用いて解答していく問題があります。
基本情報技術者試験に用いられる5つの言語はC言語(C)、Java※、Python、アセンブラ、表計算※です。
※JavaはOracleが提供するJava Bronze/Silverなどの人気資格もあります。
※表計算は関数などを用いて擬似的にプログラミング言語のように表計算ソフトウェア(Excelのようなソフトウェアの総称)を扱おうというものです。Excel 関数とほぼ同等のものと考えてください。
この中でも特におすすめなのがJava、Python、C言語の3つです。資格取得後に自分でプログラムすることを考えると、この3つを修めておくことは大きな力となります。
資格にも役立つプログラミング言語
・C
・Java
・アセンブラ
・Python
・Excel関数
手に職をつけたい人にとってはプログラミング言語が仕事で使えるかは重要な観点でしょう。プログラミング言語には仕事の現場で広く使われるものもあれば、あまり使われないものもあります。
こういった言語の人気としては求人サイトなどのプログラミング言語人気ランキングや、プログラミング言語ごとの求人数推移をみるのが有用です。ここでは、転職支援サービスのレバテックキャリアが2019年6月に実施した調査などを参考に日本で仕事で使われるプログラミング言語をピックアップしました。
仕事につながるプログラミング言語
・Java
・Ruby
・PHP
・Python
・C#
・VBA
・JavaScript
人気がある言語から選ぶのもいいでしょう。情報が多かったり、仕事に繋がりやすかったりといったメリットがあります。 ここではいくつかのランキングを掲載します。それぞれ前提条件が違うため、必ずしも実世界での利用率と同等というわけではありません。
プログラミングQ&Aサービスで世界で最も人気のあるStackoverflowでの人気ランキングの調査結果です。
検索エンジンの検索結果を元に算出したTIOBE Indexのランキングです。
ソフトウェア開発で欠かせない存在となった、ソースコード共有・コラボレーションサービスのGitHubの調査結果による人気ランキングです。
プログラミング言語の中には残念ながら今は広くは使われていない、あるいは使われていても知られていないものもあります。書籍ではこういった言語の中でも特に重要な言語をピックアップして紹介しています。
現在広くは用いられていない言語を学ぶことはごく短期で考えると利益が少ないかもしれません。しかし、古いプログラミング言語を知っておくことは単純に知的好奇心を満たしますし、教養として今後のプログラミング生活を助けてくれることもあります。
ここではどれが古典と呼ぶべき言語かはあえて示しません。皆さんが名前は知っていても使ったことのない言語や、古くから使われている歴史のある言語から探してみてください。
プログラミング言語の大全集! 100以上のプログラミング言語や処理系,関連言語を幅広く解説。C,Java,Python,PHP,Ruby,JavaScript…主要言語はもちろんマイナー言語まで収録。初心者にも経験者にも楽しい一冊です。
NEW!
タグ