仕事で新しい人に最近の業界動向を伝える機会がありまして。
そういえばプログラムの言語って何があっただろう、
いっぱいあり過ぎて消化不良!
ということで私なりにまとめてみました。
その方への説明は終わったのですが、たった1回の説明で捨ててしまうのはもったいないなーということで、ここで公開します!
ウェブ系言語
フロントエンド… HTML、CSS、JavaScript
バックエンド … PHP、Ruby、Java、Python、Go、Scala など
近年で最も多様な言語が出てきた分野のプログラミング言語です。
盛衰が激しい。
大きくフロントエンド(画面描画用)とバックエンド(内部処理用)の2つに
分かれています。
フロントエンドは3点セット(HTML、CSS、JavaScript)すべてをすべてを学ぶ必要がありますが、バックエンドはどれか1つ覚えれば十分です。
余談ですが、
ウェブ系言語の隆盛のなかで一番の進歩だと思うのは、
今までJavaやPHPのソースの中で埋もれていた3点セットを フロントエンド と位置付けて独立させたことなのかなと思います。
これによって比較的学習しやすい3点セットだけで開発を行えるようになり
開発者が増えたことは good だと思います。
アプリ系言語
Android系 … kotlin、Java
iOS系 … swift、 Objective-C
AndroidはKotlin、iOS系はSwiftが主流
KotlinについてはJavaと非常に似通っているため、Javaを触ったことのある人なら取っつきやすいかと思います。
ただそれならJavaの方でAndroidアプリを作成したほうが早い気がしますね。
画面の描画についてはどちらもXMLファイルで定義します。
HTMLの構文とほぼ似通っていて、WEBシステムをJavaで作っていた人ならとても入りやすいのではないでしょうか。
(もちろんグラフィカルにレイアウトを作る機能もあります)
SwiftはC言語の系譜になるため、今までC言語やC++で作ってきた人には馴染みのあるものとなります。
ソースファイルが、「.h」ファイルと「.m」ファイル(C言語だと.cファイル)に分かれているのも特徴的です。
機械学習系、IoT系など
機械学習系 … Python、R など
IoT系 … Python、C、Java など
近年機械学習の人気の高まりとともに一気に一般化しました。
その中でもPythonが強い!
Pythonを簡単に表すなら
・短い! (ソースコードが)
・いっぱいある!(数理計算、機械学習用のライブラリが)
・何でもできる!(WEBサイトの作成もできる FaceBookもこれ)
初学者にはお勧めしたい言語の1つです。
記述量が少ない(=決まり事の記述が少ない)のでお手軽にプログラムが作れます。
OSソフトウェア系言語
Windows系 … C#、VB.NET
MacOS系 … swift、 Objective-C
皆さんがパソコンでよく使っているマイクロソフトのエクセル・ワード。
これはC#で作られています。
他にもWindows上で動作するものは大抵C#か、古いものだとVB.NETで作られています。
OSのネイティブな環境上で動くので、ウェブブラウザ越しで動くWEBアプリと比べると操作性が段違いに良いです。
MacのアプリについてはiOSと同じく Objective-C、近年はswiftが主流となっています。
組み込み系言語
車や家電など … C、C++
最近ではRaspberryPiの標準開発環境としてPythonもある
車や飛行機などの乗り物や、冷蔵庫などの家電製品をはじめ、
工業製品を動作させるためのプログラムとして古くから利用されています。
近年では大きな変化はないですが、その分蓄積されたライブラリが多く、まだ現役で利用されています。
組み込み言語で書かれたプログラムが動く環境は他の言語とは違っていて、
代表的な組み込み専用OSはITRON、VxWorks、OS-9などがあるようです。
(Linuxなどの汎用OSとは別もの)
都内大手IT企業に勤務(13年目)
生まれは兵庫。
教育学部からIT業界に飛び込んだ異色の経歴
慣れないことに苦労しながらもプログラミングからサーバ構築、果ては顧客対応まで一気通貫にこなす 何でもエンジニアに!
得意言語はJava、HTML、CSS、JavaScript
現在はアパレル向けの会員管理・POS管理システムの開発・運用に携わる。
以下のサービスを出品しています!
何でもご相談ください。