簡體   English   中英

組織javascript應用程序的最佳方法

[英]Best way to organize a javascript application

我一直在嘗試一些不同的方法來在我的javascript應用程序中組織代碼,但我想知道哪種方法最合適。

第一個例子:

var Application = {

    init: function() {
        //Some code
        Calculate();
    },

    Calculate: function() {
        //Some code
    }
};

第二個例子:

(function() {

    function init() {
        //Some code
        Calculate();
    }

    function Calculate() {
        //Some code
    }

})();

第三個例子:

(function() {

    var init = function() {
        //Some code
        Calculate();
    };

    var Calculate = function() {
        //Some code
    };

})();

還是以其他方式首選? 我對此感到非常困惑。 提前致謝!

毫無疑問,答案是“取決於情況”。 您的應用程序有多大? 您是否一直需要所有模塊? 您的應用需要具有多大的可擴展性和可重用性? 這些不是專門針對JavaScript的問題,而是“架構”問題,盡管學習JavaScript基礎相對容易,但要成為一名優秀的軟件開發架構師需要很多年。 (盡管您問這些問題真是太好了。)

我鼓勵您深入探討編程模式。 學習模式就是學習根據給定應用程序以正確的方式構建應用程序。

我可以說,第一個示例和第二個示例的組合是一個很好的起點(立即調用的函數表達式包裝並返回對象文字)。 這通過閉包提供了一定程度的私有作用域,稱為模塊模式。 您將看到這種模式在某種程度上幾乎可以用於所有主要的JS應用程序和庫,因為它具有多功能性和優雅性。

要了解有關JavaScript模式的更多信息,我強烈建議Addy Osmani的“學習JavaScript設計模式”。 您可以在以下位置免費閱讀它: http : //addyosmani.com/resources/essentialjsdesignpatterns/book/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM