Skip to main content


Showing posts from February, 2008

Domain Specific Languages - A Slice Of The Future

The DSL (Domain Specific Language) toolkit shipped with Visual Studio SDK opened up a hand full of new possibilities for enterprises focusing on the Microsoft platforms. This enables organizations to harness the power of Domain Specific Modeling, to solve specific problems. Domain Specific Modeling (DSM) involves systematic use of a graphical Domain-specific language (DSL) to represent the various facets of a system. Later, artifacts can be generated from the model, using domain aware generators. The DSL approach has various advantages. Here are few - mainly from an Architect’s point of view.Improves Standardization and maintainabilityUsing Domain Aware Generators to generate artifacts (like source code and functionality documents) from the Domain Model modeled using DSL brings high standardization and maintainability for the entire code base. This saves the enterprise from problems like code decay and logic scattering. Enables Collaboration of TeamsDomain Specific Language modeling…

Domain Specific Languages (DSL) And VS2008

Recently I started playing with VS 2008 and DSL (Domain Specific Language), and soon got bored with the T4 template engine. If you are still not with the story, the easiest way to start the play with out spoiling the existing egg in your plate is 1 - Grab Microsoft Virtual PC 2007 2 - Get a trial VPC image of Visual Studio® Team System 2008 Team Foundation Server and Team Suite 3 - Download and install Microsoft Visual Studio 2008 SDK in your virtual machine This should get you everything you need to start withThe Visual Studio 2008 SDK contains DSL toolkit, along with a lot of other goodies. (If you have VS 2005 instead of 2008, still you can dig around, find and download the SDK for VS 2005, and you'll get the DSL toolkit installed with the same) And just before we start, here is a bit of story about DSL if you are not familiar with the same. "Domain-Specific Language Tools enable the construction of custom graphical designers and the generation of source code using dom…

XGenPlus - A flexible tool to generate typed XML serializers for your .Net applications

Download XGenPlus 0.7 - 36.5 KBDownload XGenPlus 0.7 - 40.4 KBIntroductionIf you have ever used XML Serialization heavily in your projects, chances are that you have pulled your hair a couple of times before getting things right. Memory Leaks When you use XmlSeializer to serialize or deserialize an object, XmlSerializer will create a dynamic assembly on the fly containing the serialization code, specific to the type of that object. For instance, when you do something like

XmlSerializer ser=new XmlSerializer(typeof(Customer))

Now, behind the scenes, The XmlSerializer constructor will reflect the customer type you are passing to the XmlSerializer constructor, and generate the code for a typed serializer for the same. The code for the typed serializer for Customer type is compiled by calling the compiler services at run time The cached assembly which contains the typed serializer for Customer type is loaded to the application domain, and is cached for future uses. How …