非同期処理のためにスレッドを無限に増やす時代は過ぎ去りました。OSのスケジューリングに依存するスレッドとは異なり、プログラム内部で実行フローを制御し、リソースを効率的に利用するコルーチンが、なぜ現代プログラミングの必須パラダイムになったのかを探ります。
オブジェクト指向とは異なるパラダイムである関数型プログラミングは、単に文法の違いを超え、データと関数に対する視点の転換を要求します。関数を変数のように扱い、副作用を最小限に抑えるこの哲学が、現代の開発環境でなぜ再び注目されているのか、その核心概念を探ります。
継承はオブジェクト指向の華ですが、誤って使用すると、基底クラスの変更がサブクラスを破壊する「脆弱な基底クラス」問題を引き起こします。現代の言語であるSwiftが、この問題を文法的にどのように強制して解決しているのかを探ります。
コードを書いていると、変数やメソッドを1つだけ定義/作成し、あらゆる場所で共有したい場合があります。これには2つの解決策があります。1つ目は静的変数/メソッド、2つ目は今回学ぶシングルトン「オブジェクト」です。
頻繁に変化する変数の状態をどのように追跡するのでしょうか?単に手動で確認するだけでなく、オブジェクト間の依存関係を最小限に抑えながら、状態の変化をリアルタイムでやり取りする効率的なメカニズムを考察します。