My 9 favorite ColdFusion 9 features
In case you haven’t heard: ColdFusion 9 Beta and ColdFusion Builder Beta are now available on Adobe Labs. Some of you may find this surprising (;-)) but I’ve been playing with CF9 for a few months now and actually really love it!
To give you a bit of an idea on what I like about CF9, I’ve listed my 9 favorite features.
1) Adobe AIR database synchronization
By enabling this feature in your AIR application (both on the server and in the client app), the application syncs the data from a ColdFusion datasource to a local SQLite database. On the server side, it’s as simple as setting the persistent property to true on an ORM component. On the AIR side, it takes a little bit more depending on the features you need. In some cases you may need things like conflict management but even something as complicated as that can be done with just a few lines of code. Read more about this feature.
2) Object Relational Mapping (ORM)
This was a true eye-opener for me. ORM allows you to do complex database calls without writing a single SQL query thus making your code a lot cleaner and more manageable. This is a serious time saver and your apps will even run faster because of the built-in ORM optimizations. Read more about this feature.
3) Flex integration
I’m not just talking about the data centric development features in Flash Builder here. By using the ColdFusion proxy ActionScript classes, you get access to several ColdFusion services without actually writing any ColdFusion code. You just call the ColdFusion service straight from your Flex code. Read more about this feature.
4) ColdFusion Builder
Not really a ColdFusion 9 feature but ok… ColdFusion Builder is an Eclipse based IDE for CF development that is deeply integrated with CF9. So it’s ok to post it in this list ;-) I absolutely love how easy it is to create your ORM code. With just a few clicks, you can create all the necessary CRUD code to use in your CF application or your Flex application. I also really like that it’s extremely easy to extend ColdFusion Builder with your own extensions. You can easily write those extensions using CFML. Read more about ColdFusion Builder.
5) ColdFusion as a service
Ever tried calling an Exchange server from a PHP server (or any other server)? Or read a PPT, DOC or XLS file? Did you have fun? ;-) Next time, you should consider using CF9. ColdFusion 9 has an exposed service layer meaning you have direct access to a bunch of CF9 services from any server language you use. You can even call them using SOAP. Read more about this feature.
6) Server manager
If you work with multiple CF servers, this is surely going to make you very happy. Server Manager is an AIR-based desktop application that allows you to centrally manage multiple ColdFusion servers from one location. Apply hot fixes, change configs, create data sources, etc to all servers at once. Read more about this feature.
7) Office application integration
Ever wanted to create a presentation (PPT) from an bunch of images? Or from an HTML page? The <cfpresentation> tag allows you to do that and more! With just a few lines of code, you can create, convert and read presentation files. The same thing goes for documents and spreadsheets. Read more about this feature.
8) PDF integration
With the enhanced PDF support in CF9, you can extract all the content form a PDF file. You can also update PDFs and even optimize them on the server. Read more about this feature.
9) <cfscript>
The <cfscript> tag was really confusing to me when I first started playing with CF. Some CFML tags could also be scripted and others couldn’t. With CF9, everything you can do with CFML, you can also do with <cfscript>. Read more about <cfscript>.
Obviously there are a lot more new and cool features in ColdFusion 9 and ColdFusion Builder but I thought 9 was an appropriate number ;-). Go ahead and download the public beta versions available on Labs and start playing with it yourself.






