0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

プログラマーが体系的に学ぶと良い項目リスト

0
Posted at

2025年までは、以下の項目を少しずつ学習していくのが普通でした。

基礎コンピュータサイエンス

  • 計算機科学の基礎(ビット・バイト、2進数・16進数、ブーリアン代数)
  • データ構造(配列、リスト、スタック、キュー、木、グラフ、ハッシュテーブルなど)
  • アルゴリズム(探索、ソート、再帰、動的計画法、グラフアルゴリズムなど)
  • 計算量(時間計算量・空間計算量、オーダー記法)
  • オートマトン・形式言語の基礎(正規表現など)

プログラミング言語とパラダイム

  • 1つ以上の静的型付け言語(C/C++/Java/Go/TypeScript など)
  • 1つ以上の動的型付け言語(Python/Ruby/JavaScript など)
  • オブジェクト指向(クラス、継承、ポリモーフィズム、カプセル化、SOLID 原則)
  • 関数型の考え方(イミュータビリティ、高階関数、map/reduce、ラムダ式)
  • 非同期・並行処理(スレッド、async/await、ロック、デッドロックの概念)

設計・アーキテクチャ

  • デザインパターン(GoF パターン、DI、Repository、Factory、Strategy など)
  • アーキテクチャパターン(レイヤード、クリーンアーキテクチャ、DDD の基本用語)
  • モジュール設計・責務分割(関心の分離、凝集度と結合度)
  • API 設計(REST、GraphQL の基礎、HTTP ステータスコード、エラーハンドリング)
  • エラーハンドリングと例外設計、ロギング戦略

ソフトウェア開発プロセス

  • Git などのバージョン管理(ブランチ戦略、Pull Request、コードレビュー)
  • テスト(ユニットテスト、統合テスト、テストダブル、TDD の考え方)
  • CI/CD(自動テスト、ビルド、デプロイパイプラインの概念)
  • アジャイル開発(スクラム/カンバン、ユーザーストーリー、バックログ)
  • 要件定義と仕様化(ユースケース、ユーザーストーリー、非機能要件)

Web・ネットワーク系(多くのプログラマーに有用)

  • HTTP/HTTPS の仕組み、Cookie・セッション、REST の基礎
  • Web フロントエンド(HTML/CSS、JavaScript、SPA の概念、基本的なフレームワーク)
  • Web バックエンド(サーバサイド言語、フレームワーク、ルーティング、認証)
  • ネットワークの基礎(TCP/IP、DNS、ポート、ファイアウォールの概念)
  • セキュリティ基礎(XSS、CSRF、SQL インジェクション、HTTPS/TLS)

データベース・データ処理

  • リレーショナルデータベース(SQL、正規化、トランザクション、インデックス)
  • NoSQL の種類と用途(Key-Value、ドキュメント、カラム指向など)
  • ORマッパー(ORM)の使い方と落とし穴
  • キャッシュ(メモリキャッシュ、Redis などの基本概念)
  • データモデリング・スキーマ設計の基本

OS・インフラ・DevOps

  • OS の基礎(プロセス、スレッド、メモリ管理、ファイルシステム)
  • シェル・コマンドライン操作(Unix 系の基本コマンド、シェルスクリプト)
  • コンテナと仮想化(Docker の概念、イメージとコンテナ、簡単な Compose)
  • クラウドの基礎(AWS/GCP/Azure の代表的なサービス概念)
  • 監視と運用(メトリクス、ログ収集、アラートの考え方)

品質・ソフトスキル

  • 可読性の高いコードスタイル、命名、リファクタリング
  • パフォーマンスとプロファイリングの基礎(ボトルネックの見つけ方)
  • セキュアコーディングの基本指針
  • ドキュメンテーション(設計書、README、API ドキュメントの書き方)
  • コミュニケーション(コードレビュー、仕様調整、説明責任)
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?