13章まとめ:新しい始まり?
会社の起源がなんであれ、すべての会社はデジタル企業になりつつあります。この変化に着いて行くためには、モバイルアプリケーション、IoTデバイス、あるいは自動運転や自律システムから使われることになる、APIやサービスを提供する必要があります。このようなシステムの重要性が増すと、オンラインシステムには冗長性を持たせ、耐障害性があり、高可用性があることが求められます。また同時に、ビジネス上の必要性によって、開発や新しいソフトウェアの展開、既存のアプリケーションの改善、新しいユーザインタフェイスやAPIの試みに迅速性が求められます。これらの必要性が同時に生まれると、作られるべき分散システムの数は劇的に増えることになります。
分散システムの構築というタスクは、今でも非常に難しいものです。こういったシステムの開発、更新、運用の総コストは、非常に高くつきます。同様に、このようなアプリケーションを構築できる能力とスキルを持った人の数は、増大する需要に対して少なすぎます。
歴史的に見て、このような状況がソフトウェア開発と技術の世界に発生した時は、ソフトウェア開発を高速で、簡単で、信頼性が高いものにするために、ソフトウェア開発の新しい抽象層とパターンが生まれてきました。この起こりが、最初のコンパイラとプログラミング言語の発達です。その後、オブジェクト指向プログラミング言語とマネージドコード†1の進歩が起きました。それぞれのタイミングでは、技術的な進歩によって、専門家の知識や実践法が、広く実務家に利用されるアルゴリズムやパターンへと抽出されて具体化されました。確立されたパターンと組み合わさった技術的進歩は、ソフトウェア開発のプロセスを民主化し、新しいプラットフォーム上でアプリケーションを構築する開発者の幅を広げました。これによって、より多くのアプリケーションが開発され、さらにはアプリケーションに多様性が生まれ、開発者のスキルに対するマーケットも広がりました。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access