これがjQueryでどのように機能するかをよく説明できる人はいますか?
具体的にはここからの回答に関して。
OOPの単一責任原則(SRP)と同じように聞こえますか?どう違うの?
今は自分の質問に答えるのがより快適になりました。
単一責任の原則では、主にゲームのように作成されたオブジェクトについて考えています。そのオブジェクトは、内部関数/メソッドの観点から、それ自体に対してのみ責任を負う必要があります。
インターフェイスの分離に関しては、無名関数の呼び出しを避け、コードの大きなチャンクを別の名前の呼び出しに分離することを考えています。これは、パフォーマンスについてjQueryAnti-PatternsのPaulIrishによって十分に説明されています。
のようにどこにでもバインドされた無名関数の代わりに
$(function() {
//do stuff related to setup menu
//add facebook, twitter widgets
//more anonymous actions....
}):
明確に定義されたインターフェースへの分離は、次のようになります。
var homepage = (function() {
function setupMenu() {
//do stuff related to setup menu
}
function setupSocial() {
//add facebook, twitter widgets
}
return {
setupMenu:setupMenu,
setupSocial:setupSocial
}
})();
$(function() {
homepage.setupMenu();
homepage.setupSocial();
})