Sunday, May 24, 2009

Interesting New Visual Studio Features

Dodeca has an interesting, best-of-breed architecture that features a .NET user interface connected to a pure Java server via web services. We selected .NET for the richness of the user interface elements, especially the spreadsheet functionality available in the SpreadsheetGear component we deliver as part of our product. Java was selected for the server component due to it's enterprise scalability and its 'Write Once Run Anywhere' mantra that makes it possible for our customers to deploy on Windows, Unix or Linux. Finally, the web services paradigm is found everywhere now as part of the Service Oriented Architecture (SOA) wave that is spreading throughout the IT world and forms the basis for the Oracle Fusion Middleware product line.

As part of my job, I need to keep up on all of these technologies and thus recently saw an interesting blog post about the new beta for Visual Studio 2010. The post, What's New in VS2010 and .NET 4 for Data Drivers?, had this very interesting paragraph:

For those developing data-driven applications, the beta is expected to give developers a first look at "Entity Framework version 2" or what Microsoft dubs "Entity Framework 4" As reported, EF 4 adds support for n-tier templates, Plain Old CLR Objects (POCO) and persistence ignorance.

Plain Old CLR Objects? How ironic. The server architecture of Dodeca uses the Hibernate Object/Relational Mapping system to persist metadata to the relational database. Hibernate introduced me to the concept of Plain Old Java Objects, or POJO's, years ago. Since then, POJO's have become a very popular concept. They were so popular, in fact, that Sun adopted the Hibernate model when they redesigned the J2EE Enterprise Java Beans 3.0 (EJB 3.0) spec and the new Java Persistence API contained within it. Even Oracle has jumped on board by donating some bits from the TopLink product, which is part of the Fusion Middleware stack, to the open source community.

It is good to see that Microsoft is adopting POCO's as it validates my decision years ago to use POJO's at the heart of Dodeca's patent-pending metadata persistence implementation.

No comments: