プログラミング言語を学習している方の中には、いったい何から手を付ければよいのか分からなくなっている方も多いのではないでしょうか?
それもそのはず。プログラミング言語は数多く存在し、それぞれ特徴が全く異なります。今回はそんな方のためにプログラミング言語を用途別にご紹介します!
目次
プログラミング言語とは?
プログラミングは機械に命令を与えるための言語
プログラミング言語は、人間が機械に命令を与えるための言語です。例えばパソコンを起動し、アプリケーションをクリックすることでそのアプリケーションが起動しますが、これも全てプログラミングによって実現できているのです。
プログラミング技術は日に日に進化し、元々は専門家のみが扱うだけだったコンピューターは、今や1人1台持ち、知識がなくても扱えるようになっています。
またIT化の促進により、プログラマーやエンジニアといったITの専門家の数も激増しました。プログラマーやエンジニアは日々プログラミング言語を使って仕事をしていますが、実はこれは機械に命令を与えているのです。
機械は人間のような応用力がない
プログラミング言語は、機械に命令を与えるために存在するということは理解できたと思いますが、機械は人間のように間違いを正すといった応用力がありません。
そのためプログラミングは一字一句の間違いも許されないのです。
プログラミングは非常に厄介で手間がかかります。例えば数字に名前を付けて扱う場合は、それが数字であることを明記しなければなりません。
またプログラミング言語には種類があり、それぞれ目的によって使い分けられます。今話題のPythonが良い例でしょう。
Pythonはかなり前から存在する言語ですが、ここ最近AIや機械学習への対応力の高さから、注目を浴びています。
主要なプログラミング言語一覧
用途別のプログラミング言語を紹介する前に、今現在主流の言語を紹介します。
言語名(五十音順) | 説明 |
---|---|
Assembly | アセンブリ言語。人間が最低限理解できる、機械語に近い言語のこと。 |
Bash/Shell/PowerShell | 人間→シェル→コンピューターで命令を与える際に、シェルに支持を与えるための言語。 |
C | 汎用性が高く、処理速度の高い言語。C#やC++の元になった。 |
C# | 独立性、再利用性、拡張性を実現するオブジェクト指向言語で、Windowsとの相性が良い。さらにGUI(ユーザーが操作する部分)を簡単に制作できる。 |
C++ | C#と同じオブジェクト指向言語。処理速度が極端に速く、Webアプリケーションの開発に多く用いられる。 |
Dart | Googleが開発した組み込み型言語で、JavaScriptの代替を目的に作られた。 |
Go | Googleが開発した言語で、高速な処理速度を実現しながらシンプルな記述が可能。分かりやすさから初心者にも人気。 |
Haskell | (ハスケル)数学の数式がそのまま使用できる言語。値の定義を書く。 |
HTML/CSS | ※HTMLはマークアップ言語でCSSはスタイルシートの略 Webページの作成には必須だが、正確にはプログラミング言語ではない。 |
Java | 安定の人気を誇る言語で、ありとあらゆる場面で用いられる。高速な処理が可能なオブジェクト指向言語。 |
JavaScript | WEBページで複雑な処理や動的な処理を実行するための言語。HTML内にscriptタグを用いて書く。 |
Julia | 人間の言語に近い高水準言語で、高度な科学計算や数値解析も行える。 |
Kotlin | Android製品のソフトウェア開発に特化した言語。Java言語をより簡潔化した言語で、処理速度が速い。 |
Objective-C | C言語を元に作られた言語で、C言語にはないオブジェクト指向を実現している。 |
Perl | (パール)テキスト処理に特化した言語で他のスクリプト言語(JavaScript、Python、Ruby、PHPなど)に比べて処理速度が速い。 |
PHP | Webページを作成するために用いられ、主にサーバサイドを作成するスクリプト言語。 |
Python | 記述がシンプルかつ簡単で、AIや機械学習に特化している。そのため最近では注目度が上がっている。 |
R | 統計解析に特化したプログラミング言語。AIが注目されるようになり、多くの情報を解析するために用いられる。 |
Ruby | 日本人である”まつもとひろゆき氏”が開発した言語で、シンプルな記述が可能なことから人気が高まる。 |
Rust | 高速な処理を実現しながら、安全性も保持する比較的新しい言語。 |
Scala | オブジェクト指向の特徴を持ち、関数を組み合わせてプログラムを作成する言語。 |
SQL | データベース操作のための言語。 |
Swift | Appleが開発し、Apple製品のソフトウェア開発に特化した言語。Macでのみプログラミング可能。 |
TypeScript | Microsoftが開発した言語で、JavaScriptを拡張子、型の定義が可能になった。 |
VBA | Microsoft Officeに含まれ、ユーザーが手軽にプログラムを記述でき、処理の自動化を実現できる。 |
用途別プログラミング言語
Webサイトの作成
私たちが最もよく使うのが、インターネット上に公開されているWebサイトではないでしょうか。企業によってサイトの仕様は様々ですが、これらは全てHTML、CSS及びJsvaScriptで作られています。
まずHTMLで骨組みを作成し、CSSで肉付けを行っていきます。CSSが完成すると装飾され、見やすくなったWebサイトが作成されます。
さらに動的なページを作成したり、条件の指定を行うために、プログラミング言語であるJavaScriptを入れ込んでいます。
Webアプリケーションの開発
Webアプリケーションも良く使用されるIT技術でしょう。代表例として動画共有サイトYouTubeや検索エンジンのGoogle、通販サイトAmazonなどがあります。
アプリケーションとしてしっかり動作するためには、ある程度の処理速度が重視されてきます。
スマートフォンアプリケーションの開発
パソコン上で動作するWebアプリケーションに対し、スマートフォンで動作するのがスマートフォンアプリケーションです。
OSごと実行環境が異なるため、Androidのアプリ開発はKotlin、iOSのアプリ開発はSwiftで開発されます。
ゲーム開発
ゲームは高度な描写がカギとなるため、処理速度が速い言語が用いられます。有名なゲーム「Minecraft:マインクラフト」はJavaを用いて開発されました。
AIや機械学習
今注目されているAIや機械学習ですが、それによって言語の中で注目を浴びているのがPythonです。これに併せて、数学的な処理が得意な言語を用いて、高度な解析や分析が実現されています。
OSの開発
OS(:オペレーティングシステム)とは、デバイスのハードウェアとソフトウェアの両方を管理するシステムのことを言います。
元々は処理速度の速いアセンブラが使用されていましたが、途中から、より効率的に開発が行えるC言語が用いられるようになりました。
組み込み型システムの開発
組み込み型とは、既にある機械に効率化などを行うシステムを組み込んだものを指します。例えば全自動洗濯機や冷蔵庫の温度管理システムなどは、全てプログラムされたものなのです。
これにより私たちの私生活がより豊かで、便利なモノになっていると言えるでしょう。組み込み型はこれといって決まった言語がなく、企業によって使用される言語は大きく異なります。
まとめ
今回は主なプログラミング言語と、用途ごとの言語について紹介しました。
プログラミング学習を始めたばかりだと、なかなか言語ごとの違いが意識できないかもしれませんが、プログラミング言語はそれぞれ目的に沿って開発、改善されていくのです。
具体的にこれを作ってみたい!と思った場合は、まず先に「作りたいシステムは一般的にどの言語で作られているのか」から学ぶことをお勧めします。
参考文献:
プログラミング言語の種類とは?概要や用途ごとの利用方法、言語の選び方を解説
プログラミング言語の12種類とその用途・特徴とか歴史
Bash – 「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典
C言語とは?特徴やできることをわかりやすく解説
C#ってどんな言語?|その特徴と学習メリット
C++とは?今さら聞けない基礎から応用までを解説
Dart – Wikipedia
Go言語とはどんなプログラミング言語?特徴やできることを解説
Haskellとは
Java
JavaScript とは
Julia – Wikipedia
Kotlin – Wikipedia
Objective-C – Wikipedia
専門知識いらず!スクリプト言語とは?言語の種類やオススメを解説
知っているようで知らない!Perlとは?
R言語の特徴・できること・メリット、Pythonとの違いから年収・求人まで徹底解説
Rubyとは
Rustとは?|言語の特徴や学習するメリット、インストール方法まで解説!
人気のプログラミング言語!Scalaとは【初心者向け】
TypeScriptの概要
VBAとは?マクロとは?初心者向けに基礎の基礎をわかりやすく解説