ホームページ  >  記事  >  コンポーネント開発とは

コンポーネント開発とは

(*-*)浩
(*-*)浩オリジナル
2019-06-12 11:36:4210933ブラウズ

ソフト生成の時代には、この問題を解決する魔法の武器 (すべてのバグが排除される) がすでに存在していました - コンポーネント化。もちろん、当時はそう呼ばれていませんでしたが、この問題は凝集と結合(凝集性が高く、結合性が低い)という 2 つの原則によって規制されていました。

コンポーネント開発とは

#カップリング: ブロック間接続とも呼ばれます。これは、ソフトウェア システム構造内のモジュール間の相互接続の密接さの尺度を指します。モジュール間の接続が密であればあるほど、結合は強くなり、モジュールの独立性は悪くなります。モジュール間の結合のレベルは、モジュール間のインターフェイスの複雑さ、呼び出しメソッド、転送される情報によって異なります (推奨学習: PHP ビデオ チュートリアル )

Cohesion : ブロック内接触とも呼ばれます。これは、モジュールの機能強度の尺度、つまり、モジュール内の要素が互いにどの程度密接に結合されているかの尺度を指します。モジュール内の要素 (言語名とプログラム セグメントの間) が密接に接続されているほど、その凝集度は高くなります。

コンポーネントベースの開発は、再利用可能な特定の機能をカプセル化する標準化作業です。通常、コンポーネントには内部 UI 要素、スタイル、JS ロジック コードが含まれており、アプリケーションのどこにでも簡単かつ迅速に埋め込むことができます。コンポーネントは内部の他のコンポーネントを使用して、より複雑なコンポーネントを形成できます。コンポーネント開発は有用な解決策です。

コンポーネント化の定義

「コンポーネント化」を次の要素として理解します。

a)コンポーネントはロジックをカプセル化したもので、グラフィック要素に限定されません。

つまり、if をコンポーネントに、カウントダウンをコンポーネントに、アニメーションをコンポーネントに、ルーティングをコンポーネントに、データ アーキテクチャをコンポーネントに作成できますが、これらを「The」と呼ぶことはできません。 control

b) コンポーネントは単一の移植性を備えています

つまり、「ロードしたらすぐに使用できる」という複雑な基本条件を準備する必要はありません。 (スタイルの導入、フレームワークの導入など)。ただし、既存のいわゆるコンポーネント ライブラリではこれがうまく機能せず、技術的に現実的ではありません

c) コンポーネントは命令的ではなく宣言的に定義されます。

これについてはこれ以上言いません。これは主に私自身の主観的な考えです。最も重要なのは最初の点です。「コンポーネントベース開発」とは何かというと、 、私の答えは次のとおりです。さまざまなグラフィカルおよび非グラフィカル ロジックを統一された概念 (コンポーネント) に抽象化する開発モデルです。

これと従来の開発フレームワークとの最大の違いは、グラフィック要素と非グラフィック要素の統合です。これ以外に違いを明確に反映する点は思いつきません。このコンセプトでは、ルーター、ajax、モジュールローダー、タイマー、アニメーション、インターバルなどを含むすべてのコンポーネントは、統一されたライフサイクル管理と外部インターフェイスを共有するコンポーネントであり、宣言的に結合されます。

コンポーネント開発手法の利点を強力に提唱

プロジェクトのコンパイル速度を大幅に向上

コンポーネント分割後、各事業または関数は別個のプロジェクトです。この別個のプロジェクトは、独立してコンパイルして実行できます。通常、分割されたプロジェクトは小さくなり、コードも少なくなります。以前のようにコンパイルに数分待つ必要はなくなりました。

ビジネス モジュールの分離は、複数人チームの共同開発に役立ちます

ビジネス コンポーネントは相互に参照できず、各コンポーネントは対応するビジネス機能を 1 つに統合しますプロジェクトでは、彼らはお互いを邪魔しません。複数人チームでは、各人は自分のビジネス モジュールに対してのみ責任を負います。その人のビジネス機能の追加、削除、変更、チェックは自分のビジネス モジュールに限定され、他の人のビジネスには影響しません。コードの品質は、影響を受けません。独自のビジネス モジュールにのみ影響します。テストにも非常に便利です。ほとんどの場合、常にすべての回帰テストを実行するのではなく、変更されたビジネス コンポーネントのテストに集中するだけで済みます。

コンポーネント化は機能再利用の基礎です

ビジネス コンポーネントはビルディング ブロックのようなものです。ビルディング ブロックを使用してさまざまな家を建てることができます。同様に、次のこともできます。複数の異なるAPPを作成します。各コンポーネントを保守するだけでよく、コンポーネントの機能を使用する必要がある場合は、参照を作成して統合するだけで済みます。

PHP 関連の技術記事をさらに詳しく知りたい場合は、

PHP グラフィック チュートリアル 列にアクセスして学習してください。

以上がコンポーネント開発とはの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。