| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45
Back To Interview list
In this CFUN-04 interview, Michael Smith interviews Tom Muck about his talk on "Flash Remoting."
Michael Smith: Why should programmers learn about remoting, Tom?
Tom Muck: In this era of Rich Internet Applications, there are many different ways that a programmer can create an RIA app -- Flash Remoting, web services, XML, LoadVars, etc. Flash Remoting is the best way for a ColdFusion server to communicate with a Flash movie because it is a binary format with a small packet size. This translates to great savings in bandwidth and creates a better user experience because the time lag between the call to the server and the response from the server will be shorter.
MS: How much shorter?
TM: A Flash Remoting response will be roughly 1/4 the size of a web service response.
MS: Any other benefits?
TM: Yes, the added advantage for ColdFusion programmers is that Flash Remoting is built into the CFMX server. A side benefit is that almost any existing CFC or web service can also be used as a Flash Remoting service so that a service can be used in an HTML app, a Flash app, and a web service at the same time.
MS: Wow, that sounds both neat and a bit complex! Will you show us how to create a CFC in the session? And what does CFC stand for anyway?
TM: I won't go into details on creating CFCs (other sessions at the conference will do that) but I will show a few simple ones and also explain any difference between a CFC created for Flash Remoting and a CFC created for a regular ColdFusion application. The only real difference is that the Flash Remoting CFC will have an access attribute set to "remote".
CFC is short for ColdFusion Component. All ColdFusion programmers should be using them because they allow you to separate content from presentation.
MS: And by separating content and presentation maintenance is easier... Could you even swap out the front-end for a different "skin" to the application without changing code in the back-end?
TM: Exactly. An example of this is a Community MX CFC that was written to drive a site search, but is also being used as a public web service, a Flash Remoting application, and a Central application.
MS: Does remoting just send data to Flash or is it two-way? How real time is the interaction?
TM: Remoting is always initiated at the client -- a Flash application calls a method of the CFC (a CFFUNCTION within the CFC) and the result is returned to Flash seamlessly. The advantage over HTML is that this interaction is done behind the scenes so the end user is unaware that the client/server interaction is taking place. There are no screen redraws or page reloads.
MS: Does that make a Flash app more responsive than an HTML app?
TM: Yes, much more responsive. The initial load time will be longer, but then the app will act more like a desktop application than a web application. Web users have become accustomed to the click-wait-reload approach of an HTML app, but a Flash app changes all that. The Flash app will only have to transmit the method calls and the responses -- there is no page to reload.
MS: Are there any other benefits of using Flash over HTML for applications?
TM: Yes. Flash Remoting ties Flash and ColdFusion together seamlessly so that when you are building your Flash application, you are making calls to the server as easily as if you were making calls within the application itself. Many times you forget that the client and server are two separate parts. This is unlike the HTML/CFML templating that the ColdFusion developer is used to where the server code is sprinkled throughout the HTML. Using a simple dropdown list as an example: If you've ever populated one on a ColdFusion/HTML template page, you have CFQUERY tags, SELECT tags, CFOUTPUT tags and OPTION tags all mixed together. Using Flash and Flash Remoting, you call a remote method and bind it to the dropdown list. It's much more intuitive.
MS: That sounds really exciting - I can't wait to see your session.