created: 2025/07/19,
modified: 2025/07/26
プログラミングを始めようと思ったとき、まず悩むのが「どの言語を選ぶべきか」。実はプログラミング言語は数百種類もあり、それぞれに得意分野や歴史、流行の波があります。 プログラミング言語を体系的に分類しつつ、時代ごとの流行や特徴を時系列で整理して紹介します。 はじめて触れる方も、ある程度経験のある方も、「いまの定番」や「これから伸びる言語」が見えてくるはずです。
プログラミング言語とひとことで言っても、その設計思想や使われる目的は実にさまざまです。
「どんな考え方(パラダイム)に基づいているか」や「どんな用途に向いているか」といった体系的な視点から分類してみます。どの言語も万能ではなく、目的や開発スタイルによって向き・不向きがあります。
| カテゴリ | 主な言語 | 特徴・用途例 |
|---|---|---|
| 手続き型 | C, Pascal, Fortran | 処理を順に書く。OSや組み込みなど。 |
| オブジェクト指向 | Java, C++, Ruby, Python | モノ(オブジェクト)を中心に設計。GUIや業務アプリに強い。 |
| 関数型 | Haskell, OCaml, Elixir, Lisp | 関数が基本単位。再帰や副作用なしを好む。 |
| スクリプト型 | JavaScript, Python, Ruby, PHP | 簡潔で柔軟。Web開発や自動化に強い。 |
| 宣言型(DSL含む) | SQL, HTML, CSS, Prolog | 「何をしたいか」を書く。Webやデータ処理向き。 |
| システム系 | C, Rust, Zig | OSやドライバなど、低レイヤ向け。 |
| 並列・分散志向 | Erlang, Go, Scala | 高い並列性や分散処理が得意。 |
| AI/統計向け | Python, R, Julia | 機械学習・数値計算・統計解析に最適。 |
プログラミング言語の世界にも、時代ごとの「流行」があります。
コンピュータ黎明期から現在に至るまで、特定の言語が注目された背景には、技術の進化や社会のニーズの変化が密接に関わっています。
年代ごとにどんな言語が人気だったのか、そしてその背景にどんな技術トレンドがあったのかをざっくり振り返ります。流行の変遷をたどることで、今なぜ特定の言語が使われているのか、未来に向けて何を学ぶべきかのヒントが見えてきます。
| 年代 | 流行言語 | 特徴・背景 |
|---|---|---|
| 1950s | Assembly, Fortran | 科学計算用、最初期の高級言語。 |
| 1960s | COBOL, Lisp | ビジネス用途とAI研究に使われた。 |
| 1970s | C, Pascal | UNIXや教育向けで普及。Cは後の多くの言語のベースに。 |
| 1980s | C++, Perl, Smalltalk | オブジェクト指向とスクリプト言語の始まり。 |
| 1990s | Java, JavaScript, PHP, Ruby | Web黎明期。Javaは企業、JSとPHPはWebサイト用。Rubyは日本発。 |
| 2000s | Python, C#, Scala, R | Pythonが再評価。統計や関数型も人気に。 |
| 2010s | Swift, Kotlin, Go, Rust, TypeScript | モバイル、型安全、非同期対応の言語が登場。 |
| 2020s | Python, Rust, TypeScript, Julia | AI・Web・安全性が重視される傾向。 |
プログラミング言語は時代とともに進化し、今では用途に応じてさまざまな言語が使い分けられています。Web開発、AI、モバイルアプリ、クラウドインフラなど、それぞれの目的に最適な言語を知ることで、自分の目指す方向に合った言語選びができるようになります。
「いま何が使われているのか?」をざっくり押さえておきましょう。
| 分野 | よく使われる言語 |
|---|---|
| Web開発 | JavaScript, TypeScript, Python, Ruby, PHP |
| モバイル | Swift (iOS), Kotlin (Android), Flutter (Dart) |
| データサイエンス | Python, R, Julia |
| システム開発 | Rust, C, C++ |
| ゲーム開発 | C++, C#, Lua |
| AI/機械学習 | Python, Julia, C++ |
| クラウド/インフラ | Go, Rust, Bash |
| 目的・分野 | おすすめ言語 | 備考 |
|---|---|---|
| プログラミング入門 | Python | 文法が簡潔で覚えやすい |
| Webサイト制作 | HTML / CSS / JavaScript | フロントエンドの基本 |
| Webアプリ開発 | JavaScript(+TypeScript) / Python / Ruby | バックエンドも含めた全体が学べる |
| AI・データ分析 | Python / R / Julia | ライブラリが豊富(NumPy, pandas, etc.) |
| スマホアプリ開発 | Swift(iOS) / Kotlin(Android) | モバイル向け公式言語 |
| ゲーム開発 | C++ / C#(Unity) / Lua | パフォーマンスと環境が重要 |
| IoT / 組み込み | C / Rust | メモリ制御や低レイヤ処理が必要 |
| 高性能 / 安全性 | Rust / Go | モダンで高速、安全性が高い |
| バックエンド / クラウド | Go / Node.js / Python | WebAPI・マイクロサービスなどに最適 |
「C言語」は今でも一部で根強い人気と重要性があります。TIOBEランキング(2025年予想でも)では 2位前後をキープ中で、「実務で使う」というより「基盤を支えている」言語
使われている分野
ただし...
TIOBEとは?
TIOBE Index(ティオビー・インデックス)は、オランダのTIOBE Software社が毎月発表するプログラミング言語の「人気度」ランキングです。学術的な性能ではなく、「どれだけ検索されているか」が指標
Google、Bing、Yahoo、Amazon、Wikipedia、YouTube などの検索エンジン上での言語名の出現数をもとに計算されています
プログラミング言語は、それぞれに得意分野や歴史的な背景があり、用途や時代のニーズに応じて進化し続けています。本記事では、言語の体系的な分類から、時代ごとの流行、そして2020年代に実用性の高い言語までを幅広く紹介してきました。
「どの言語を学べばいいか迷っていた」という方も、目的に応じた選択肢が少しは見えてきたのではないでしょうか。
大切なのは、「正解の言語」を探すことではなく、自分のやりたいことに合った言語を選び、実際に手を動かしてみることです。興味を持った言語があれば、まずは簡単なチュートリアルやコードを書いてみるところから始めてみましょう。
最初の一歩が、きっと次の世界を広げてくれるはずです。