プログラミング言語の学習ステップ

Updated: / Reading time: 2 minutes

新しいプログラミング言語を学ぼうと考えた時の学習ステップを書きます。数年前に書いたメモだし色々書いてしまっているので、実際に学習するときは適当にスキップ、順序変更、などを行うといいと思います。また、新しい言語を学習した時は、このメモを改定するかもしれません。

環境の基本

まずは以下をざっと調べます。

  • 使用用途、特徴
  • Webサイト
  • エディション、利用ライセンス、価格
  • 動作環境
  • 入手、インストール方法
  • 実行方法
  • デバッグ方法
  • 成果物の配布方法
  • リファレンス
  • “Hello, world!”のサンプル

言語の基本

ざっと調べて使いたいなと思い、”Hello, world!”まで辿り着いたら、以下をサンプルを書きながら学びます。

  • 基本構文
  • 変数
  • 定数
  • 演算子
  • 制御構造
  • 関数
  • クラス、オブジェクト
  • 名前空間
  • 例外、エラー
  • 他ファイル、スクリプト、ライブラリの参照

言語の応用

ある程度使えるようになったら、周辺仕様を調べます。

  • テキスト処理
    • 文字列操作
    • 正規表現
  • 日付の操作
  • ファイルシステム操作
  • 外部リソース(設定ファイル)
  • データベース操作
  • ネットワーク操作
    • HTTP通信
    • (メール操作)
  • APIリファレンスの書き方
  • 国際化
    • 多言語化
    • 数値、日時の表記法
    • 開発環境
  • 総合開発環境
    • ソースコードの整形
    • コーディング規約の確認
    • 良くない実装の確認
    • リファクタリング
  • テスト
    • ユニット・テストの方法
    • カバレッジの取得方法
    • ストレス・テストの方法
  • スタンドアロン・アプリケーションの開発
    • GUI
  • Webアプリケーションの開発
    • Webアプリ実行環境
    • Webフレームワーク
    • Web APIの開発
    • ファイル・アップロード
    • クライアント-Webサイト間通信
    • データのCRUDを行う管理画面の自動生成
    • Webアプリレイヤーのスケール
  • ビルド・システム
  • 主要なライブラリ、フレームワーク
  • 推奨するファイル構成
  • バッチ処理
  • メモリ管理
  • 処理系バージョンごとの違い