ColdFusion:是否存在 Application.cfm 优于 Application.cfc 的用例
ColdFusion: Are there any use cases where an Application.cfm is preferable to an Application.cfc
我正在升级大量使用 Application.cfm
模板文件而不是较新的 Application.cfc
文件的大型遗留 ColdFusion 应用程序。
似乎 Application.cfc
为 Application.cfm 文件可以做的所有事情提供了一个更清晰、更有效的解决方案。
- An
Application.cfm
为每个请求按顺序运行每一行,所以
它会在每个后续的新页面查询上重新创建应用程序变量。
(如果很多,可能会导致性能下降
已加载应用程序变量)The Application.cfc
允许某些真正的全局变量以避免使用 onApplicationStart()
和 onRequestStart()
方法重新创建
有没有人遇到 cases/examples(除了明显需要移植的时间)其中 Application.cfm
页面优于 Application.cfc
IMO,这不是 "too broad" 主题。这不是意见,我将其归类为最佳实践。
使用 cfc
而不是 cfm
的理由有很多。我一直处于这种情况。
这是 Application.cfc
中可用的 list of the common functions(我相信你知道):
- onApplicationStart()
- onSessionStart()
- onRequestStart()
- onRequest()
- onRequestEnd()
- onSessionEnd()
- onApplicationEnd()
- onError()
在不深入了解每个变量的细节的情况下,能够将您的代码分类到像这样的上下文桶中将使您能够更好地管理各种变量范围。如果没有这些上下文触发器,您只是在回复 Application.cfm
的程序方面。
虽然在每个页面请求中两者都是 运行,但 cfc
中只有某些函数是 运行。 cfm
,您一直都有代码 运行ning,检查何时应该或不应该 运行 的条件。
坚持使用 cfm
肯定风险较小,但如果您要升级它,您应该预料到您会在升级过程中出现问题。采用最佳实践应该是这个过程的一部分。
我正在升级大量使用 Application.cfm
模板文件而不是较新的 Application.cfc
文件的大型遗留 ColdFusion 应用程序。
似乎 Application.cfc
为 Application.cfm 文件可以做的所有事情提供了一个更清晰、更有效的解决方案。
- An
Application.cfm
为每个请求按顺序运行每一行,所以 它会在每个后续的新页面查询上重新创建应用程序变量。 (如果很多,可能会导致性能下降 已加载应用程序变量)The Application.cfc
允许某些真正的全局变量以避免使用onApplicationStart()
和onRequestStart()
方法重新创建
有没有人遇到 cases/examples(除了明显需要移植的时间)其中 Application.cfm
页面优于 Application.cfc
IMO,这不是 "too broad" 主题。这不是意见,我将其归类为最佳实践。
使用 cfc
而不是 cfm
的理由有很多。我一直处于这种情况。
这是 Application.cfc
中可用的 list of the common functions(我相信你知道):
- onApplicationStart()
- onSessionStart()
- onRequestStart()
- onRequest()
- onRequestEnd()
- onSessionEnd()
- onApplicationEnd()
- onError()
在不深入了解每个变量的细节的情况下,能够将您的代码分类到像这样的上下文桶中将使您能够更好地管理各种变量范围。如果没有这些上下文触发器,您只是在回复 Application.cfm
的程序方面。
虽然在每个页面请求中两者都是 运行,但 cfc
中只有某些函数是 运行。 cfm
,您一直都有代码 运行ning,检查何时应该或不应该 运行 的条件。
坚持使用 cfm
肯定风险较小,但如果您要升级它,您应该预料到您会在升级过程中出现问题。采用最佳实践应该是这个过程的一部分。