关闭

为什么选择Coldfusion

1990人阅读 评论(0) 收藏 举报

1: ColdFusion的定义 
  ColdFusion可以从两方面来定义,它既是一种应用服务器也是一种编程语言。很多开发人员常常把它们当成一件事,他们用ColdFusion语言(CFML - ColdFusion Markup Language)来编写应有程序,并把编写的应用程序运行在ColdFusion服务器上。 但是用ColdFusion语言编写的应用程序可以运行在其它支持CFML的应用服务器上,如J2EE应用服务器,这样一来就给那些高端的应用服务器提供了另一种简洁高效的开发语言。不管您选择使用ColdFusion应用服务器还是选择使用其它的应用服务器,CFML语言都为您提供了一个快速开发功能强大的应用程序的有效方案。


2: ColdFusion的历史有多久?
  ColdFusion开始于1995年,是历史最悠久的最为成熟的互联网应有服务器。


3: 有多少企业组织或个人使用ColdFusion? 
  在全世界范围内有超过1万个组织,12万台以上的服务器在运行ColdFusion.


4: 有多少开发人员在使用ColdFusion? 
  保守估计,大概有35万。但实际上的数字远远大于35万,一台运行ColdFusion的服务器上可以运行的多个ColdFusion程序,因此在一台服务器上进行开发的程序员也会有很多。


5: 和其它应用服务器相比,ColdFusion有多少成功? 
  应该说是非常成功的,ColdFusion是商业(需购买)应用服务器中的佼佼者,在使用量上仅次于ASP。在财富100当中有超过75%的企业在使用ColdFusion.


b6: ColdFusion可以编写那些类型的应用程序呢? 
  ColdFusion可以用来编写各种各样的应用程序,包括动态互联网网站,电子商务网站或门户网站,但最主要的还是大量的企业内部互联网应用程序和数据库相关的应用程序。这一点始终是也将一直会是ColdFusion的强项。


7: 为什么我能看到的用ColdFusion开发的站点并不是很多? 
  其实用ColdFusion开发的站点是非常多的。但是由于大多数基于ColdFusion的应用程序都是企业内部互联网应用程序给以及和敏感数据库相关的应用程序,并不是对外公开的。所以看上去用ColdFusion的并不是很多。如果您想了解一下那些重要的企业在使用ColdFusion请访问如下地址:http://www.macromedia.com/
www.forta.com/cf/using/


8: 为什么那些公司会花钱购买ColdFusion,而不使用‘免费’的ASP或PHP? 
  说其它的一些应用服务器是免费的其实有点言过其实。的确,一些应用服务器可以被免费下载,但所提供的只是一些基本的核心的功能。在ColdFusion中提供了大量非常重要的功能和服务,如图表生成,全文搜索以及其它一些有用的模块如文件上传的处理和电子邮件的处理,而在ASP或PHP中这些模块都是要另外购买的。 最近的一项估算表明,如果要在ASP中加上ColdFusion专业版所提供的所有功能,总成本会到达3万美元。与此同时售价低于1千美元的ColdFusion专业版却集成了这些功能。而这还不包括由于使用了ColdFusion而减少的学习以及开发所需的周期和成本。


9: ColdFusion是不是属于专有技术,使用专有技术是不是很难得到保障? 
  不,ColdFusion不是专有技术。事实上,有不少其它产品(通过其它厂商)也是用CFML(或部分)来实现的。另外,ColdFusion充分利用了大量公开的技术标准,从数据库的集成(JDBC ,ODBC)到用XML来实现配置文件到使用J2EE作为ColdFusion的底层核心。


10: 什么是CFML? 
  CFML的全称是ColdFusion Markup Language,是一种特别适于用来编写互联网应用程序的语言。CFML看上去和传统的编程语言并不太一样,更接近HTML,因此和HTML一样非常的易学易用。CFML可以在ColdFusion应用程序服务器上运行,也可以在其它一些应用程序服务器运行。


11: 经常看到有人在说CFML并不是一种真正的编程语言,它到底是不是呢? 
  如果你能用CFML来编写程序,那它当然就是一种编程语言。至于为什么会有这种疑问,原因之一是CFML看上去和传统的编程语言不太一样(基于标签而非基于脚本)。这里有几点我们需要记住:
1)CFML是模仿HTML而设计的,主要是因为HTML易学易用,并且这也是HTML是互联网成功的原因之一。
2)CFML完全符合传统编程所需的基本要求(如流程控制,条件判断等),通过 和MX中新的SSAS(Server-side ActionScript)也可以实现脚本编程。
3)CFML是一种功能强大的编程语言,包括了100多个标签和200多个函数,能够满足常用的编程需求以及一些不常用的需求如:和LDAP交互,处理XML,支持COM和CORBA,图表生成和全文搜索等。
4)比较有讽刺意味的是,在过去的5年里,CFML由于是基于标签的语言,所以常被说为不是一种真正的编程语言,但现在在ASP.NET中也能看到这种风格,在JSP中实际上也是在Java代码中嵌入了标签,更别提XML,完全是基于标签的。由此可见,CFML走的这条路是对的。


12: 什么是.CFM 和.CFC? 
  CFML代码常被保存为以.CFM 或.CFC 为扩展名的文件中。.CFM 是ColdFusion的标准扩展名,它可以是普通的文本文件,由其它文件所调用的文件或是自定义标签文件。.CFC 是ColdFusion的组件文件(可以被重复调用的ColdFusion对象)


