命令型プログラミング言語とはプログラミングパラダイムにおける種別において最もポピュラーなパラダイムの一種です。Java、Ruby、Pythonなど他にも数多くの有名プログラミング言語が命令型に属しております。命令型プログラミング言語という言葉を聞いたことはあっても内容についてよく知らないという方は多いのではないでしょうか。この記事では命令型プログラミング言語について初心者でもわかる基礎知識、代表的な種類などを簡単に解説していきます。
命令型プログラミング言語とは計算をプログラム状態を変化させる記述文で実行するプログラミング言語におけるパラダイムの一種です。パラダイムの中でも最も一般的なものであり宣言型プログラミング言語と対照的な存在となっております。命令型プログラミング言語は『手続き型プログラミング言語』と同義として扱われます。特徴として「構造化プログラム」「性能のチューニングが実施しやすい」などが挙げられます。代表的な言語としてJava、Ruby、Pythonなどが挙げられますが他にも多くの有名プログラミング言語が命令型に属しております。
命令型プログラミング言語と宣言型プログラミング言語の違いについて簡単に解説します。命令型プログラミング言語は「コンパイラへ段階的に指示を出す」のに対して、宣言型プログラミング言語は「段階を指示せず、論理で管理する」ものです。これが互いに対となる由縁の根本となります。その他の要素で比較した表は以下をご覧ください。
手続き型プログラミング言語 | 宣言型プログラミング言語 | |
学習コスト | ◎ | △ |
コードが読みやすい | ◎ | △ |
保守性 | △ | ◎ |
再利用 | △ | ◎ |
代表的な言語 | Java、Ruby | Scala、SQL |
手続き型プログラミング言語とはコンピューターがプログラムを実行すべき命令や手続きを順に従って記述していくことで構成されるプログラミング言語の種類です。手続き型プログラミング言語は処理を順番通りに構成していくことから「コードが記述しやすい」ということや「学習コストが低い」という特徴があります。
手続き型プログラミング言語の基礎知識や代表的な種類を解説している記事はこちら>>
代表的な命令型プログラミング言語を見ていきましょう。
JavaとはOracle社が開発・提供するオブジェクト指向のプログラミング言語です。1995年にサン・マイクロシステムズ(後にOracle社が買収)のジェームス・ゴブリン氏によって開発されリリースとなりました。プログラミング言語の発展に大きな影響をもたらしたC言語を元に開発されたことでも有名です。当時、最も人気を集めていたC言語はオブジェクト指向ではありませんでした。Javaの登場によってオブジェクト指向が主流の時代が訪れたと言われております。
Javaのキャッチコピーは「Write once, run anywhere」で直訳すると「一度書けば、どこでも実行できる」という意味があります。このことからも分かるようにJavaの特徴は『オブジェクト指向の先駆者』で『どこでも動く』ということらが挙げられます。世界中で最もポピュラーで多くのWebアプリケーションで採用されていることで知られております。
Rubyとはまつもとゆきひろ氏によって1995年に開発されたオープンソースでオブジェクト指向のプログラミング言語です。日本人プログラマーのよって開発された言語として初めて国際電気標準会議(IEC)で国際規格に認証されました。2018年には米国において最も稼げる言語はRubyと言われるほど国内外問わず世界的にも注目を集めております。
Rubyというその名称には『Perl(パール)に続ぐ』という意味が込められており6月宝石であるPerlの次月(7月)宝石のRuby(ルビー)という名称を採用することになりました。Rubyの特徴は記述量が少なく、自由度が高い、そして何より『書くことが楽しい』と多くのプログラマーの方が口を揃えております。RubyはWebアプリケーションの開発に最も向いており代表的な開発事例としてGunosy、食べログ、価格.comなどが挙げられます。
Pythonとはグイド・ヴァンロッサム氏によって1991年に開発された汎用的に使用されるプログラミング言語です。サーバサイド言語としてWebアプリケーションやデスクトップアプリケーションの開発に使われるだけでなく、組み込み開発、自動処理、統計・解析、機械学習など幅広い領域に対応出来るプログラミング言語として親しまれております。
Pythonはプログラミング言語の中でも高い人気を集めており、GitHubの2019年調べによるとJavaを抜き2番目に人気のある言語となっております。特徴として『コードがシンプルで覚えやすい』『少ない記述で多くの処理が可能』などが挙げられます。Pythonは人工知能(AI)やビッグデータなどトレンドの分野にて重宝されております。このように幅広い分野にて扱われる汎用的なプログラミング言語として高い人気を集めております。
C#とはマイクロソフト社のアンダース・ヘルスバーグ氏が設計したプログラミング言語です。C#という言語はマイクロソフト社が開発した『.NET Framework(ドットネットフレームワーク)』と共に2000年に誕生しました。
C#はマルチパラダイムと呼ばれる複数のスタイルから構成されており中でも、オブジェクト指向が主のスタイルです。言語名にも含まれている通り、C系の言語としてCやC++の影響を受けております。尚、設計者のアンダース・ヘルスバーグ氏が以前設計に携わったDelphiの影響も少なからずあるようです。C#の特徴として『マルチパラダイムでオブジェクト指向が主』、『.NET Framework』、『Windowsアプリの開発に向いている』などが挙げられます。C#はマイクロソフト社が開発・提供していることもありWindowsアプリケーションの開発に非常に向いております。
命令型プログラミング言語について初心者でもわかる基礎知識、代表的な種類について簡単に解説させて頂きました。命令型プログラミング言語を一言で表すと『計算をプログラム状態を変化させる記述文で実行するプログラミング言語』です。特徴として「構造化プログラム」「性能のチューニングが実施しやすい」などが挙げられます。有名なプログラミング言語のほとんどが採用しているパラダイムの一種となるのでこちらに記載されている最低限の内容は理解をしておくようにしましょう。