BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News Separating Views from Business Logic with Acropolis

Separating Views from Business Logic with Acropolis

Bookmarks
Microsoft's GUI toolkits tend to encourage developers to tightly couple business logic with presentation. Comparing the original VB and ASP or WinForms and ASP.Net, one sees very little change in this regard. Acropolis is different though, and for the first time since MFC it looks like Microsoft is taking the concept of separation of concerns seriously.

The first thing to know about Acropolis is that it is not a new GUI toolkit. As it relies on Windows Presentation Foundation, everything it offers can already be done by .NET developers. What it offers is a higher-level abstraction for building applications that goes beyond the blank form developers are used to.

The Acropolis framework is going to be heavily tooled with wizards and deep integration into Visual Studio. The goal is to speed development by getting developers to focus more on business logic of an application and less on the overall GUI framework and look and feel issues.

Brad Abrams has an article demonstrating separation of concerns using Acropolis. In addition to showing two different GUI views, he also mentions that Acropolis can be used for non-WPF applications including those targeting the console.

By encouraging developers to naturally separate the business and presentation logic, it should be easier to develop unit tests against the business logic. The inability to effectively unit test user interfaces has long been a sticking point for those trying to use techniques like Test Driven Development.



Rate this Article

Adoption
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

BT