/* Page prose (ja) */
"MentalModel" = "# メンタルモデルと、それを支える2つの時代\n\n**並行処理とは、そのままでは（待機したり、プロセッサを占有したりして）ブロックしてしまう作業が、ほかのすべてをフリーズさせないように、プログラムを構造化することです。**\n\nこの文を心に留めておきましょう。この本に出てくるすべてのツール（キュー、operations、await、actor）は、それを実現するためのそれぞれ異なる方法にすぎません。\n\nSwift はその仕事のために2つのツールキットを用意しており、その両方に触れていきます。\n\n* **クラシックモデル**: Grand Central Dispatch (GCD) と\n  Operations。  \n  これは C 時代の、クロージャベースの仕組みで、10年以上にわたって Apple のプラットフォームを支えてきました。いまでもあらゆるコードベースで目にしますし、何も隠さずに生のアイデア（スレッド、キュー、競合）を教えてくれます。\n* **モダンモデル**: async/await、構造化された並行処理、そして\n  actor。Swift 5.5 で導入されました。  \n  安全性を言語そのものに組み込み、上から下へ読むふつうのコードのように読めます。\n\nクラシックモデルを先に学ぶのは、懐古趣味からではありません。モダンモデルは、古いモデルの具体的な痛みへの*答え*として設計されました。まずその痛みを自分自身で感じておけば、新しいツールは魔法というより救いのように感じられます。最終章では、両者を並べて見比べます。\n\n> 新しいコードでは、ほとんどの場合モダンモデルを選ぶことになるでしょう。それでも、既存のアプリや、Apple 自身の API、そして*`await` が内部で実際に何をしているのか*を理解する必要があるときには、やはり GCD に出会います。\n\n[前へ](@previous)  |  2 / 6 ページ  |  [次へ: クラシックモデルの実行](@next)";
