開発者の視点: クラウドは将来、新たなオペレーティングシステムとなる

開発者の視点: クラウドは将来、新たなオペレーティングシステムとなる

[51CTO.com クイック翻訳] 現在までに、コンピュータプログラミングの分野では、開発者が操作する抽象化のレベルが数倍に増加しました。コンピュータプログラミングにおける抽象化のレベルは再び高まると思います。

おそらく、アセンブリを記述して理解できる人材は世界に常に求められるでしょうが、大多数の開発者にとっては、日常業務でオペレーティング システムと対話するためにプログラミング言語によって提供されるシステム コールまたは API の使用方法を学ぶだけで十分です。これは彼らが操作できる最高レベルでもあります。 CPU が毎日どのような命令を処理するかを心配する必要はなく、メモリを手動で割り当てる必要さえありません。

[[251521]]

近い将来、開発者はプログラムがどの物理マシン上で実行されるかを考慮する必要がなくなります。

1. ユーザーはクラウドに慣れている

私たちはクラウドに移行しています。

もちろん、これは新しい考えではありません。しかし、「クラウドへの移行」という言葉が実際に何を意味するのか理解するまでにはしばらく時間がかかりました。

流行りの「クラウド」という言葉を使ったことをお許しください。なぜなら、クラウドは、ハードウェアに関する情報を隠すソフトウェアについて私が今まで聞いた中で最も適切な説明だからです。

おそらく消費者の観点からすると、クラウドは目新しいものではないようです。なぜなら、私たちはすでに、データの場所を気にすることなく、あらゆるデバイスからインターネット上のファイルやデータにアクセスすることに慣れているからです。

かなり以前から、人々はクラウドが実際にどこに展開されているかを気にしなくなっていました (ドイツ人は例外かもしれません。彼らは外国のクラウド サービス プロバイダーは制御不能だと考えています。著者はドイツ人ですが、これは自虐的な発言です)。私たちのソーシャルツールや仕事ツールは基本的にモバイルです。私たちが所有するノートパソコンや携帯電話は、手頃な価格の商品になりつつあります。あまり複雑な機能やハイエンドのハードウェアを提供する必要はなく、日常のソーシャル エンターテイメントのニーズを満たすためにクラウドとやり取りするためのウィンドウを提供するだけで済みます。ゲームのプレイなど、ハードウェア要件が依然として重要な場合もありますが、クラウド ゲームの登場により、ハイエンドのゲーミング PC は最終的には過去のものとなるでしょう。

ユーザーにとっては、クラウドを使用すると、ハードウェアに起因する問題を心配する必要がなくなります。これにより大きな利便性がもたらされるため、クラウドへの移行は自然なことです。人々はこれらのツールがどのように機能するかを気にしたり知りたいとは思っていないので、単に使いやすく、特定のタスクをスムーズに完了するのに役立つことを望んでいるだけです。ツールのメンテナンスは他の人に任せます。

2. 開発にはクラウドが必要

2.1.制御は負担である

ほとんどの人にとって、コンピューターを操作するのは負担です。

開発者はテクノロジーが大好きです。私たちはシステムとデータを完全に制御したいと考えています。本当に?私はそれを疑う。少なくとも私のような開発者のほとんどは、ビジネスを始めたり仕事をしたりする普通の人々です。新しい方法によって開発と管理の効率と収益性が向上する限り、私たちはそれを採用していきます。

システムとデータを完全に制御するのは手間と時間がかかるため、ほとんどの運用システムをクラウドで実行しています。当社は、Amazon、Google、Microsoft から仮想サーバーをレンタルし、静的リソースを CDN にプッシュします。私たちが考えられるますます多くの機能が、管理する必要なくサービスとして提供されるようになりました。データベース、検索エンジン、ファイアウォール、メッセージ キュー、ファイル ストレージ、負荷分散、Web サーバー、ビルド サーバー、テスト ランナー、レジストリ、キー管理、ユーザー認証など。基本的に、ソフトウェアの一般的なコンポーネントごとに、それを置き換えることができるサービスが存在します。

当社のカスタマイズされたビジネス ロジック、つまりさまざまな共通コンポーネントをどのように接続するかが、当社のソフトウェアを最高のものにできる唯一の要素です。

しかし、ビジネス ロジックをソフトウェアとして表現するために使用するプログラミング言語やランタイム ツールでは、依然として物理マシンを考慮する必要があります。私たちは、物理マシンに Windows と Linux をインストールしたり、仮想マシンを作成してそこにオペレーティング システムをインストールしたりするために一生懸命働き、一連の役に立たないネストされたオペレーティング システムでビジネス ロジックを実行します。

2.2.クラウドプラットフォームの重要性

過去を捨て、コントロールを放棄し、ビジネス ロジックを表現するのに適した効率的なプラットフォームを作成したらどうなるでしょうか?

より複雑な問題を解決したい場合は、より高いレベルの抽象化を備えた強固な基盤が必要です。より複雑なビジネス ドメインでは、ビジネス ロジックのみに集中する必要があります。したがって、抽象的な基盤を構築するレイヤーとビジネス ロジックを処理するレイヤーを分離する必要があります。

抽象的な基礎は複雑な問題を解決する上で成功の鍵となります。なぜなら、その問題に取り組む優秀な人材が常に必要となるからです。しかし、これはほとんどの開発者が解決しようとしている問題でも、将来解決したい問題でもありません。抽象的な基盤が今日の世界のあらゆる問題の根源であり、この基盤の上にのみテクノロジーが他の問題の解決に役立つ可能性があることを私たちはほとんど知りません。

なぜなら、私たちはテクノロジーを効果的に使用したいのであって、意味のない抽象化の層で複雑な問題を解決したいのではないからです。新しい抽象化レイヤーが必要であることを認める時が来ました。既存の言語、プラットフォーム、ツールが最大限に機能できるようにする、信頼性が高く効率的な抽象化レイヤーを構築しましょう。

2.3.クラウドプラットフォームの特徴

低レベル プラットフォームと比較すると、このプレゼンテーション レベルのプログラミング プラットフォームにはいくつかの異なる特性があります。通常、これは低レベル コンポーネントを接続し、プリミティブ レベルの API を介してこれらのコンポーネントと通信する単なる「接着剤」です。システムの起動と停止は低レベル プラットフォームによって処理され、プログラミング プラットフォームは必要に応じて適切なリソースを動的に読み込むことができます。パフォーマンスが重要なタスクの一部は、低レベルのプリミティブによって処理されます。このようなシステムを定義するプロパティは他にもたくさんあります。

2.4.独占と開放

先ほどコントロールを放棄することについて言及したことを覚えていますか?莫大な利益を上げている大手ソフトウェア企業が世界を支配していることもご存知でしょう。すべての権力がこれらの巨人の手に渡ることを望まないのであれば、これを学ばなければなりません。健全な市場には競争が必要だからです。大企業が自分たちのアイデアや製品に私たちを縛り付けるプラットフォームを開発するのを待つべきではありません。多くの選択肢と多様なアイデアを備えた健全なシステムを構築する必要があります。 Netlify、Fastly、DigitalOcean などの大手クラウド プロバイダーに代わる選択肢が出てきたのは素晴らしいことであり、感謝したいと思います。

2.5.仕様とツール

オペレーティング システムやプログラミング言語の多様性と同様に、電子メールやネットワーク技術が現在広く採用されているように、クラウド プラットフォームの多様性を確保し、相互に互換性があり、標準とプロトコルを共有できるようにする必要があります。 CNCF はこの点に関して多大な努力を払っており、cloudevents や openmetrics などの仕様を開発しています。

仕様に加えて、抽象化レイヤーが解決する必要があるもう 1 つの大きな問題は、開発ツールです。開発者は、自分のシステム上でコードをテスト、監視、デバッグすることに慣れていることがよくあります。 VM を作成し、コンテナを作成し、ラップトップで開発するのは良いアプローチではないと思います。代わりに、開発環境をクラウドに移行する必要があります。 Web インターフェースだけでは不十分です。より良いアプローチとしては、リアルタイム API を活用して製品を構築し、開発者の生産性を向上させることが挙げられます。この点に関してはまだやるべき作業は多く残っており、IDE をクラウドに移行するのはほんの第一歩にすぎません。

3. まとめ

