この記事では、Javaの外観モードに基づいたフードワールドレシピ機能の実装について説明します。次のように、参照のために共有してください。
1。パターン定義
外観モードは、ソフトウェアエンジニアが一般的に使用するソフトウェア設計モードです。サブシステム内の一連のインターフェイスに統一された高レベルインターフェイスを提供し、サブシステムの使用を容易にします。外観モードは、外観インターフェイスを介してサブシステム内の各インターフェイスのデータリソースを読み取り/書き込み、顧客はサブシステムと対話せずに外観インターフェイスを介して内部リソースライブラリを読み取ることができます。
2。モデルの例
1。パターン分析
このパターンを説明するために、フードワールドレシピから甘くて酸っぱい豚肉のrib骨を作るというレシピを借りました。
2。外観モード静的クラス図
3。コードの例
3.1甘くて酸っぱいポークリブインターフェイス - イスペラリブを作成します
パッケージcom.demo.common;/** * Sweet and Sour Ribs Interface * * @author * */public Interface ispareribs {//材料の準備public void prepair(); // Pickled Pork Ribs public void preserve(); //揚げポークリブパブリックボイドフライ(); //ソース調整されたpublic void juice();}3.2甘くて酸っぱいrib骨実現クラススパレリブ
パッケージcom.demo.common;/** * *甘くて酸っぱい豚肉のリブの実装 * * @author * */public class spareribs Ispareribs {//材料@Override @override public void prepair(){1。酢、調理ワイン、塩... "); } // Pickled Pork Ribs @Override public void preserve(){system.out.println( "2。rib骨を洗い、長さ3 cmのセクションに刻み、沸騰したお湯にblanchし、それらを取り出して洗面器に入れ、塩と醤油を加えて味のためにマリネする..."); } //フライドポークリブ@Override public void fry(){system.out.println( "3。60%の熱になるまで炒め、淡黄色になるまで炒め、rib骨から熱し、80%の熱になり、金色の茶色になるまで炒め、鍋から外します..."); } //ジュースを炒めます それ!"); }}3.3外観インターフェイス-Icookfacadeを作成します
パッケージcom.demo.facade;/** *外部モードで甘くて酸っぱい豚肉のrib骨を作る * * @author * */public interface icookfacade {//甘くて酸っぱいポークリブを作るパブリックボイドcookspareribs;}3.4 Cookfacadeを実現するための外観
パッケージcom.demo.facade;インポートcom.demo.common.ispareribs;インポートcom.demo.common.spareribs;/** *外部モードで甘くて酸っぱいrib骨を作ります * * @author * */public class cookfacade Imprames icookfacade {// seake and saur ribs private private ribs private ribs interibs spareribs( //甘くて酸っぱいrib骨を作るpublic void cookspareribs(){//材料this.spareribs.prepair(); // this.spareribs.preserve(); //揚げたポークリブthis.spareribs.fry(); //ソースthis.spareribs.juice(); }}3.5クライアントテスト
パッケージcom.demo; import com.demo.facade.cookfacade; Import com.demo.facade.icookfacade;/** * client application * * @author * */public class client {public static void main(string [] args){//甘くて酸っぱいポークリブを作り始めます! System.out.println( "=====甘くて酸っぱい豚肉のrib骨を作り始めます..."); // //甘くて酸っぱい豚肉のrib骨オブジェクトインスタンスを作成する// ispareribs spareribs = new Spareribs(); // //材料を準備する// spareribs.prepair(); // //ピクルスポークリブ// Spareribs.preserve(); // //フライドポークリブ// spareribs.fry(); // //ソース// spareribs.juice(); icookfacade cookfacade = new cookfacade(); cookfacade.cookspareribs(); System.out.println( "====甘くて酸っぱい豚肉のrib骨が終了しました!"); }}4。操作結果
====甘くて酸っぱい豚肉のrib骨を作り始めます...
1.豚肉のrib骨500グラム、刻んだ緑の玉ねぎ、刻んだ生inger、醤油、ピーナッツオイル、砂糖、酢、調理ワイン、塩を準備してください...
2。rib骨を洗い、長さ3 cmのセクションに刻み、沸騰したお湯で枝blanchし、それらを取り出して盆地に入れ、塩と醤油を加えて味にマリネして...
3.中華鍋に油を加え、60%熱くなるまで調理し、rib骨を黄色になるまで炒め、それらを取り除きます。それらを80%熱くして、中華鍋に入れて金色の茶色になるまで炒めて除去してください...
4.中華鍋に少量の油を残して加熱し、刻んだ緑の玉ねぎを加え、生ingerの香りを炒め、適切な量の水、醤油、酢、砂糖、調理ワインを加え、rib骨を注ぎます。沸騰した後、スープが濃くなるまで弱火で煮ます。 rib骨は調理され、調理済みのオイルを霧雨し、それを配置します!
====甘くて酸っぱい豚肉のrib骨が完成しました!
3。このモデルの設計原則
1 Dimitteの法律 - 最小知識の原則
2パッケージの変更部
この図は、サブシステム内のクライアントアプリケーション、外観パターン、複雑なアプリケーション間の関係をさらに示しています。
4.機会を使用します
1.ソフトウェアシステムは比較的複雑であり、サブシステムの動作を簡素化するために、より高いレベルの簡単なインターフェイスが必要です。
2。ユーザーの終わりと実装クラスの間に依存関係が多すぎる場合、ユーザーの端とサブシステムまたはサブシステムの間の結合を減らし、サブシステムの独立性を高める必要があります。
3.サブシステムが相互依存し、サブシステム間の依存関係を簡素化するために階層サブシステムを階層化する必要がある場合、外観モードを使用できます。
5。外観モード静的クラス図
Javaアルゴリズムの詳細については、このサイトに興味のある読者は、「Javaデータ構造とアルゴリズムのチュートリアル」、「Java操作DOMノードのヒントの要約」、「Javaファイルの要約およびディレクトリ操作のヒント」、「Java Cache操作のヒントの要約」というトピックを見ることができます。
この記事がみんなのJavaプログラミングに役立つことを願っています。