160 likes | 330 Views
ColdFusion. Sandra Cadena-Torres IS-373 ~ Spring 2010. What is ColdFusion?. Application Development Platform (similar technologies: PHP, ASP, Ruby) ColdFusion Markup Language <CFOUTPUT>#variable#</CFOUTPUT> ColdFusion Builder (Eclipse-based IDE) Produced and sold by Adobe Systems
E N D
ColdFusion Sandra Cadena-Torres IS-373 ~ Spring 2010
What is ColdFusion? • Application Development Platform (similar technologies: PHP, ASP, Ruby) • ColdFusion Markup Language • <CFOUTPUT>#variable#</CFOUTPUT> • ColdFusion Builder (Eclipse-based IDE) • Produced and sold by Adobe Systems • Also produced as Open Source • Railo, BlueDragon
Popularity • “One of the most downplayed, best kept secrets in the development world when it comes to building applications.” –rip747 http://stackoverflow.com/ > 21,000 internet sites http://trends.builtwith.com/
Usage • Rapid development of Rich Internet Applications (RIAs) • Flash • Intranet sites, custom modules • Training, Content Management • > 75% Fortune 100 companies • Data-rich sites • E-commerce • 2 Editions: • Standard……$1299 • Enterprise…..$7499 • Web Services generation • SOAP, Flash remoting, SMS, IM • Vast interoperability
Specs: Environment • Operating Systems • Windows, Solaris, Linux, Mac OS • Web Servers • Apache, IIS, Sun Web Server • Databases • Oracle, Sybase, Microsoft SQL, MySQL, IBM Informix
Specs: Architecture • Java-based, installation runs on a Java application server • J2EE Servers supported • JBoss, Oracle WebLogic, IBM WebSphere • Not created as an OO language • Does not support multiple inheritance
CFML • Core Libraries • Tags > 100, Functions > 200 • Built-in interoperability: PDF, Office functionality • Extensible: Custom tags • File manipulation: <CF_filename> • Extensions • File: .cfm / .cfml • Component: .cfc • Scripting languages • ActionScript • CFScript: similar to Javascript
CFML Snippets • Inserting data to a database: • <CFQUERY NAME=”insert_data” DATASOURCE=”test_source”> • INSERT INTO name_table (NAME, TELEPHONE) • VALUES • ('#Form.NAME#', '#Form.TELEPHONE#') • </CFQUERY> • Outputting data to a table: • <CFOUTPUT QUERY="select_data"> • <tr> • <td width="50%" align="center">#NAME#</td> • <td width="50%" align="center">#TELEPHONE#</td> • </tr> • </CFOUTPUT> Source:http://www.unt.edu/benchmarks/archives/2001/november01/coldfusion3.htm
CF History • Created in 1995: Brothers J & J Allaire • Original application web server • Allow HTML connectivity with databases • Initially DBML extensions • Both a language and an application server • V.2: Full platform IDE & scripting language • < V.6: built on Microsoft Visual C++ • V.6: Flash integration • Macromedia owned in 2001 • Adobe owned since 2005
Governing Standards Body • Original proprietary (de facto) • Becoming less closed • Open Source CFML: Railo, BlueDragon • Open DB integration, XML files & Java architecture • Licensing costs high • No costs for CF compatibility • Main development run by Adobe
Advantages • Ease of use • Easiest tool to learn after HTML • Quick Web services (CFCs) & DB connectivity • Versatility with multiple O/S support • Interoperability • Adobe family • <CFPDF> • Competitor technologies: .NET • Popular tools: MS & OpenOffice • <CFDOCUMENT>, <CFPRESENTATION>, <CFSPREADSHEET> • Code mixing with Java • Libraries & classes
Advantages • Robustness • Built upon J2EE • Enhanced performance & resourceful functionality • Scalability • Server clustering • Pervasiveness • Adobe family support • Flash as Presentation component • Backward compatibility • Supports Windows after Java switch
Drawbacks • Lesser Popularity • Licensing costs • Open Source options, lower licensing $ • Site in ASP $15,000 / CF $3,000 • Poorer developer skills • Not as many developers, lesser competition • Poorer programming practices • Poorer community support • Lesser communication than similar technologies • Some support in forums, events, publications
Conclusion • ColdFusion has low popularity but strong pervasiveness • Less time to code more robust applications • Strong support by Adobe • “When I convince a client to take ColdFusion, I simply tell them that if they don’t see the savings in time and benefits in results, I will buy their license from them. I’ve never had to buy one.”–Jas Panesar