วันอังคารที่ 20 มกราคม พ.ศ. 2552

Adobe Creative Suite

Adobe Creative Suite is a complete family of development tools including Flash, Photoshop,
Dreamweaver, Illustrator, After Effects, and Acrobat. It’s essentially all you will ever need, and then
some, if you work in the field of creative design and web/print/video production!
Since Adobe acquired Macromedia, great advances have been made in terms of product integration—
all of these applications come together to allow for streamlined workflows. For example, a designer
could sketch something using Photoshop, convert it to a vector graphic using Illustrator, and then
import it directly into Flash with any layers left intact.
When should you use it? All of the time!
Any alternatives? There are certainly a host of alternatives, from free software such as GIMP to more
commercial offerings. The downside, especially compared to Creative Suite 3, is that they tend to lack
the same level of product integration.

Cairngorm

Cairngorm is an ActionScript 2.0 and 3.0 framework that can be used to build more complex Flash and
Flex applications. It is based upon industry-standard programming design practices and provides a
robust Model-View-Controller (MVC) architecture to build upon.
When should you use it? When you are tasked to build a fairly large application, Cairngorm can help
you build something that is architecturally sound.
Any alternatives? Many open source pattern-based frameworks exist; however, few offer mature Flex
support. Of particular note is PureMVC (http://puremvc.org), an ActionScript 3–based framework
that is emerging as a serious competitor for Cairngorm. For ActionScript 2.0 development, it might be
worth looking at ARP (http://osflash.org/arp), developed by Flash guru Aral Balkan.

Flash Remoting

When developing rich Internet applications, you often need to retrieve data from a web application
server—this is where Flash Remoting comes in, allowing you to integrate with ColdFusion, .NET, Java,
and SOAP services on your server. It simplifies the development of XML-based messaging services and
offers fairly decent performance; in addition, it offers the AMF protocol, which is a way of serializing
data and transmitting it to clients, with significant performance advantages over straight XML.
In many ways, this is the little brother to LiveCycle Data Services—with a much smaller price tag and a
feature set that reflects this.
When should you use it? When you are developing a data-driven rich Internet application but do not
have the volumes of data or requirements to justify the added price tag.
Any alternatives? OpenAMF is a good J2EE-based solution. Libraries are also available for popular languages
such as PHP, Ruby, Perl, Python, and .NET. You can find many alternatives on the open source
Flash website (http://osflash.org).

Flash Media Server

Flash Media Server is Adobe’s solution to the provision of streaming audio and video content, offering
advanced features such as support for interactive and on-demand content. There is also support for
live broadcasts and conferencing.
When should you use it? When you have a need to provide large volumes of streaming media. If you
are simply integrating a few FLV files, then Flash Media Server might not be an economically variable
option when you consider the features that are not being used.
Any alternatives? Red5 (http://osflash.org/red5) is a fully featured open source alternative.

Flex Charting

Builder to provide a library of rich charting components that can be used to provide interactive data
visualizations. These can be styled as required using CSS and extended to create totally new types of
chart.
When should you use it? When you have the requirement to present data as a graph or chart.
Any alternatives? You can find some third-party components if you look around; however, few offer
the same levels of customization.

Flex LiveCycle Data Services

This is an optional component that can be used to develop Flex applications that rely heavily on data
stored on an application tier. Flex LiveCycle Data Services can be deployed on a Java 2 Enterprise
Edition (J2EE) application server, and it supports many forms of data synchronization, including remote
data push—where the server sends data to the client, rather than the client polling the server for
updates, which can be very bandwidth intensive. Also included is built-in support for offline applications
and occasionally connected clients.
Flex LiveCycle Data Services is licensed per CPU and can be a pricey option for smaller applications;
however, enterprise customers might find this a more attractive option because they are more likely
to use a selection of features.
When should you use it? When you are building a data-intensive application where performance is a
high priority.
Any alternatives? If performance is less important, it might be worth looking at Flash Remoting
(covered in a moment) or some of the open source alternatives such as Granite Data Services
(http://sourceforge.net/projects/granite/).

วันอังคารที่ 13 มกราคม พ.ศ. 2552

Working with the Adobe Flash Platform

Flash and Flex are part of a much bigger picture when it comes to Adobe’s long-term product strategy.
Also part of this strategy is the Adobe Integrated Runtime (AIR), which we will cover later in this book.
This strategy comprises five key elements:
Universal formats, including HTML, SWF, and PDF, with cross-platform reach and extending
across many different operating systems and devices. This is not necessarily confined to the
web browser, with the AIR platform serving as one example of liberating applications from the
confines of the browser and making them available on the desktop.
Platform abstraction, allowing for predictable application behavior and performance across all
platforms, rather than other technologies that place dependencies on particular web browsers
and platforms.
Server-side applications, providing capabilities that can be leveraged by client applications in
order to aid the development of compelling data-driven experiences.
Extensive development tools, which are designed to integrate with design and development
workflows, optimizing the production and development process.
A sizable and enthusiastic community of designers and developers located around the world.
All these elements together go a long way to ensure that the Flash Platform is a stable and lucrative
platform for developers that offers many opportunities to develop great applications and experiences.