Developing Application Frameworks in .NET book

This is an open forum for any mojoPortal topics that don't fall into the other categories.

This thread is closed to new posts. You must sign in to post in the forums.
5/20/2006 12:25:25 PM
Gravatar
Total Posts 5
Ira Richard Smith

Developing Application Frameworks in .NET book

Some time ago on this site, in the Books column, I saw a book called Framework Design Guidelines which can be found on Amazon at http://www.amazon.com/gp/product/0321246756/ref=sr_11_1/104-4071717-5082311?%5Fencoding=UTF8

Prior to seeing that book advertised, I had purchased Developing Application Frameworks in .NET which can be found on Amazon at http://www.amazon.com/gp/product/1590592883/qid=1148163650/sr=2-1/ref=pd_bbs_b_2_1/104-4071717-5082311?s=books&v=glance&n=283155

As with much of my readings, I have to stop and restart at a later time and recently began digging back into Developing Application Frameworks.  I was wondering if anyone is familiar with both books and what their thoughts were on which one would be better.   I am not too deep into Developing Application Frameworks yet but so far I am enjoying the material and am sure I will complete the reading at some point in the future (I'm also reading Test Driven Development in Microsoft .NET at this time as well.)

Ira

 

 

 

5/21/2006 5:31:29 AM
Gravatar
Total Posts 18439

Re: Developing Application Frameworks in .NET book

Hi Ira,

I have the Guidelines book and have read a good chunk of it but not all of it yet. I haven't seen the book you have but I suspect it is a different angle on framework development than the Guidelines book.

The Guidelines book is basically the document Mircrosoft developers who work on the .NET frameworks use for coding conventions and idioms. Its a nice companion to FxCop which will analyze your code and tell you where your code violates the Guidelines. In other words the book describes the Guidelines and conventions and the rationale behind them while FxCop helps enforce them on your code. FxCop is cool, it comes with the Guidelines from MS but you can also edit them and add your own.

Last fall I started running FxCop against the mojoportal code and working through the issues to get mojoportal more in compliance with the guidelines and having that book helped me understand why I should make the changes and in some cases whether I really needed to. I got derailed from that project when 2.0 .NET came out and I shifted gears to take advantage of that but I plan to get back to that code cleanup project at some point and I am trying to be more conscious of the guidelines in my current development.

Most of the issues it finds in mojoportal are minor things like places where I should have used a variable starting with lower case instead of upper case in the signature for a method and things like trapping an error and then not doing anything with it, or trapping too general an error when you could trap a specific one. Its definitely worth a read and worth thinking about the things that FxCop finds and whether one should do anything about it. However if you run it against any code you've ever written you will almost always find a huge list of things it flags as issues though usually most of them are just minor things that don't mean your code is wrong, just that you didn't follow the guidelines. I didn't follow the guidelines before I knew about them but I am trying to follow them more now.

I'd be curious to know more about the Apress book you have and what kinds of things it covers.

Cheers,

Joe
5/21/2006 9:18:40 AM
Gravatar
Total Posts 5
Ira Richard Smith

Re: Developing Application Frameworks in .NET book

Joe,

Very interesting read on your message and I appreciate the input.  I have the Framework Design Guidelines book still on my Amazon wish list and some day as my reading progresses to it I will get it.  Awesome on FxCop and all that it will reveal.  While I have not used it yet I will likely begin using it heavily in the future because I am inheriting code that I did not write and over time would like to ensure that it conforms to the issued standards.  Sure, code will still work when not standard compliant, but I like to do good housekeeping as time permits and can relate to your point about eventually getting back to working on getting the Mojo code to pass the FxCop tests.

Regarding the Developing Application Frameworks in .NET book that I have, it is more about how to develop a framework for your application.  The first chapter begins defining what an application framework is and why you may want to use them in your development work.  Chapter 2 dives into the layers of a framework.  Chapter 3 is an overview of a simplified application framwork that the author then expands upon in the remaing chapters of the book.  Topics covered in later chapters include class factories, caching service, configuration service, event notification, windows services, message queue services, authorization service, authentication service, cryptography service, transaction service, document layer service, and the workflow service.  Each of these services, I believe (have not gotten that deep into the reading yet) are a part of the simplified application framework that is presented in the third chapter. 

My purpose in acquring the book was to develop and understanding of what a real application framework was and the types of things that you would/could put into one.  For some time I have thought that it was very possible to build applications based in a portal such as Mojo, Rainbow, or PostNuke (for all you PHP folks) and of course I have had some folks tell me that it just did not make sense to do that.  For me it  made sense (keep in mind I'm talking about pre-.NET2.0 days, because portals already had authorization and authentication in them as well as themeing/skinng engines, and the like.  So my mind was thinking along the lines of using the portal as a framework since it had many of the standard functions an application would need and just use the portal API to create modules to deliver the functionality that was missing for the specific need.

With the release of .NET2.0, themeing/skinning engines are not necessary any longer (use master pages instead) in portals and really with things like the membership management may well take care of authenticaion/authorization. 

So my thoughts are now along the lines of using a portal for perhaps the application framework so that I don't have to roll my own and build modules to add the user functionality for the application.  I may be barking up the wrong tree, however, figure it is worth a shot to see how it all works.

Ira

You must sign in to post in the forums. This thread is closed to new posts.