IoT、AI、Apps、プログラミング言語は何を学ぶべきか

IoT(Internet of Things、モノのインターネット)、AI(Artificial Intelligence、人工知能)、Apps(Applications、アプリ)などのfirmware(ファームウェア)の開発や、ソフトウェア開発をを将来的に生業にするためには、どの言語を習得すべきなのでしょうか。

programming language(プラグラミング言語)と言えば、代表的な物に、C/C++, Java, Php, JavaScript, Perl, Pythonなどがありますが、1つに絞るとしたら何にすべきなのか?という疑問が生じたので、そこいら辺の事情を調べてみることにしました。

ファームウェアの場合は、Assembly language(アセンブリ言語)が主流のような気もしますが、C/C++も使われているようなので、やはりC/C++の一択しかないような気もしますが、どうなんでしょうか。アセンブリ言語の習得は無理ゲーなような気がします。

スポンサーリンク

やはりC/C++が強い

The Top Three Programming Languages for Electronics Tinkering

The survey was filled out by over 3,000 people from around the world. They overwhelmingly point to C and C++ as the language to learn if you’re into electronics tinkering. Behind C is Python, which is followed closely by Javascript, Java, and C#.

「世界中の3000人の人々を対象にして行われた調査で、電子機器いじりに関心があるなら、C/C++を圧倒的に習得すべき言語として挙げています。C/C++の次がpythonで、その次が、Javascript, Java, C#となっています。」

やはりC/C++が圧倒的人気ですというか実用的です。Cocos2d-X, Unreal Engineの開発言語がC++で、UnityはC#ですが、どのゲームエンジンをメインに使うかで、習得言語が違ってきます。まぁ、あくまでも好みの問題ですね。

TIOBE Index for July 2016

TIOBE Index for July 2016

July Headline: Assembly Language enters the Top 10 again

「7月の大ニュース:アセンブリー言語が再びトップ10にランクインしています。」

1位はJava、2位はC、3位はC++、4位はPython、5位はC#となっています。ちなみに注目のアセンブリー言語は10位です。この5言語の中のどれかを習得すればいいんじゃないですかね。個人的にはC/C++を推しますが、人工知能分野に進みたいならpythonがいいかもしれません。Android Studioを使ってアプリ開発するならJavaですが、Visual StudioとXamarinでアプリ開発したいならC#です。UnityとCryengineもC#なので、ゲームアプリ開発はC#が今後の主流になっていくのかもしれません。

Nvidiaの、ソフトウェア開発ツールのページを見てみると、C/C++, Pythonがいいみたいな感じがします。C/C++はフリーで豊富なライブラリーが入手可能なので、科学技術計算や、GPUを使ったプログラミングをしたいなら、C/C++を習得するのがベストな選択と言えます。

opencourseware

モノのインターネットのファームウェア開発なら、アセンブリ言語がC/C++、あるいはその両方(3言語)をマスターする。人工知能分野で活躍したいならPythonを習得する。Pythonを詳しく知りたいなら、Pythonでできること ← このサイトがおすすめです。iPhone, Android phoneのアプリ開発ならC++かC#、あるいは両方をマスターする。ベストなのは、アセンブリ言語も覚えつつ、C/C++, C#, Pythonを習得することではないでしょうか。

英語もできた方がいいので、プログラミング言語学習を英語サイトを使って勉強するのが一石二鳥なのではないでしょうか。MIT, Stanford辺りのopencoursewareを上手く利用すれば、タダで勉強することが可能です。

Welcome to Stanford Engineering Everywhere (SEE)

MIT OpenCourseWare | Free Online Course Materials

例えば、アセンブラー言語の学習なら、Lecture 6: C to Assemblerが一見の価値有りです。レクチャーが2010年とちょっと古いのが気になりますが、タダのなので文句は言えません。MITなんか留学したら4年間で2500万円はかかるので、授業の雰囲気だけ味わうだけでも儲け物ではないでしょうか。

CS41 happy code, the python programming language、このスタンフォード大学のサイトは、Pythonの基礎を勉強には調度良いコースかもしれません。

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする