[51CTO.com クイック翻訳] 現在までに、コンピュータプログラミングの分野では、開発者が操作する抽象化のレベルが数倍に増加しました。コンピュータプログラミングにおける抽象化のレベルは再び高まると思います。 おそらく、アセンブリを記述して理解できる人材は世界に常に求められるでしょうが、大多数の開発者にとっては、日常業務でオペレーティング システムと対話するためにプログラミング言語によって提供されるシステム コールまたは API の使用方法を学ぶだけで十分です。これは彼らが操作できる最高レベルでもあります。 CPU が毎日どのような命令を処理するかを心配する必要はなく、メモリを手動で割り当てる必要さえありません。
近い将来、開発者はプログラムがどの物理マシン上で実行されるかを考慮する必要がなくなります。 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 社
ウェブサイトに触れてまだ1年も経っていない初心者として、ここでSEOについて話すと、専門家の前で自分...
2018 年は、消費者と企業がデジタル変革を継続したため、オンライン ストレージにとって大きな年とな...
[51CTO.com からのオリジナル記事] インターネット技術の急速な発展に伴い、リクエストの高同...
Baidu が準備を進めてきたオリジナルの Spark プロジェクトがひっそりと開始されました。検索...
ちょっとわかりにくいですね。ヌンチャクのスキルと SEO の関係は何でしょうか? 太極拳が SEO ...
ロイター通信によると、アップルは最近、非公開の技術を通じて、テキストメッセージ、連絡先リスト、写真な...
米IDCのウェブサイトは、今年第4四半期の米国仮想ホストランキングを選定し、人々の人気、サーバーのオ...
「共に力を合わせてより良い世界を創る」2018 JD Cloud パートナーカンファレンスが北京で開...
SEOWHYの創設者であるFu Wei氏は、ほとんどの人が知っています。キーワードSEOは常にBai...
ウェブサイトの最適化の過程で、ウェブサイトが K 化されることは非常に一般的です。ほとんどのウェブマ...
ウェブサイトの開発はマーケティングと切り離せないものであり、マーケティングの鍵はコンテンツマーケティ...
[[315743]] -クラウドコンピューティング 半月刊第73号...
2日間の絶え間ない努力の末、誤って削除された本番サーバーのデータをようやく回復できました。この事故の...
エッジ コンピューティングとクラウド コンピューティングをデータ ストレージと組み合わせることは、非...
本日(5月28日)、3日間にわたる2014年中国コンピュータネットワークセキュリティ年次会議が開幕し...