40

我接管了很多在我们店里挥之不去的 ColdFusion 东西,他们坚持把它留在 ColdFusion 上,并且该领域的新项目必须在 CF 中完成 - 基本上这部分是不可协商的。我在 CF 方面不是很有经验(自 2003 年以来就没有接触过它),所以在过去的 4-5 年中,我的大部分开发都是在 .Net、MVC、C#、Linq-to-SQL 中进行的。

我正在四处寻找一个 MVC 框架,我可以将我的 Asp.Net MVC 体验与集成的 ORM 联系起来(我至少在一段时间内被困在使用 CF 8 中)。我找到了一些像 Model-and-glue、Mach II 和 Coldbox 等,但我真的不知道从哪里开始,想从使用它们的人那里得到一些关于它们的优点、缺点等的意见他们。

我知道我需要对 CFML 进行广泛的复习(几乎是重新学习),所以我不需要被告知 - 我正在展望未来。

您能否分享有关 CF MVC 框架的任何信息,以帮助我选择最适合我的框架?谢谢你。

4

10 回答 10

33

看到你是 ColdFusion 的新手,我会选择一个框架并坚持下去。一开始你会遇到问题,你会很想放弃你选择的框架,但不要这样做。在你掌握了一个框架之后,你就可以学习其他的了。

其中大部分您可以添加

Adobe.com 上的 ColdFusion 框架简介

最重要的是要记住我们都有自己的意见,但没有真正的证据证明什么是最好的。您甚至可以不使用实际的框架,而只需在 MVC 中仔细编码。

你当前维护的东西

我会选择 ColdBox、ModelGlue 或 Framework/1。

ColdBox 提供了一点代码生成功能,Framework/1 非常轻量级,所以学起来很少。

于 2010-07-29T16:45:21.857 回答
16

我已经使用 CFWheels 几年了,但我还没有找到更好的框架。它受到 Ruby on Rails 的启发,并且通过优秀的文档和非常活跃的社区非常容易学习。

www.cfwheels.org

于 2010-07-29T11:51:31.183 回答
13

我在 ColdFusion 中教授一门课程,并在课堂上使用 Sean Corfield 的 Framework/1。它是轻量级的并且具有非常平缓的学习曲线,这使得它特别适合于转换现有的代码库。但与此同时,开发人员团队很容易与之合作,并且可以扩展到大型应用程序。无论如何,对我来说,它是最不像框架,最像自然代码的框架。

http://github.com/seancorfield/fw1/

于 2010-07-29T11:59:53.423 回答
12

我想给cfwheels一个+1 。

自 2003 年以来,我将 Mach II、ColdBox、Fusebox 和 Model-Glue 用于各种项目。所有人都有其优点和缺点(Fusebox 是我现在唯一要避免的)但是,在最近的一个项目中,我决定尝试 CFWheels。

使用 Wheels 非常棒。我为我小镇上的一些朋友开发了一个网站,他们拥有并经营一个攀冰和指导网站 ([www.ourayclimbing.com]),度过了一段愉快的时光。不错的 SES URL,在 Adob​​e CF 和 Railo 上运行良好,管理员非常容易使用 Scaffolding 插件,约定优于配置(我喜欢 :))等。

无论如何,如果您坚持使用主要参与者(ColdBox、CFWheels、Mach II 或 Model-Glue),我想您会对 CF 可以为您提供的东西感到惊喜。

于 2010-07-29T14:43:41.163 回答
9

它必须是真正的冷箱

它在网站上有很好的文档,还有一书写得很出色,涵盖了面向对象编程的许多方面,以及其他主题。老实说,这本书给我留下了深刻的印象,超出了我的预期。

我喜欢这个框架的地方在于它在其处理程序中使用了冷融合代码,当我拿起它时,我认为其他使用 xml 的框架......不确定这是否已经改变。

如果您对 CFC 有一定的了解,那么该框架很容易上手,并且具有一些用于构建站点的有用功能。插件、调试工具栏、“漂亮 URL”的 URL 生根..

我不能对框架说得足够高..

这里还有一个非常有帮助的社区,他们非常及时地回答了我的所有问题。

于 2010-07-29T12:40:48.617 回答
5

我建议检查一下Mach-II。它被用于许多非常引人注目、高流量的网站,并且已经使用了多年。这篇博文在这一点上有点老了,但在一般的 Mach-II 以及谁使用 Mach-II 方面仍然有一些很好的信息。

它正在非常积极的开发中(不要让与其他框架相比较低的版本号欺骗了你),1.9 版即将发布,2.0 版的大计划。

Mach-II 的主要功能包括复杂的缓存和日志记录功能、用于帮助开发和监控应用程序的非常好的仪表板、带有数据绑定的丰富表单标签库等等。

于 2010-07-29T13:12:26.277 回答
5

我会选择 CFWheels 或 FW/1。对于那些刚接触 CF 框架的人来说,两者都非常容易使用(我仍然认为自己属于该组),并且没有像其他一些框架那样陡峭的学习曲线。Coldbox 看起来非常强大,但我很难理解它。

于 2010-08-25T15:10:54.357 回答
4

您可能还喜欢我的 SOS 和 COOP 框架。我们正在创建更好的公共文档。与其他选项相比,它可能更像您习惯的代码。

于 2010-07-29T12:10:33.760 回答
4

你也可以看看ColdBox。http://www.coldbox.org/ 大量文档和大量功能。

还有 Farcry 核心框架http://www.farcrycore.org/

必须说,您需要自己决定最喜欢哪个框架,或者是否构建自己的框架。这真的取决于你想从框架中得到什么。

对于 ColdFusion 8 的 ORM,您有 Transfer ORM ( http://www.transfer-orm.com ) 和 Reactor ( http://www.reactorframework.org/ )

不过,鉴于 ColdFusion 是 Java 服务器之上的 Java 应用程序,您没有理由不继续使用 Hibernate ( http://www.hibernate.org/ ) ColdFusion 9 确实使使用 hibernate 变得更加容易,但你暂时被困在 8 上。

于 2010-07-29T13:02:24.723 回答
-29

一切都是可以商量的。在 Rails 3 中重写 CF 应用程序将是最强大的方法。

建立在原则上的语言和框架——Ruby/Rails 3(和其他 Ruby 框架)、Python/Django 1.2(和其他 Python 框架)、ASP.NET MVC 2——一般来说是最好的使用方法。

ColdFusion 和 ColdFusion 框架无法比较,因为 ColdFusion 作为一种语言和作为一个库是随机组合在一起的,而 ColdFusion 框架(ColdBox、FW/1、Model-Glue、CFWheels、Mach II)只能做很多事情来平滑这一点. 例如:CF 作用域、缺少闭包、缺少可加载的类/组件(您可以实例化组件,但不能像这样加载组件)、笨拙的参数处理、映射、缺少实际应用程序、缺少委托和闭包,以及对语言和库的大多数方面的方便但不严格的方法。相比之下,列出的其他语言提供了严格性和严格性之上的糖分。

于 2010-07-29T13:08:25.100 回答