Real-World ASP.NET: Building a Content Management System
by APress

by Jason Salas Monday, May 27, 2002


OVERALL ASSESSMENT
Overall this book is nice, but the title may tend to be deceiving. Contrary to the suggested theme, this title is not best suited for architects. Rather, it’s more geared towards the business manager/developer looking to map out a content management system and see if such an application is right for his organization, and then providing an overview of the code necessary to bring it to life.

It’s about time for a book dealing with the subject of content management systems (CMSs) hit the shelves, as .NET provides the ability to create such systems rapidly and seamlessly. And developers have for months been asking for a title such as this to demonstrate to them how to construct a system to electronically maintain data-aware organizations.

The only major gripe I have about this book is that it took way too long to get to the actual development of the sample CMS application. I would have preferred the author spend more time examining the development of the sample app. I found myself saying, “Enough with the concepts and theory….let’s get to some code already!” The book is 15 chapters, but unfortunately the actual development of the CMS sample application doesn’t start until the Chapter 9. The actual development process, being the CMS application’s architecture (the conceptual, high-level planning of the system’s workflow) and the engineering (the actual writing of code) is so into the book that it tends to frustrate the reader…waiting to get to “the good stuff”.

As such, the book reads more like an academic work than a programmer’s guide. And although the book is classified as “Intermediate to Advanced”, I felt after reading it that it speaks more to a beginning level .NET developer with some basic experience in C# (or a developer savvy OOP languages like C++ or Java).

The book examines several business-oriented concepts, as in CMS planning, resource allocation, and alternatives to developing a full-blown CMS. It acknowledges several off-the-shelf CMS products, like Vignette StoryServer and InterWoven, and encourages the developer to be a product champion of implementing a CMS, if the fit is right.

Like most books, replicating the sample app requires you to download the sample VS.NET solution with source code from the APress Web site. A positive note is that unlike many recent books, the majority of the complete source code is listed within the book, making it still relevant, and not only including “the good parts”. You get a general feel for what Fraser is trying to accomplish, and then see how he’s doing it.

WHAT I LIKE ABOUT THE BOOK

  • Author Stephen R.G. Fraser uses a friendly, witty voice throughout the book. This may rub some people the wrong way, but I found this to be positive.
  • There’s some nice use of object-oriented programming concepts used throughout the construction of the sample CMS, and likewise, a best-practices approach to .NET development, such as use of web.config and application variables in global.asax.
  • There are lots of graphics for those needing visual reassurance of the screens that should appear (like myself).
     

WHAT I FEEL NEEDS IMPROVEMENT

  • Some of the chapters just are expendable, such as the chapters on “Basics of Web Architecture”, “Personalization” and “Version Control”. Such topics, if critical to the subject at hand, could have been condensed into a single chapter, or integrated into other areas of the book.
  • The book is very tightly bound to Visual Studio .NET, making those of us who prefer to remain in the NotePad world feel lost. But fortunately, the code appears to be written without VS.NET’s additional inserted syntax.
     

Our sponsors
KUAM.COM - Guam's online source for news, entertainment, and information

This is Guam's first site produced 100% with the .NET Framework,
developed and maintained by Guam's top Active Server Page developers.

Microsoft ASP.NET

Copyright © 2001-2002 by the ASP.NET User Group of Guam. All rights reserved.
Terms of Use | Privacy Statement