我是否应该将jQuery插件转换为使用jQuery UI';小工具工厂?

我是否应该将jQuery插件转换为使用jQuery UI';小工具工厂?,jquery,jquery-ui,jquery-plugins,Jquery,Jquery Ui,Jquery Plugins,我正在构建一个相当大的web应用程序,并使用经典插件模式构建了一些插件。其中一些超过50行并保持状态。我最近发现了jQueryUI,如果我将插件转换成这种风格,代码将更易于阅读和维护。除了时间和精力之外,我还试图确定转换它们是否有负面影响。我已经将jQuery UI用于其他一些插件。应该不会有问题 如果您已经依赖jqueryui,那么就没有任何不利之处 使用良好的框架功能(大多数情况下)比实现自己的框架功能更好。经过良好测试,代码更少,并且通常可以促进更好的设计。如果您不想利用widget工厂添

我正在构建一个相当大的web应用程序,并使用经典插件模式构建了一些插件。其中一些超过50行并保持状态。我最近发现了jQueryUI,如果我将插件转换成这种风格,代码将更易于阅读和维护。除了时间和精力之外,我还试图确定转换它们是否有负面影响。我已经将jQuery UI用于其他一些插件。

应该不会有问题

如果您已经依赖jqueryui,那么就没有任何不利之处


使用良好的框架功能(大多数情况下)比实现自己的框架功能更好。经过良好测试,代码更少,并且通常可以促进更好的设计。

如果您不想利用widget工厂添加的功能,那么这样做真的没有意义。您需要真正评估是否进行这种切换将提供更多工作以外的任何优势


如果更改代码没有任何好处,请不要这样做。正如babiker在他的评论中指出的那样,您最好在应用程序结构上花费时间。

我决定将一个更复杂的有状态插件转换为使用jQuery小部件工厂。有一点学习曲线,我相信这些好处证明了这项工作的合理性。虽然我没有利用主题滚轴支持,但我发现以下是一些其他有用的好处:

  • 国家管理
  • 暗示着这一点
  • 干净回调机制
  • 用于设置和覆盖选项的简单API
  • 公共方法和私有方法之间的视觉清晰区分

显然,您可以通过传统的插件模式实现所有这些。但在我看来,代码看起来更干净,而且从长远来看更易于维护。非常感谢Eric Hynds和他的同事为我提供了学习和学习如何使用Widget Factory的源代码。

浏览以下幻灯片:


他们会给你一个奇妙的小部件工厂概述,为什么你应该使用它,以及如何使用。

“我正在构建一个相当大的web应用程序,并使用经典的插件模式构建了一些插件”,你应该专注于构建应用程序而不是插件。没错,但是插件正在成为应用程序中非常重要的一部分,将来可能需要增强。你确实提出了一个很好的观点。但是在详细研究了widget工厂之后,它为插件开发人员提供了相当多的特性,最终产生了更干净的代码。