



I know I have a readership of almost 2 people and that they waited eagerly to hear my prolific wisdom, so I must apologize for my lack of regular posting. It’s pretty clear I maintain this blog for me and me only. I didn’t do it for a following – most of what I write is for an audience of one… Me.
If you do actually read my blog let me tell you what’s new. I’m still turning the functional programming crank and trying to learn the discipline. I’ve also picked up several new topics to understand as well with Power Shell, Oslo, M, and Python (actually IronPython). Unity and Enterprise Library 4.1 have moved back up the must learn list as well. I’ve also been playing with the Visual Studio 2008 SDK.
At work we’re also trying to establish our build environment and I spent a bit of time writing a “best practices” sort of document for arranging the code repository, directory structure, operating system environment set up, and organization of Visual Studio solutions and projects to fit into it all. I’ve considered generalizing that document and posting it here as I’m a little tired of creating project specific implementations of it. This effort forced me to hand off the DSL project to a co-worker, so he got to have all the Oslo and M-grammar fun.
I’ve learned a lot of pretty cool new things and would love to sit down and write something meaningful on each and every topic. Unfortunately, it seems all I have time for is a post explaining why I haven’t. If you’ll hang with me, I promise I’ll fix that situation as soon as I can.




(This post is a work in progress… I just needed to get an answer up quickly for several friends.)
Finally, something of moderate substance.
At work, I am actively promoting the Microsoft Enterprise Library (ENTLIB) for the project I am currently working on. I’ve now been asked, “What is the ENTLIB?”, enough times that I decided to answer that question here as it’s not a “quick answer”. If the link I’ve provided is too much, here’s my attempt at a simple description.
The Microsoft Enterprise Library is a pool of source code written by Microsoft and made freely available to developers. The source in the ENTLIB represents the collected “best practices” recommended by Microsoft for using the .NET Framework to implement enterprise solutions.
That’s the short answer most people want.
It’s technically correct. It’s also totally useless. It’s not informative enough to really let you know what you are in for if you use the ENTLIB. So, I’ll pick the description apart and explain. Examine this diagram from the ENTLIB documentation:
This diagram is actually from the Enterprise Library 4.1 documentation. Since writing this original post I have migrated my blog and decided to upgrade the diagram.
But just getting started can be daunting! Where do you start the learning process? I’m not an ENTLIB expert but have formed an opinion on where to start.
Step 3 above is a bit outdated. With EL 4.0 and beyond dependency injection is handled by Unity.
Clearly, everyone learns differently and your mileage will certainly vary. The steps I outlined just worked best for me.
To the best of my understanding, the ObjectBuilder was actually designed and implemented during the Composite User Interface (UI) Application Block project (referred to as the CAB) . The ObjectBuilder was so useful, it was refactored into the ENTLIB.
Why is that interesting? Because the CAB is sometimes mistaken as part of the ENTLIB. It’s actually a custom application block written using the ENTLIB. Since the ENTLIB and the CAB are both Microsoft projects, the refactoring of ObjectBuilder into the ENTLIB was logical.
ObjectBuilder, while shown as part of the core is actually an application block. The ENTLIB documentation notes:
ObjectBuilder is a patterns & practices Application Block, but because of its highly specific audience and its recent inception, it is not yet fully documented as a stand-alone asset like the Enterprise Library application blocks are.
The CAB seems like a perfect candidate to have that classic Visual Studio “wizardry” in order to add new CAB “thingies” (Since, this article is about the ENTLIB, the full description of the CAB is left for another time, for now, “thingies” is all I’m willing to say.). That leads us to the Smart Client Software Factory.
The Smart Client Software Factory, is a collection of code-generators, how-to examples, Guidance Automation Toolkit (or GAT), and documentation for creating “smart clients”.
What’s the GAT??? It’s a toolkit to let software development kit (SDK) developers like me add guidance toolkits to Visual Studio using the Guidance Automation Extensions (GAX).
What the hell is the GAX?!?!??!?
It really does take a bit of commitment on your part to go learn the ENTLIB and the related projects that spring up around it. My advice is to download the ENTLIB, play with the quick starts and guidance, read the documentation, buy a book, and just dig in and write a client or your own application block. In my opinion, it’s certainly worth the effort.
One last question… Who is John Galt?


More Options ...
Categories
Tag Cloud
Blog RSS
Comments RSS

Void « Default
Life
Earth
Wind
Water
Fire
Light 