Wednesday, June 6, 2007

Acropolis CTP

I've had an initial look at Acropolis and I must say that it's very interesting. It has a strong SCSF influence but the experience is simplified and improved. Acropolis provides a DSL to help you assemble the components in a module. With SCSF, you needed to assemble a module in code using a WorkItemController. Acropolis achieves the same result by providing a design surface with drag and drop to configure services, views, connection points etc.

Acropolis provides product line templates, targeting different application types. When you create an acropolis solution, you nominate the targeted product line, e.g. document based application, wizard based application, etc. You then use a wizard to configure the application workspace and user interface extension sites. For example, you could choose a document style application with tabbed workspace, a main menu bar and a status bar.

Inside your application, there is a very clear distinction between views and business logic. Acropolis provides a DSL for designing parts. A part is similar in concept to the view & presenter combination in SCSF. However, you use the part DSL to configure connection points between the view and presenter. In this context, a connection point could be a data provider, notification, property etc. The idea is that you can define the relationship between view and business logic in a very concise way.

WPF plays a pivotal role in Acropolis. Don Box wrote an interesting blog entry that highlights the role of WPF in separating model, view and presenter. Acropolis formalizes this approach by introducing a design surface and components that lead to clear MVP separation.

Remember that although XAML is the enabling technology for WPF, it is only mark-up and is ultimately used to generate code. With code and partial classes, you can write whatever rubbish you like under the bonnet. WPF and XAML are a great part of the overall solution but insufficient on their own to make sure that developers correctly follow the MVP pattern. The DSL introduced in Acropolis goes a long way towards bridging the gap.

Checkout the video introduction on Acropolis and if you're interested, download link for the Acropolis CTP.

Technorati Tags: ,

No comments:

Post a Comment