Intentional Software - Democratizing Software Creation
Business users doing programming? Simonyi and Kolk presents how Intentional Software offers a radical new software approach that separates business knowledge from software engineering knowledge.
Tracking change and innovation in the enterprise software development community
Posted by Moxie Zhang on Jan 24, 2008 12:41 AM
In an article published on Adobe Flex Developer Center, Bill Bejeck shares his experience creating components and enforcing separation of concerns with Flex, from a Java developer's perspective.
Bejeck's first impression when started using Flex was:
As a Java developer I was surprised at how familiar ActionScript 3.0 was, making the learning curve fairly flat. Once I started using Flex, it was great to see that I could use most, if not all, of the approaches to writing software that I was used to.
In the article Bejeck is trying to create components with a mixture of inheritance and composition, and enforce separation of concerns, especially between view and business logic. His Java application development skills come in handy. As he writes:
As an experienced Java web developer, I learned over time that a JSP page should be used only for presentation. All business logic should be in classes, and if you absolutely had to have code in your JSP page, you would wrap it up in a custom tag.
In Flex, ActionScript code can be included in a MXML file using
This is an architectural approach for building an application. If you are doing quick prototyping, there is no need to always use the "code behind" technique.
Then, Bejeck goes on describing the process in details, with code segments, on how he extended the Flex build-in visual components such as DataGrid, Panel, TextInput and Button to construct custom components and event handlers. At the end, a simple 8 lines of code MXML file is shown for rendering the UI and to demonstrate the clean UI design.
Bejeck concludes:
As you can see, by using the "code behind" approach, your code is very concise and maintainable. As you develop more complex applications, not only would you have a palate of components, but maintenance and changes to your applications would be very manageable.
Bejeck also recommends two books in the article to readers who are interested in learning more about programming in ActionScript 3. They are
IBM Web 2.0 Developer eKit: Free Tutorials, Webcasts, Whitepapers
Rational Model Driven Development eKit: Examples, Tutorials, Webcasts
IBM software architect eKit: Grady Booch podcast, whitepapers, articles
Scale your applications without punishing your database
SpringSource Launches New Application Server without Java EE
As a Java developer that learned flex I agree with author, the learning curve was almost nothing. There are a few small thins that annoy me about Actionscript, but none of them affect my productivity, the maintainability of my code, or the quality of the final application. I think the author should also have mentioned the cairngorm framework for Flex. Cairngorm makes it easy for you to apply some of the most common design patterns in flex. From the point of view of a Java developer, used to using frameworks, it feels very natural.
Business users doing programming? Simonyi and Kolk presents how Intentional Software offers a radical new software approach that separates business knowledge from software engineering knowledge.
Jason Rudolph discusses Java/Grails integration, Grails plugins, creating a Grails sample application, Grails app structure, data querying and persistence, validation, controllers and tag libraries.
The Scrum Product Owner role is powerful, valuable and challenging to implement. It brings healthier relationships between customers and developers, and competitive advantage - if you do it right.
Effective Java, Second Edition by Joshua Bloch is an updated version of the classic first edition, which won a 2001 Jolt Award. InfoQ asked Bloch questions about the areas that the new edition covers.
A new article by I. Drobiazko and R. Zubairov introduces v. 5 of the Apache Tapestry component-oriented web framework. The tutorial shows how to create a component and covers IoC in Tapestry and Ajax.
In this interview, Burton Group consultant Pete Lacey talks to Stefan Tilkov about his disillusionment with SOAP, his opinion on REST, and addresses some of the perceived shortcomings REST vs. WS-*.
Jay Fields presents his concept of Business Natural Languages - a type of Domain Specific Languages geared towards being readable by domain experts.
Adoption and interest for Distributed Version Control Systems is constantly rising. We will introduce the concept of DVCS and have a look at 3 actors in the area: git, Mercurial and Bazaar.
1 comment
Reply