|
|||||||||||||||||||||||||||||||||||
|
10 Reviews
|
Average Customer Review
Share your thoughts with other customers
Create your own review
|
|
Most Helpful First | Newest First
|
|
15 of 16 people found the following review helpful:
4.0 out of 5 stars
Frameworks are really important!!!,
By
This review is from: Developing Application Frameworks in .NET (Paperback)
This book is great for architects, though some of his designs i wasn't, personally, comfortable with!
Anyway, the author sets the groundwork in `how to' on building frameworks. First few chapters are excellent insight on why we need frameworks and talks about different useful strategies. But i did find couple of places where i had to refactor it for better usability... - Class Factories: i was really uncomfortable the way Class factories were implemented in this book by the author. For e.g. he expects the developer to provide string based value...which i personally feel is error prone... Instead of calling pf = (ProductFactory)SAF.ClassFactory.GetFactory("ProductFactory-A "); i feel you should rather pass pf = (ProductFactory)SAF.ClassFactory.GetFactory(typeof (ProductFactory)); now on the server side, whatever is the current implementation of the abstract class ProductFactory is available, it would be passed back to the client...so the configuration file would change from <Class name="ProductFactory-A" type="TestConcreteFactory.ConcreteProductFactory,TestConcreteFactory"/> to <Class name="< >.ProductFactory" type="TestConcreteFactory.ConcreteProductFactory,TestConcreteFactory"/> all the server has to do is use FullName property on the type just passed to it and look into the configuration file for it. this way, developers don't have to look around for what concrete implementation is available.. [Only drawback is that we would only have one concrete implementation available, but u r not restricted to extend it by passing additional parameters] - Caching: Caching design in this book is one of the best designs I have ever seen. The author uses XML to store the cached objects in hierarchical structure. It solved almost all of my caching problems, like breadcrumbs on web-pages, which became part of our web framework now, user preferences, organization preferences [user can belong to multiple orgs] was also solved by this design. But there was one very important thing that the author didn't mention was expiring stale objects in cache collection. The easiest way to expire data is to calculate its ideal time. We could create another thread, which would interrogate each object in the cache collection for its ideal time and it would expire the least used object from the cache immediately. Furthermore, every time an object is retrieved from the cache, we timestamp it with the latest time. This would keep the cache from consuming insane amount of memory on the server. I really liked other chapters too, - Windows Service - though I rather deploy my objects in Component Services - MSMQ - MSMQ is very useful but highly under-credited. This chapter definitely gives us more insight on how to leverage MSMQ in enterprise systems. - Authorization/Authentication - I would say pretty good content - Transaction - depends upon architecture of a project. If all the data intensive tasks are done in one stored procedures, then we really don't need to use Transaction services & simply rely on DB transactions, but if you have individual objects do individual data related tasks then Transactions offered by Enterprise Services are really helpful. Nevertheless, I strongly recommend this book for all software guys.
13 of 15 people found the following review helpful:
5.0 out of 5 stars
Wow!,
By
This review is from: Developing Application Frameworks in .NET (Paperback)
This book really sheds light on many of the Classic Gang of Four Design Patterns and provides real world, meaningful examples to demonstrate them.
If you have ever wanted to know how to use proper object oriented techniques in .NET, this book is for you. The book provides some very interesting approaches on extensible, practicle, and reusable code, and the samples are right on par with the typical functionality that an application framework should provide. It is also a very clean and easy to read book, and is organized very well.
6 of 6 people found the following review helpful:
4.0 out of 5 stars
Overall Good Reading,
By
This review is from: Developing Application Frameworks in .NET (Paperback)
As one would say that mere coders think in terms of ad-hoc one time solutions while developers and software engineers think how to incorporate these best practices in the form of an application framework. Xin Chen has done a good job explaining big picture thinking i.e. how a set of libraries or classes that are used to implement the standard structure of an application are made to collaborate in the form of a reusable framework.
I'm personally a big fan of application frameworks which provide extensibility along with good foundation support for example Rocky Lhotka's CSLA (Component-based Scalable Logical Architecture). Xin Chen does the similar job building one chapter at a time. He is walking the reader through step by step building of the framework and keeping the big picture in sight. The book is divided into 15 chapters in which Xin elaborates on application frameworks, dissect them, discusses class factories, caching, configuration, windows services, message queuing, authorization, authentication, cryptography, transaction, document layer and work flow services. The author has high degree of familiarity with GOF design patterns so reader will see the degree of reusability and patterns & practices in action. Application event logging and exception handling is an inherent part of any application framework however I was disappointed to see not much discussion about it in the book. Also, during the discussion of real world business problems, author did not discuss rules engines or provide guidance about integrating dynamic logic into your framework which I strongly feel should be an integral part of an enterprise level architecture. The current business models as we know them thrive on change and we cannot isolate development designs from user's needs. Having said that, if you are looking to build a large amount of reusable code into a framework to save development time for yourself and fellow colleagues / developers, this book will provide you enough good pointers for this purpose. Author recognizes that the frameworks cannot be built in the air and hence provided us with concrete examples. I'll also recommend reading "GOF Design Patterns", Rocky Lhotka's "CSLA.NET 2.0 (Expert C# Business Objects)" and "Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries" along with this if you are serious about developing application frameworks for your enterprise.
16 of 20 people found the following review helpful:
5.0 out of 5 stars
Simply Awesome!!,
By Courtney (Carrollton, TX United States) - See all my reviews
This review is from: Developing Application Frameworks in .NET (Paperback)
Finally a book that not only explains the theory and design decisions behind putting together a framework, but also supplies a fully functioning framework for you to start with. THANK YOU SO MUCH!!!On a side note... the editor should be flogged because of the numerous grammatical errors.
3 of 3 people found the following review helpful:
3.0 out of 5 stars
Interesting,
This review is from: Developing Application Frameworks in .NET (Paperback)
I have been developing application frameworks for several years. This book is a good read about them. It covers many of the issues related to application frameworks including class factories, configuration and security. Each chapter contains information about the 'theory' related to these topics and information about the .Net implementation. I learned about .Net classes I was not aware of.
Although I recommend reading the book, I want to warn potential readers about two issues: - The book ignores some aspects of application frameworks. Missing for example is logging, which is very important in practice. Users of your framework will want to monitor it and logging will be an issue you have to deal with. - Sometimes the author is more concerned with showing a clever implementation than a practical one. I find the hierarchical cache interesting but in practice there are bigger issues: how efficient is the cache (creating the xml document seems a performance killer), how are cached elements evicted (this brings issues about timing and locking that are ignored in the book), etc. Similarly, I have rarely seen the need for all the configuration-based customization that the author shows. I would have appreciated if each chapter discussed the goals of the implementation (e.g., performance vs. ease of use) and its trade-offs. I recommend the book but think twice about your goals before copying the implementation.
2 of 2 people found the following review helpful:
5.0 out of 5 stars
One of the best App Framework books in .Net,
By
Amazon Verified Purchase(What's this?)
This review is from: Developing Application Frameworks in .NET (Paperback)
Xin Chen's experience with realworld scenarios is evident in the way he has structured the SAF blocks.
I have used the Windows Services block (including the Configuration block) and the Workflow block at a client project, and was amazed at how easy it was to customize the block to my particular requirements. I guess what most people have to realise, is to treat these blocks as a starting point for your application rather than an enterprise ready block of code. This helps keep your mind open to analyzing the blocks and modifying them as appropriate. I will be definitely basing more of my projects on his blocks because it appeals to me on 2 levels: 1. It is built on simplicity and therefore easily digestable (very helpful if you are working on a project with tight deadlines). 2. It is easily extendible and manageable because of point 1. The only suggestion I have is, that Mr Chen should start an Open Source project to keep the SAF updated.
1 of 1 people found the following review helpful:
5.0 out of 5 stars
Very helpfull,
By ProDevDotNet (MA USA) - See all my reviews
This review is from: Developing Application Frameworks in .NET (Paperback)
This is not only helpfull for architects, but for programmers responsible for planning and scoping projects in general. The writing is to the point, and provides very solid foundations for writing high level framework strategies. The only thing lacking would be that I think it is geared toward 1.1 framework, would be great to see how 2.0 could enhance this. The frameworks in the book are great starting points which can be enhanced based on your own business requirements.
4.0 out of 5 stars
Useful book!,
This review is from: Developing Application Frameworks in .NET (Paperback)
This book is centered around a Simplied Application Framework (SAF) consisting of some domain specific components (exchange and processing of business components) and some more or less generic components (configuration, event notification, etc.). Each of these components is discussed in detail and explained with code samples which can be downloaded from the publisher's website. Various .NET concepts like Remoting and Reflection are discussed at the components where these concepts are exploited. The design patterns from the book of the GoF (Gang Of Four), 'Design patterns, Elements of Reusable Object-Oriented Software' are extensively used throughout the book. It gives some practical applications of these patterns and that's what I liked most about it.
A minor point is that the source code contains some spelling errors and a naming error (The Visitor class of the Visitor pattern has a method named 'Accept' method, whereas its obvious that the method should be named 'Visit') which is a bit disturbing, although the source code will probably still compile ;-) Despite of this I recommend it for both software developers and architects.
5.0 out of 5 stars
An Excellent Resource for Developers or Architects,
By
This review is from: Developing Application Frameworks in .NET (Paperback)
Developing Application Frameworks in .NET is a valuable resource for mid to senior level developers or architects. It presents fundamental concepts when designing and building frameworks for the middle tier for an IT based enterprise solution. Not only does it solidify the reader with strong concepts, it also introduces and explains fundamental Microsoft C#.NET technologies needed for implementation.
0 of 1 people found the following review helpful:
4.0 out of 5 stars
Good for beginners,
This review is from: Developing Application Frameworks in .NET (Paperback)
The problem with this book is that SAF, the sample framework, is a toy just for demonstration purpose. The book gives insight on why and how to construct a framework, very good in this aspect, but it doesn't give you a real framework you can adapt or use.
What's is the point of writing your own framework from the base, if frameworks are supposed to be so generic that can be used in disparate applications, a framework written by a real expert would be good for you too, or at least an excellent starting point. I think a really useful thing would be a open source project, community supporting and a book. Lhotka does something like that, but his framework is focused in implement a configurable dataset, very good, but frameworks have lots more aspects. This book teach the basic well, .net technologies, gof patterns with examples. A must read for beginners, not very useful for more advanced people. |
|
Most Helpful First | Newest First
|
|
Developing Application Frameworks in .NET by Xin Chen MS (Paperback - April 29, 2004)
$49.99
In Stock | ||