最終更新日:
公開日:
その他
プログラミング言語て何?
コンピューターを操作する上で欠かすことのできない「ソフトウェア(アプリケーション)」。そのソフトウェアを構成しているのがプログラミング言語です。今回はその「プログラミング言語」について紹介します。あまりプログラミングに馴染みのない方、これからプログラミングに挑戦したい方を対象としています。
目次
プログラミング言語って何?
パソコンやスマートフォンを使っていると、様々なソフトウェア(またはアプリケーション)を起動し、扱っていると思います。
例えば、インターネットを閲覧するためのブラウザ、ExcelやWordなどのオフィス系ソフト、メール、音楽を再生するソフト。これら全てがソフトウェアであり、多くのエンジニアがプログラミング言語を使って作成したものです。
さらには、WindowsやMacOSX、iOS、AndroidといったOS(オペレーティングシステム)も同様です。高等なプログラミングによる技術の結晶です。
プログラミング言語とは、人がコンピューターへ指示を出すための言葉です。この言葉を機械語に変換する「コンパイル」を経て、コンピューターがコードを理解し実行します。
様々なプログラミング言語
コンピューターへ指示を出すためのコードを生成するための言葉が「プログラミング言語」でした。しかし、その言葉は1種類ではなく、様々な特徴を持った言葉が存在ます。例えば、有名な言語に絞って紹介すると次のようなものがあります。
- Objective-C
- Swift
- Java
- PHP
- Python
- Perl
- Ruby
- JavaScript
- C言語
- C++
- C#
- Lisp
- COBOL
- Processing
- FORTRAN
もしかしたら、目にしたことがものがあるかもしれません。ここで紹介していない言語もたくさんあり、コンピューターの進化と共に、日々新しい言語が開発されています。
これらの言語の違いは何かというと、主に使用される「用途」です。様々な用途に対し、プログラミングし易いように開発された結果として、上記のような多くの言語が誕生してきたと言えます。次に、その用途別にプログラミング言語を分類してみましょう。
用途別の分類
まずはどのような用途があるかを考えてみます。大まかにですが、今回は次のように分けました。
- Webアプリ – ブラウザやサーバー上で動作するアプリ
- Androidアプリ – Google社の開発したモバイルOS端末のアプリ
- iPhone/iPad系アプリ – Apple社のiOS端末のアプリ
- PCアプリ – 一般的なデスクトップPC、ラップトップ(ノート)PCで動作するアプリ。OSも含む。
- ゲーム – プレイステーションなどの端末ゲームや、PCゲーム。
- 業務用アプリ – システム会社や金融機関などの高性能なコンピューターで動作するアプリ。
- 組み込み系 – 家電、車などのマイコン/機械の中で動作するプログラム。
これらの用途に対し、使用される言語を分類していきます。
Webアプリ
- PHP
- Python
- Perl
- Ruby
- JavaScript
インターネットに繋がった端末のブラウザ上で動作するアプリ。FacebookやTwitterなどのSNS、Dropboxなどのファイル管理ソフトもこれらのプログラミング言語で作成されています。
Note
「JavaScript」は「Java」と混同されがちですが、全く異なるプログラミング言語です。
Androidアプリ
- Java
AndroidOS上で動作するアプリは基本的にJavaを使ってプログラミングされたものがほとんどです。Google社から公式に提供されるアプリ開発ツールやドキュメント類も、Javaを使うことを前提にされていることが理由です。
iPhone/iPad系アプリ
- Ojbective-C
- Swift
iOSで動作するアプリを作りたい場合は、この2種類の言語から選びます。以前はObjective-Cが公式の言語でしたが、2014年に新しくSwiftが発表され、こちらがメインのプログラミング言語となっています。これからiOS向け、MacOS向けアプリの制作を学ぼうと考えている方は、Swiftの学習をオススメします。
PCアプリ
- C言語
- C++
- C#
- Java
PCアプリはOSのシステムにアクセスする高度なプログラミングを必要とされる場合が多く、使用する言語も難易度の高いものが並びます。しかし、そこへ比較的に学習コストの低いJavaが割り込んできた背景があり、Javaを使ったアプリプログラミングも一般的になっています。
ゲーム
- C#
ゲーム制作においてはC#が最も多く使われています。Unityと呼ばれるゲーム制作フレームワーク(開発をスムーズに行うための仕組み)にも採用されたことが理由です。C#とはC言語をベースに改良されたプログラミング言語です。
業務用アプリ
- FORTRAN
- COBOL
業務における基幹システムで使われる言語であるため、歴史あるプログラミング言語が使われています。COBOLは浮動小数点の計算を正確に行うことができるため、そもそも採用されたという経緯があります。
組み込み系
- C言語
- C++
- Proseccing
機械を制御するプログラムのため扱いの難しい言語が並びます。Processingは「Arduino」でベースとなる言語として採用されています。
まとめ
以上、プログラミング言語についてと使用される主なケースをみてきました。
プログラミング言語はあくまでプログラミングを行うための「手段」であるため、目的によってどの言語を使うかをある程度決めることができます。