1.

プログラミング言語の主要分類と使い分け|Web / モバイル / システム / データ分析

編集
この記事の要点
  • プログラミング言語の主要分類と代表的な使い分け
  • コンパイル言語: C / C++ / Java / Go / Rust — 実行速度・型安全
  • スクリプト言語 (インタプリタ): Python / Ruby / PHP / JavaScript — 開発速度・柔軟性
  • 用途別: Web (PHP/JS/Python/Ruby/Java) / モバイル (Swift/Kotlin) / システム (C/Rust/Go) / データ (Python/R)
  • 近年は TypeScript / Rust / Go の採用が加速
  • IT 総合 Wiki では各言語の入門・文法・エラー対処を体系化

プログラミング言語の分類

① コンパイル言語(高速・型安全)

言語用途特徴
COS / 組み込み / ドライバ低レベル、ポインタ、メモリ手動管理
C++ゲーム / 高速処理 / 競技プログラミングC + オブジェクト指向、テンプレート
Java業務システム / Android / 大規模 WebJVM 上で動作、ポータブル、強い型システム
KotlinAndroid (Java の後継) / バックエンドJVM、Null 安全、簡潔な文法
Go (Golang)サーバ / マイクロサービス / CLI並行処理(goroutine)、シンプル、Docker 等の基盤言語
Rustシステム / WebAssembly / 高信頼性所有権モデルで GC 不要かつ安全、C++ の後継候補
SwiftiOS / macOS / watchOS / iPadOSApple 公式、ARC によるメモリ管理
C#Windows / Unity / Web (.NET) / モバイル (MAUI).NET エコシステム、表現力豊か

② スクリプト言語(インタプリタ・動的型)

言語用途特徴
PythonAI / データ分析 / Web / 自動化豊富なライブラリ、可読性、AI 界の事実上の標準
RubyWeb (Rails) / スクリプト表現の自由度、Rails の生産性
PHPWeb (WordPress / Laravel)Web 特化、レンタルサーバ普及
JavaScriptWeb (フロント / Node.js / Deno)ブラウザ唯一の言語、生態系最大
TypeScriptJS の型付き上位互換大規模 JS プロジェクトの標準
Perlテキスト処理 / レガシー Web正規表現が強力、CGI 時代の主役
R統計 / データ分析 / 学術統計関数充実、グラフ描画
Luaゲームスクリプト / 組み込み軽量、World of Warcraft / Roblox 採用

③ 関数型言語

言語用途特徴
Haskell研究 / 厳密な型システム純粋関数型、遅延評価
Scala大規模 Web / データ処理 (Spark)JVM、オブジェクト指向 + 関数型
F#.NET 関数型C# と相互運用
Elixir耐障害サーバ / WhatsApp 系Erlang VM、並行プロセス指向
ClojureJVM 上の Lisp不変データ構造、並行処理

用途別の選び方

分野主要言語
Web フロントエンドJavaScript / TypeScript(React / Vue / Angular)
Web バックエンドJava / Python / PHP / Ruby / Go / Node.js / C# / Kotlin
モバイル iOSSwift(または Flutter / React Native)
モバイル AndroidKotlin(または Java / Flutter)
クロスプラットフォームFlutter (Dart) / React Native / .NET MAUI / Xamarin
システムプログラミングC / C++ / Rust / Go
ゲームC++ (Unreal) / C# (Unity) / GDScript (Godot)
機械学習 / AIPython(PyTorch / TensorFlow / scikit-learn)
データ分析・統計Python (pandas / NumPy) / R / SQL
組み込みC / C++ / Rust / Arduino C++
シェル / 自動化Bash / PowerShell / Python
ブロックチェーンSolidity (Ethereum) / Rust (Solana) / Go (Cosmos)
科学計算Python / R / Julia / Fortran (歴史的)

言語選定の判断軸

選び方
速度(実行)Rust ≈ C / C++ > Go > Java / C# > Python / Ruby
開発速度Python / Ruby / Node.js > Go > Java / C# > Rust / C++
学習コストPython ≪ JS / PHP < Java / C# < Go < Rust ≪ Haskell
求人数(日本)Java > PHP > JS/TS > Python > C# > Ruby > Go > Kotlin > Rust
給与水準Rust / Go / Scala / Kotlin > TS / Python / Java > PHP
コミュニティJS / Python が最大、Rust / Go 急成長

2024 年以降のトレンド

  • TypeScript の天下: JS プロジェクトはほぼすべて TS 化、フロント・バックの共通言語
  • Rust の存在感: WebAssembly / システム / Linux カーネル(Rust for Linux)
  • Go のサーバ用途定着: Kubernetes / Docker / Terraform / Hashicorp 製品で標準
  • Python の AI 独占: PyTorch / LangChain / Hugging Face 等の生態系
  • Kotlin の Android + バックエンド両立: Spring Boot とも相性が良い
  • Swift の WebAssembly / サーバサイド: Apple 以外でも採用例が増加
  • Mojo: Python 互換 + コンパイル言語級の速度を目指す新言語

言語学習のおすすめ順

  1. 初学者: Python — 文法が単純、ライブラリ豊富、AI/Web 両方
  2. Web を作りたい: HTML/CSS → JavaScript → TypeScript → Vue/React
  3. 業務システム志望: Java または Python + SQL
  4. 低レベル理解したい: C → Rust または C++
  5. 関数型に挑戦: Haskell または Elixir

関連

  • 各言語の入門記事・文法解説・エラー対処を IT 総合 Wiki で個別に解説
  • フレームワークはその上の選択肢(Laravel / Rails / Django / Spring / Express / Vue)
  • SQL は全エンジニア必須の補助言語
  • Git / Linux もどの言語でも必須スキル
編集
Post Share
子ページ
  1. Java
  2. PHP
  3. Python
  4. C#
  5. C++
  6. Ruby
  7. Go
  8. HTML
  9. CSS
  10. JavaScript
  11. TypeScript
  12. VBA
  13. Google Apps Script
  14. Julia
  15. Swift
  16. オブジェクト指向言語共通
  17. Gen
同階層のページ
  1. プログラミング言語
  2. データベース
  3. ネットワーク
  4. OS
  5. ソフトウェア
  6. ハードウェア
  7. ファームウェア
  8. API
  9. セキュリティ
  10. Webサービス
  11. AI 人工知能
  12. 技術・設計・規格
  13. SEO
  14. 開発工程
  15. エンジニア
  16. 電子工作
  17. その他用語一覧
  18. クラウド・インフラ