The entire Adobe Flex team is delighted to introduce you to Adobe Flash Builder 4, formerly known as Adobe Flex Builder. Over the past two years, we’ve been working to evolve more than just the name of the product. We’ve taken the development environment for creating great applications for the Flash platform in exciting new directions to deliver productivity to developers of all types. While the name has changed, this is still the evolution of Flex Builder 3—a professional-grade, Eclipse-based development tool designed to help you rapidly build rich Internet applications (RIAs) and content using the open-source Flex framework—but with an incredible collection of powerful new features.
This final release builds on top of the two public betas released during 2009. All of the features previewed in the beta releases are now complete and you’ll find several new additions in the final product as well. This brief article will introduce you to just a few of these new features. In case you want the detail on every new feature included in this version of the product (and there are 70+ new features), I’ve listed them out in my blog post, together with links to documentation so that you can learn more. Also be sure to check out all of the other content on the Adobe Developer Connection site for more details. We’ve posted many outstanding videos, articles, and samples to get you started with your experience with Flash Builder 4.
Focusing on new features
Most Flex applications begin with a focus on either design or data, and then move through a process of coding and testing before being deployed. This process inspires the three main feature themes you will find in this release:
- designer/developer workflow
- data-centric development
- IDE productivity and testing
Improving designer/developer workflow
When an application begins with a very specific design as its inspiration, ensuring that the details of the design are realized in the final application is critical. How does content move from Adobe’s leading creative tools through the process of adding interactivity and finishing with complete integration with the application logic and the application’s servers and/or services—all while still remaining true to the original designer’s intent? That question is answered with our designer/developer workflow theme. It’s all about empowering better collaboration between developers using Flash Builder and users of Adobe’s creative tools, with emphasis on two key products in the Flash platform: Adobe Flash Professional and Adobe Flash Catalyst.
New workflow
For Flash Professional, Flash Builder 4 features a new workflow for adding Flash content to a Flex application: simply drag out the “New Flash Component” or “New Flash Container” item from the Components panel and place it anywhere on the design canvas. You can launch Flash Professional and create or edit the content, and then click “done” to return to Flash Builder 4 with the FLA and SWC files exported to the Flex project.
In this release we’ve also worked to improve interoperability between Flash Builder and Flash Professional – from within the next version of Flash Professional you will be able to select Flash Builder 4 as your default code editing environment for ActionScript, rather than using the built-in Actions panel. Alternatively, you can choose to create a new Flash Professional project within Flash Builder 4 – simply designate an FLA to work with, code the necessary ActionScript classes and then you can initiate publishing, testing and debugging in Flash Professional right from within Flash Builder 4.
Adobe Flash Catalyst
Adobe Flash Catalyst is a new product that makes it easy for designers to create RIA user interfaces, based on the Flex framework, from artwork imported from Adobe Creative Suite tools. Flash Builder 4 provides a simple workflow for importing either an entire project or a set of component skins from an upcoming version of Flash Catalyst, thus allowing designers to collaborate with developers more easily than ever before.
Enabling data-centric development
While many applications begin with comprehensive design, many more start instead with data. You may be creating a dashboard to provide insight into a corporate database, or perhaps your application will provide a new front end to an existing ColdFusion or PHP application; or you might be relying heavily on third-party services based on REST or SOAP, for example. While the server or service details may change, the basics are the same: you need an easy way to connect to all of those services and bind them to Flex components. That is the essence of the data centric development theme in Flash Builder 4. Whether you are an experienced Flex developer or a web application developer new to the technology, these features will dramatically speed up your work and enable you to develop data-oriented experiences that are extremely difficult or impossible to deliver just with HTML in the browser.
Data-centric development with Flash Builder 4 comprises three main stages:
- defining a data/service model
- binding service operations to Flex components
- implementing advanced data features like paging and data-management
Data/service modeling and binding made easy
The data/service model is an approach to representing all of your server or service operations and the data that they return in the Flash Builder 4 environment. You begin by letting Flash Builder introspect your existing logic—ColdFusion components, PHP classes, Java classes, web services, HTTP-based services or even local XML data files . Flash Builder then represents those services in a tree view on the new data/services panel: you can have many different services based on different back-end technologies, all represented within one model. And binding the result of any of your server-side operations to a Flex component (like a datagrid or list) is as easy as dragging and dropping the operation’s name onto the component. You can easily use services to generate forms for master/detail functionality, and create charts, too.
If you haven’t already created your existing logic, Flash Builder 4 can create sample services for you, either for PHP or ColdFusion environments. You can identify a table in your database and Flash Builder 4 will generate a ColdFusion component or PHP class with all of the common data access operations fully implemented. It’s a great way to get up to speed quickly with real running server-side logic to help you understand how services can be implemented.
Advanced data management features
Of course, data-centric applications are about more than just binding operations to components. Flash Builder lets you enable client side data management for your services, allowing on-demand fetching of data for easy and efficient scrolling through large collections of data; change tracking, allowing users to undo actions, and automating the common CRUD (create, read, update, & delete) functions that usually need to be hand-coded. The results are applications that deliver users a richer experience than is possible with ordinary HTML front ends.