2012-04-13 10 views
1

私は最近、依存関係注入パターンを使用するようにPHPライブラリを更新しました。私のクラスでオブジェクトをインスタンス化するのではなく、ObjectMakerというクラスでそれらをインスタンス化し、そのオブジェクトをオブジェクトgetter関数を通して渡します。プロフェッショナルコードを作成するために必要な依存性注入パターンの使用ですか?

私がこれを行うのが分かるのは、インスタンス化によって引き起こされた障害を分離するためだけのことです。

しかし、私は単なる男ですから、私はユニットテストをしていません。私は依存性注入パターンを使用するJavaScriptを更新することについて何のポイントも見ません。

これらの依存関係は、私に問題を引き起こすことはありません。

私はそれを使用せずにJavaScriptの専門家に電話することはできますか?

私はそれを使ってパフォーマンスを向上させることはできません。オブジェクトを作成する抽象的なコード(オブジェクトを作成するオブジェクト) - 私は単純なオブジェクトモデルを好みます。これはスタイルの設定が正しいですか?

質問:

依存性注入パターンを使用することはできませんが、私のJavaScriptプロフェッショナルレベルを呼び出すことはできますか?

/** 
*Control 
*/ 

var Control = (function() 
{ 
    var Control = function (type) 
    { 
     this.TIME = 4000; 
     this.form_element = document.getElementById(type), 
     this.response_element = document.getElementById(type + '_response'); 
     this.text_object = new Text(this.form_element), 
     this.message_object = new Message(this.response_element), 
     this.effects_object= new Effects(this.response_element); 
    }; 
    Control.prototype.invoke = function() 
    { 
     if(Global.validate_input_on === 1) 
     { 
      if(!this.text_object.checkEmpty()) 
      { 
       this.message_object.display('empty'); 
       this.effects_object.fade('down', this.TIME); 
       return false; 
      } 
      if(type === 'signup' && !this.text_object.checkPattern('name')) 
      { 
       this.message_object.display('name'); 
       this.effects_object.fade('down', this.TIME); 
       return false; 
      } 
      if(!this.text_object.checkPattern('email')) 
      { 
       this.message_object.display('email'); 
       this.effects_object.fade('down', this.TIME); 
       return false; 
      } 
      if(!this.text_object.checkPattern('pass')) 
      { 
       this.message_object.display('pass'); 
       this.effects_object.fade('down', this.TIME); 
       return false; 
      } 
     } 
     var response_element = this.response_element; 
     AjaxNew.repeatUse(ajaxSerialize(this.form_element) + '&ajax_type=' + type + '_control', function(server_response_text) { ajaxType(server_response_text, this.response_element, 'respond'); }); 
    }; 
    Control.in = function() 
    { 
     new Control('signin').invoke(); 
    }; 
    Control.up = function() 
    { 
     new Control('signup').invoke(); 
    }; 
    Control.out = function() 
    { 
     AjaxNew.repeatUse('&ajax_type=ControlSignOut', function(server_response_text) { ajaxType(server_response_text, 0, 'simple'); }); 
    }; 
    Control.try = function() 
    { 
     AjaxNew.repeatUse('&ajax_type=ControlTryIt', function(server_response_text) { ajaxType(server_response_text, 0, 'simple'); }); 
    }; 
    return Control; 
}()); 
+1

この種の質問は嫌です。 –

+0

http://stackoverflow.com/q/619701/102937 –

+1

@AndrewDunn:境界線は「非構成的」ですが、それがどうなるかを見てみましょう。 –

答えて

2

他の開発者とのブロックでクールな子供ではない危険性がありますが、コードがあまりプロフェッショナルではありません。あなたのプロジェクトに最適なものを使用してください。あなたがしようとしていることが過度の場合は、それを使用しないでください。

1

私がこれを行うのが分かるのは、インスタンス化によって引き起こされるフォールトを分離するためだけです。

依存性注入の目的は、緩いカップリングを促進することです。あなたがJSコードでこれを必要とするかどうかは、あなたのJSコードの範囲に大きく依存していると思います。 JSフレームワークを作成しているのですか、いくつかのdivを操作していますか?

ウェブ開発会社はあなたの仕事の専門家を見つけるでしょうか?場合によります。クールに見せることができるように、まったくDIをコードに追加していますか?それとも、そこにある本当の理由がありますか?プロのWeb会社がその違いを知っています。

+0

ここにあなたのコメントは私が閉じた理由です...あなたはディスカッションを招待しようとしています。それは実際にここでやっていることではありません。 –

関連する問題