この記事は、クラウド コンピューティングに関する著者の深い考えを反映し、開発者の観点からビジネス ロジックと制御の関係を特定し、著者の考えるクラウド プラットフォームの特徴を示し、最後にクラウド プラットフォームの仕様と開発ツールに関する著者自身の考えを提示します。現時点では、AWS のサーバーレスは良い仕事をしているかもしれないが、それはまだ作者の青写真からは程遠く、独占もまた彼が見たくないものである。おそらく近い将来、ソフトウェア開発の学習曲線はますます平坦になり、開発者はビジネス ロジックにさらに集中し、残りをクラウド プラットフォームに任せることができるようになるでしょう。

翻訳者プロフィール: Qiu Renbo は、オペレーター業務分析とデータセンターデータベースの分野で長年の経験を持ち、現在は地方自治体の公的機関の情報技術部門に勤務しています。国内外のギークニュースやフロントエンド・バックエンド技術に日々注目しましょう。海外ナレッジポーター。

原題: クラウドは新しい OS - 開発者の視点、著者: jorin

[51CTOによる翻訳。パートナーサイトに転載する場合は、元の翻訳者と出典を51CTO.comとして明記してください。

<<:  「2018 OpenStackユーザー調査レポート」公開、ベンダーランキング上位10社も公開

>>:  年間レビュー: 2018 年に注目を集めたコンテナ スタートアップ 10 社

推薦する

クラウドコンピューティング2.0の時代が到来

クラウド コンピューティングは、データ管理と分散ワークロードに対する考え方を変えました。どの CIO...

主要検索エンジンのインデックス速度と検索エンジン送信の影響

最近、いくつかの新しいサイトを構築しました。以前のサイトの経験と合わせて、作成したインデックスログに...

Dogyun: 建国記念日、Elastic Cloud 30% 割引、専用サーバー月額 100 オフ、香港\韓国\日本\米国\オランダ\ドイツ

Dogyun は国慶節に向けていくつかの割引をご用意しました: (1) クラウド サーバーと専用サー...

ソフトな記事を使ってネットワークマーケティングの高速道路に導きます

インターネット マーケティングは、低コスト、高効率、優れた結果が特徴です。インターネット マーケティ...

ネットワークマーケティングのトレーニングが効果的でない理由は何ですか?

学習に関して、「先生はあなたをドアまで導くことしかできないが、実践はあなた次第だ」という言葉をよく耳...

トランセンド航空券予約ウェブサイトのユーザー役割需要分析

私がオンラインチケット予約について調査を行った理由は、実は最近受けた一連の筆記試験問題に端を発してい...

theqhost - 4 ドル / 2g メモリ / 50g SSD / 2T トラフィック / 4 つのデータセンター

theqhostは年に設立され、1年以上VPSを運営しています。平凡なタイプです。検索したところ、現...

SEOを成功させるにはトラフィックソースの多様化が必須

最近、SEOmoz の過去 12 か月間のトラフィックを視覚化するために、GA アカウントにいくつか...

テンセント、オープンソースのクラウドコンピューティングエコシステムの構築を支援する中国初のクラウドネイティブアクセラレータを発表

近年、企業が未来志向のアプリケーションアーキテクチャを構築するための第一の選択肢として、「クラウドネ...

董静益:食品業界の電子商取引プラットフォーム向けインターネットマーケティング推進計画

最新の統計によると、中国のB2C電子商取引サイトの数は4万を超えています。この4万の電子商取引サイト...

タオバオストアの譲渡が解禁へ:まずは離婚による譲渡と死亡時の相続がテストされる

「離婚譲渡」と「死亡相続」がまず試される譲渡禁止の解除には法的承認が前提条件となる。来週、タオバオは...

SEO はそれほど難しいことではないということをお伝えしておきます。

SEO 業界で働き始めてから、最初は本当に混乱しました。フォーラムの方法に従って継続的に学習し、今で...

Baidu のバックリンクを増やす 4 つのヒント

Baidu のバックリンクを構築するにはどうすればよいでしょうか? ドメイン関連のドメインをさらに追...

分散型のTCCモードは好きではない

[[384133]]この記事はWeChatの公開アカウント「プログラマーjinjunzhu」から転載...

キーワードの選択は単なる考慮事項ではない

ウェブサイトには必ずテーマが必要です。検索エンジンのスパイダーにとって、それは単なる論理プログラムで...