Ruby:開発者の幸福のために作られた言語
Ruby は動的でオブジェクト指向の言語であり、表現力豊かな構文と驚きの最小化の原則で有名です。Ruby on Rails を通じて特に有名な、世界中の本番システムを支えており、Web API、スクリプティング、ツール開発の第一選択肢として今なお活躍しています。このトラックは言語のコア データ型からメタプログラミング、並行処理、パフォーマンスまでをカバーし、Rails、Sinatra、スタンドアロン Ruby アプリケーションのいずれを目指す場合でも、確かな基礎を身につけることができます。
学習内容
Ruby の基本要素となる文字列、シンボル、ハッシュ、数値、制御フロー から始まり、メソッド、ブロック、範囲、そして Enumerable モジュール全体へと進みます。中級トピックではオブジェクト指向設計、モジュールとミックスイン、正規表現、パターンマッチング、例外処理、Bundler を使った gem の操作をカバーします。ファイル I/O、JSON、CSV、YAML フォーマットの扱い方も学び、さらに proc、lambda、クロージャ、カスタム enumerable へと進みます。実践的なセクションでは TDD によるテスト、独自の Ruby gem の構築、Sinatra と Rails(モデル、Active Record、コントローラ、ルーティング)の両方を使った Web 開発を紹介します。このトラックは メタプログラミング、並行処理、パフォーマンスプロファイリングで締めくくられます。
学習パス
全 29 のコース(A1~C1)があります。A1 と A2 のコースは構文とコア型を確立し、Ruby Strings and Text Manipulation、Ruby Conditionals and Case、Methods and Blocks を含みます。B1 のコースは言語を深掘りします。Object-Oriented Programming in Ruby、Ruby Pattern Matching、Working with Gems and Bundler です。B2 のコースは言語を実世界の成果に結びつけます:Testing and Test-Driven Development (TDD)、Ruby on Rails Basics、Building Your Own Ruby Gem、Ruby Web APIs with Sinatra。C1 レベルは Metaprogramming in Ruby、Ruby Concurrency、Ruby Performance and Profiling で完結します。
仕組み
各コースは短い実践的なレッスンに分かれており、組み込みコードエディタで完了でき、リアルタイムフィードバックが得られます。困ったときはいつでも AI チューターが利用でき、エラーを説明して次のステップを提案してくれます(解答を台無しにすることはありません)。自分のペースで進められ、いつでも任意のレッスンに戻ってレビューや実験を続けられます。