【发布时间】:2010-12-09 20:32:33
【问题描述】:
我有一些与框架依赖相关的问题。一般来说,最佳编码实践表明不要用特定于框架的代码来混淆你的命名空间。例如在 spring 的情况下,所有依赖项都应该在配置文件中维护,并且在您的应用程序代码中没有 spring 特定的代码(这是更喜欢 spring config xml 文件而不是 spring 注释的原因之一)。同样,对于 puremvc,最好不要在 mxml 中混合 puremvc 代码,因此您的视图可以与任何框架一起使用。但我的问题是
如果我们删除 spring 或 puremvc 从您的代码中无需替换任何 其他框架然后你就结束了 在几个豆子中(如果是春天)或 一些真正可重用的视图(以防万一 纯MVC)。但是粘豆或 视图需要大量编码 努力,据我说是间接的 没有框架的依赖 使用特定于框架的 api。
如果我们用其他 DI 替换 spring 然后像 pico 容器这样的框架 它也需要大量的 或返工。这再次导致 对框架的间接依赖。
那么,为什么用特定于框架的 api 来混淆我们的应用程序命名空间是不好的呢?只是我们可以为特定于框架的 api 编码(如果它真的大大减轻了我们的编码工作)。
据我说,只是不将应用程序命名空间与特定于框架的 api 混合并不能使您的应用程序可移植到其他框架。想想你是否想用 spring mvc 移动你现有的精心设计的 struts 应用程序,以及这样做需要付出多少努力。
期待其他读者的看法。
【问题讨论】:
标签: spring architecture frameworks puremvc