2010-12-18 27 views
6

我正在構建一個相當大的Web應用程序,並使用經典插件模式構建了一些插件。其中一些超過50行並保持狀態。我最近發現jQuery UI的widget factory,看來如果我要將我的插件轉換爲這種風格,代碼將更易於閱讀和維護。除了時間和精力之外,我正試圖確定是否存在將其轉換的缺點。我已經爲其他插件使用jQuery UI。我應該將我的jQuery插件轉換爲使用jQuery UI的Widget Factory嗎?

+1

「我正在構建一個相當大的Web應用程序,並使用經典插件模式構建了一些插件」,您應該專注於構建應用程序而不是插件。 – Babiker 2010-12-18 02:30:42

+3

確實如此,但插件已成爲應用程序中非常重要的部分,未來可能需要增強。 – rhoeting 2010-12-18 02:48:46

回答

4

我決定將其中一個更復雜的有狀態插件轉換爲使用jQuery Widget工廠。有一點學習曲線,我相信這些好處是合理的。雖然我沒有利用主題滾筒支撐,這裏有一些我認爲有用的其他好處:

  • 狀態管理
  • 暗示this.each()
  • 清潔回撥機制
  • 簡單的API設置和設置的選項
  • 公共和私有方法之間在視覺上明顯的區別

顯然,就可以實現所有的這些與傳統的插件模式。但是代碼看起來更清晰,並且在較長時期內更容易維護。非常感謝Eric Hynds和他的MuliSelect Widget提供的源代碼,供我學習和學習如何使用Widget Factory。

2

應該不是問題。

如果您已經依賴jQuery UI,那麼沒有任何缺點。

使用良好的框架功能比實現自己的更好(大部分時間)。經過良好測試,代碼少,並且通常會促進更好的設計。

0

如果您不想嘗試使用widget工廠的附加功能,那麼確實沒有必要這樣做。你需要真正地評估是否做出這種轉換將提供除了更多工作以外的任何優勢。

如果沒有改變你的代碼的好處,不要這樣做。像babiker在他的評論中指出的,你最好花時間在應用程序結構上。

+0

你做得很好。但仔細觀察小部件工廠後,它爲插件開發人員提供了相當多的功能,從而最終實現了更簡潔的代碼。 – rhoeting 2010-12-22 10:59:56

相關問題