IOCとAOPの面接問題

3440 ワード

スプリングの利点は?1.コンポーネント間の結合性を低減する、ソフトウェアの各層間のデカップリングを実現する.トランザクション管理、メッセージサービスなど、容易に提供できる多くのサービスを使用できます.コンテナは、単一のモードサポート4を提供する.容器はAOP技術を提供し、それを利用して簡単に権限ブロック、運行期間監視などの機能を実現する.容器は多くの補助類を提供し、応用の開発を加速することができる.Springは、hibernate、JPA、Strutsなどの主流のアプリケーションフレームワークに統合サポートを提供する.Springは低侵入式の設計に属し、コードの汚染は極めて低い.各種アプリケーションサーバ9とは独立する.SpringのDIメカニズムは、ビジネスオブジェクトの置換の複雑さを低減する.Springの高度な開放性は、アプリケーションがSpringに完全に依存することを強制するものではなく、開発者はspringの一部または全部を自由に選択することができますDIメカニズムとは何ですか?依存注入と制御反転(Inversion of Control)は同じ概念で、具体的には、あるロールが別のロールの協力を必要とする場合、従来のプログラム設計では、呼び出し者によって呼び出し者のインスタンスが作成されることが一般的である.しかしspringで呼び出し者を作成する作業は呼び出し者によって行われなくなり、制御反転と呼ばれる.呼び出し者を作成する作業はspringによって完了するはい、それから呼び出し者に注入します.
従って依存注入とも呼ばれる.Springはダイナミックで柔軟な方法でオブジェクトを管理し,注入の2つの方法で注入と構造注入を設定する.注入の利点の設定:直感的、自然構造注入の利点:コンストラクタで依存関係の順序を決定できます.AOPとは?面切りプログラミング(AOP)に向けてspringの依存注入(DI)を完備し、面切りプログラミングはspringの中で主に2つの方面に表れている.1.面切りプログラミングに向けて声明式事務管理を提供する2.springはユーザーのカスタマイズをサポートする面切りプログラミング(aop)はオブジェクト向けプログラミングである(oop)の補足として、オブジェクト向けプログラミングはプログラムを各階層のオブジェクトに分解し、フェース向けプログラミングはプログラム実行過程を各フェースに分解する.AOPはプログラム実行の観点からプログラムの構造を考慮し、業務処理過程のフェースを抽出し、oopは静的抽象であり、aopは動的抽象であり、アプリケーション実行過程におけるステップを抽象化し、それによって得るステップ間の論理的区分を得る.aopフレームワークが持つ2つの特徴:1.各ステップ間の良好な隔離性2.ソースコード依存性
 
Springのトランザクション管理メカニズムは、トランザクション管理を必要とするすべてのBeanを動的エージェントによってロードし、invokeメソッドに構成されている現在呼び出されているメソッド名に基づいて判定し、method.invokeメソッドは前後に適切なトランザクション管理コードを追加し,Spring式のトランザクション管理を実現する.SpringのAOP実装はより複雑で柔軟であるが,基本原理は一致している.
================================================================================================
  • springは、インスタンスオブジェクトを作成するためのクラス名とインスタンスオブジェクトのプロパティ
  • をプロファイル内の要素で構成する、ワンストップ開発の軽量レベルのオープンソースフレームワークです.
  • springはIOCとAOP技術を提供し、私たちは対象間の依存関係をspringに渡して管理することができ、強い結合を避けることができます.AOPは、トランザクションの管理やログイン権限の管理など、切面的なプログラミングを行うことができます.
  • springはjunit 4をサポートし、プログラムのテスト
  • を便利にした.
  • はトランザクションのサポートを宣言し、コード量を減らして開発効率を向上させた
  • springは、jdbc、リモートコールなど、開発の難易度を低減するいくつかの技術をカプセル化しています.
  • springは世の中の多くの優秀な枠組みを統合し、統合を便利にした.例えば(hibernate、struts 2)
  • IOC:反転を制御します.例えば、インスタンスのオブジェクトはもともと私たちのnewによってインスタンス化されていましたが、今はspringによって構築されてIOCコンテナに配置されています.私たちは呼び出すだけです.
    DI:注入メカニズム、xmlプロファイルに配置されたオブジェクトを属性/オブジェクト注入する
     
     
  •  
  • AOP:

    1.    
    2. AOP
    3. JDK , CGLIB ( )

    / : , ( )

    : ( )

    =============================================================================================