Sencha Ext JS 7.7 is Here – Discover What’s New and Exciting – LEARN MORE

コンポーネントファーストのアプローチでアプリ開発をスピードアップ

November 18, 2019 114 Views
Show

開発者は、アプリケーションを構築し、迅速かつ効率的に市場に投入するために、再利用可能かつポータブルなコードに長い間依存してきました。コンポーネントベースの開発は、ReactやAngularなどの人気のあるフロントエンドフレームワークの多くで開発されたアプリケーションのホームを見つけてきた、JavaScriptの現代の進化を通じて人気を維持しています。

最新のアプリケーション開発におけるコンポーネントの永続性は、驚くことではありません。フロントエンドJavaScriptフレームワークのモダナイズにより、コンポーネントを現在の状態、つまり、カスタムHTML要素を使用してフレームワークに依存しないアプリケーションを作成する一連の標準ブラウザAPIとして進化させることができました。ライフスパンの長い柔軟なアプリ開発を可能にするために、企業はWebコンポーネントの使用によりフレームワークに依存しないアプローチの採用を進めています。

Webコンポーネントとは?

Webコンポーネントは、WebページおよびWebアプリケーションで使用するカスタムの再利用可能な要素を作成できるWebプラットフォームAPIのセットで、フレームワークに依存せずに利用できます。これらのコンポーネントは、他のコードベースからコア機能をカプセル化し、コードの衝突を恐れることなく一貫した動作を提供します。Webコンポーネントは3つの主要なテクノロジーで構成されています

HTMLテンプレートとスロット:HTMLテンプレートにより、開発者はページにマークアップを保存し、JavaScriptを使用してレンダリングできます。テンプレート内のコードは、JavaScriptによって明示的にアクティブ化されるまで、ブラウザーによって不活性と見なされます。

カスタムエレメント:定義された動作を持つ要素を作成する機能を提供するAPIのコレクション。このセットは、ユーザーインターフェイスで複数回使用できるモジュラーコードに役立ちます。

Shadow DOM:コンポーネントのマークアップとスタイルをカプセル化するWeb標準です。Shadow DOMにバンドルされたアプローチにより、他のグローバルCSSまたはJavaScriptがページで使用されている場合でも、コンポーネントがどの環境でも一貫して動作することが保証されます。レンダリングは、名前空間の競合なしにプログラムされており、実装はユーザーから完全に隠されています。

コンポーネントファーストアプローチを検討する理由

技術が進歩するにつれて、新しいアプローチが次々と登場する可能性があります。おそらく、もっと長く続くものもあれば、かなり早く死ぬものもあります。オープンソースのフレームワークでは、仕様や設計の改訂がより顕著になる可能性があり、変更に適応するためにアプリケーション全体を書き換える作業が、時間、お金、リソースの面で非常に高コストとなる可能性があります。しかしコンポーネントファースト戦略を使用すると、アプリ開発をスピードアップするためにこのアプローチを使用するいくつかの顕著なメリットがあり、これが長期的な成功をもたらします。

  • 相互運用性:フレームワークエコシステム全体で機能するように設計されたコンポーネントは、相互に、および複数のプロジェクト間で相互作用します。
  • 長いライフスパン:進化する方法論により、用途の広いコンポーネントは、手直しをせずにアプリケーションのライフスパンを延ばします。
  • 一貫した機能:コンポーネントが再利用可能で機能の一貫性が保たれている場合、コンポーネントが異なるソフトウェアスタック間で期待どおりに動作するかどうかを心配する必要はありません。

多くの場合、アプリケーションに適切なコンポーネントを選択すると、開発者はジレンマに陥ります。機能をゼロから開発するべきか、オープンソースソリューションを選択するべきか、信頼できるエンタープライズ対応ベンダーのプロダクトを使用するか、またはこれらの最適な組み合わせを採用するべきか、です。

それぞれの選択肢には当然メリットもデメリットもありますが、方法論に関係なく、考慮すべき3つの事項があります。

 

最近リリースされたホワイトペーパー「Webコンポーネントの賢い選び方」では、すべての開発者が考慮して、長期的な成功のためにアプリケーションをセットアップする必要があるこれらの3つの重要な考慮事項を詳しく掘り下げています。

ホワイトペーパーを読む

プロジェクトに最適なUIコンポーネントをお探しですか?

Senchaは、選択したJavaScriptフレームワークと連携する事前に構築されたUIコンポーネントを提供します。フレームワークに依存しない汎用的なExtWebComponentsの30日間無料トライアルを試すか、ExtAngularおよびExtReact UIコンポーネントを使用してフレームワーク固有のコンポーネントを選択してください。

すべてのソリューションを見る

Recommended Articles

Highlights of Virtual JS Days 2024

Highlights of Virtual JS Days 2024 From February 20-22, 2024, we held the third Virtual JavaScript Days. It featured many sessions on a wide array…

Ext JS Data Gridをすばやくカスタマイズする方法(part 2/6)

全6回構成の「Ext JS Data Gridカスタマイズ」ブログシリーズの最初の記事では、GridやColumnのプロパティをカスタマイズしてデータグリッドを外観や機能を変更する方法を説明しました。この記事ではデータ表示用のメソッドグリッドを用いてデータグリッドをすばやくカスタマイズする方法を説明します。

Ext JS Data Gridをすばやくカスタマイズする方法(part 1/6)

Ext JS Data Gridは、高速で強力かつ柔軟に利用できます。Ext JSを使用すると、ユーザーは自分のアプリケーションに合わせてグリッドの外観をすばやくカスタマイズできます。全6回構成のブログシリーズでExt JS Data Gridをカスタマイズするさまざまな方法をカバーします。

Sencha Ext JS 7.1およびツールの提供開始のお知らせ

Ext JS、ExtAngular、ExtReact、ExtWebComponents、およびツールのバージョン7.1を提供開始いたしました。この記事ではバージョン7.1の改善点について紹介します。

Sencha 2019/2020 ロードマップアップデート

少し前にSenchaのロードマップをご案内しました。これについてお客様から素晴らしいフィードバックをいただいており、2019/2020ロードマップにそれらの提案を取り入れたいと思います。

今秋のアップデート – Senchaジェネラルマネージャのデスクから

前回Senchaコミュニティに情報発信してから、数週間が経ちました。私たちのプライオリティと製品ロードマップは、お客様の声によって形成されており、皆さんがすばらしいアプリケーションを構築できるような価値ある製品強化を提供していきたいと考えています。今回、いくつかの進行中の開発状況に関して紹介するとともに、コミュニティの皆さんにアップデートを提供したいと思います。

View More

coming soon

Something Awesome Is

COMING SOON!