サーバーサイドプログラム言語の選択について

こんにちは.cosmobloomの小野です.

本日はプログラム言語の選択についてお話していきたいと思います.前回まではDBの選択やNoSQLについてお話ししていましたが,いよいよ実際のアプリで使用するプログラム言語の選択についてです.

プログラム言語の選択も各アプリケーションの要件に従って選択することが必要です.Webアプリケーションのバックエンド側であれば,やはり昔ながらのJavaやC#,Pythonなどのプログラム言語が多く使われています.

JavaはJVM(Java Virtual Machine)がインストールされている環境であればどのような環境でも実行することが可能なため非常に多くのアプリケーションが構築されています.Windows,Linux関係なく,JVMが存在すればプログラムが実行可能になります.Javaの場合はWebアプリケーションを構築するうえで利用するFrameworkが多く存在します.このほかにも,様々なライブラリが用意されているため,Webアプリケーションの開発を非常にスムーズ進めることが可能です.

C#も古くから利用されるプログラム言語です.C#の場合は,Microsoftによって提供されているプログラム言語であるため,Windows製品との相性が良いです.ですので,Excel.Word,Power pointなどのOffice製品を利用するアプリケーションを作成する際に非常に有利な言語です.C#も古くから存在する言語であるため,Java同様,様々なライブラリが存在するので効率よくアプリケーションを作成することが可能です.

Java,C#以外にPythonを例に挙げましたが,このPythonも古くから存在する言語なのです. JavaやC#との大きな違いはコンパイルが不要である点です.JavaやC#はアプリケーションを実行するにはコンパイルを行う必要がありますが,Pythonはコンパイルせずにアプリケーションを実行することができ,トライアンドエラーの開発が容易です.。

PythonはWebアプリのフレームワークという点ではJavaやC#と大きな違いはありませんが,機械学習のライブラリが豊富であるため,機械学習を利用したサービスを構築するうえでは非常に有効なプログラム言語と言えるでしょう.

このほかにもPHP,Javascriptなど様々なプログラム言語でサーバサイドアプリケーションを構築することができます.様々なプログラム言語が存在するため,要件,納期,特異な言語など様々な要件を考慮して実際に使用するプログラムを選定することが求められます.

本日は,プログラム言語の選択について簡単に説明しました.次回はもう少し踏み込んで,プログラムの開発手法についてお話したいと思います.

それでは,また来週お会いしましょう。

小野 弘幸