13: ColdFusion是不是只是用来实现低端或入门级解决方案的? 
  当然不是。ColdFusion只是一种工具,能用这种工具做什么完全取决于你的能力。对于一些初学者来说,Coldfusion是一种简单的技术,用ColdFusion来开发一些简单的产品和入门级解决方案也的确非常容易。但这并不是说ColdFusion就只是用来实现低端或入门级解决方案的。不像其它的一些学起来非常容易的技术只能用来实现简单有限的功能,ColdFusion可以用来开发功能异常强大的解决方案。除了一些低端,入门级的解决方案,还有大量高端,至关重要的解决方案都是用ColdFusion来开发的。


14: ColdFusion是不是会让开发者养成不正规的编程习惯。 
  当然不,ColdFusion提供了所有必须的要素用以编写伸缩性强,结构性好,易于管理和维护的代码。ColdFusion并不强制你使用某种开发习惯或逻辑方法,ColdFusion最初的设计初衷就是要让开发者能通过一个简单的语言来高效的实现所需的功能。当然有很多开发者往往是在有一个清楚的想法之前就开始动手写代码了,然后在一点一点的完善他的想法。实际上也并不是所有的程序的开发都需要严格遵守并采用MVC设计模式。当然ColdFusion完全支持MVC设计模式(通过ColdFusion组件)并且也因该尽可能的使用。换句话说,ColdFusion不会让你养成不正规的编程习惯并在以后的开发过程中感觉力不从心,不管你处于那种开发水平,ColdFusion总是能满足你的要求并且帮你一点一点的进步。


15: 我没有任何编程经验,ColdFusion是不是也适合我? 
  绝对适合,当然你最好有HTML和SQL的基础知识,而且如果没有的话,用Dreamweaver MX也能完成一些开发。不像其它的一些编程语言,需要通过几周或几个月的学习,在学习ColdFusion几个小时以后你就能完成简单的开发了。


16: 我是一个有经验的 C 或/和 Java程序员,我有没有必要使用ColdFusion呢? 
  C 和 Java 是功能非常强大的低级编程语言,非常适合编写需极强处理能力的后台进程。但却非常不适合用它们来生成HTML给浏览器或处理HTML中的表单。在这方面它们没有什么优势。事实上一个比较好的方案是把ColdFusion和他们结合在一起。让ColdFusion来处理表现层,而用C 或 Java 来处理后台。


17: 我是一名Flash开发人员,需不需要用到ColdFusion? 
  作为一名Flash开发人员,你一定了解开发能给用户带来丰富使用体验,极具交互性的互联网应用程序的重要性。Flash常被用来制作动画,简介,广告和一些特殊效果等等,但Flash还能用来实现更多的应用。Flash非常适合用来充当基于互联网应用程序的前台界面,而ColdFusion正好非常适合用来帮Flash处理后台任务。从Macromedia推出FlashMX和ColdFusionMX来,两者之间的结合应用就变得非常简单和高效 - Flash作为客户而ColdFusion作为服务器。


18: 我们公司的技术选型是定位在J2EE平台上的,是不是就不能用ColdFusion了呢?
  正好相反,你们公司选择的是一个非常有战略意义的方案来建立你们的信息平台,这种方案可以让你用到一些功能强大的技术,也是现在越来越被看好的方案。J2EE(Java平台)提供了一个能建立稳定,健壮极具伸缩性的应用程序的结构体系。但是它却需要更高的成本(不仅仅是软件本身的成本)J2EE平台的开发是非常复杂的,超过了大多数公司的技术人员的能力。而且就是对那些经验丰富的Java程序员来说,也不是所有的东西都需要用Java来实现。而ColdFusion MX可以运行在J2EE平台的顶端,利用J2EE所带来的强大结构和原有的投资,同时使得不懂Java的人也能利用它。或换句话来说,通过这种方式,ColdFusion MX 能让不懂Java的人利用Java的强大处理能力同时有能完成更多的应用开发。所以选择J2EE的并不意味放弃ColdFusion,对你来说反而是一种明智的选择 - 你已经花了大量的成本,再多加一点ColdFusion的成本,你就能使你的信息平台实现更多的功能。


19: ColdFusionMX的底层是基于Java技术的,那现在或将来在微软的Windows平台上会有什么问题吗? 
  大多数的ColdFusion都是安装在微软的Windows平台上的,并使用一些微软的后台产品(如SQL服务器)。所以无论如何对微软的Windows平台的支持都是不会被放弃的,而且随着ColdFusion MX对.NET的结合,这种支持会越来越被重视。同时,ColdFusion还能在大量非微软平台上运行,如:Linux, Solaris, 和 HP-UX。 也能使用各种各样的数据库,如:Oracle, DB2 和 mySQL - 所以ColdFusion是业界最灵活的产品。


20: 对任何一项技术来说,活跃的用户讨论群都是成功的关键之一,ColdFusion有没有类似的用户社区? 
  ColdFusion用户一直以来都是非常具有社区性的,而且ColdFusion的成长和发展方向很大程度上也都是由ColdFusion用户群来决定的。有数不清的讨论组,论坛,出版物和用户组和活动(包括有Macromedia组织的活动和非Macromedia组织的活动)。


21: Macromedia会不会专心致力于ColdFusion的发展? 
  一定会的。实际上,最新版本的ColdFusion(第一个完全由Macromedia开发的版本)是一个ColdFusion史上最大的开发小组所完成的,投入了大量的人力和物力。这一点就表明了Macromedia对ColdFusion和ColdFusion用户的承诺。 

About the author 
Ben Forta is Macromedias senior product evangelist and the author of numerous books,including ColdFusion 5 Web 
Application Construction Kit and its sequel, Advanced ColdFusion 5 Development. Ben is working on several new titles 
on ColdFusion MX. 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1050148次
    • 积分:13804
    • 等级:
    • 排名:第944名
    • 原创:305篇
    • 转载:28篇
    • 译文:0篇
    • 评论:592条
    最新评论
    [╄ 冷枫]简介