on January 1, 2009
This is an excellent book on ASP.NET development. It skips over the typical "how to create a button" approach of most books and just covers the necessary information to really use some of the more interesting ASP.NET features including AJAX. Each of the controls that are covered also get a treatment for how to enhance them with AJAX.
The book also covers some of the unfamiliar areas of ASP.NET such as lifecycle management, caching, page and master directives and HTTP handlers. The book also spends quite a bit of time discussing the features that were added in v2.0 such as web parts and themes. This is missing in many books.
The only real flaw I see in the book is that it mentions v3.5 but in reality almost everything it covers is v2.0+. Someone who is only concerned with v2.0 might skip over this book but that would be a mistake. It contains enough information to be useful to anyone doing ASP.NET programming from v2.0 on. While it won't teach beginner ASP.NET folks how to write apps it will help those already familiar with the basics of ASP.NET to write impressive, performant apps under v2.0+.
on June 22, 2009
I have been using ASP.NET for the better part of 1 year, so when I picked up this book I was skeptical. All I can say is that time invested reading this book is time well spent. I would recommend this book to programmers with classic ASP knowledge, all the way up to seasoned developers. The book covers many areas of ASP.NET programming and provides many good examples along the way, so you spend more time learning and less time trying to debug sample code. It has become my "go-to" reference when I am developing and it continues to help me increase my knowledge of ASP.NET. Some topics I found beneficial were AJAX, ASP.NET controls, State Management, ADO.NET, LINQ, Validation, Security, Web Services and WCF. Many of which I was able to integrate in production applications using this book. I highly recommend it!
on February 5, 2011
Excellent complement to MSDN docs. If you are familiar with the basics of ASP.NET development, and just need a book in a narrative format to explain / refresh whole concepts, this is perfect. I find myself starting with this book to really learn and understand what's going on, then referring to MSDN for more detail.
Too bad they don't have an ASP.NET 4 book... that's what I'm using it for. I actually have all of the Hurwitz / Liberty Oreilly books for ASP.NET, and they have been very helpful over the years.
on June 8, 2010
Book review - "Programming ASP.NET 3.5, by Jesse Liberty, Dan Hurwitz and Dan Maharry.
As a computer programmer and a big fan of Microsoft .NET programming technologies, I am always happy to read technical books. I have read several ASP.NET 3.5 technical books other than this one and what I have found is they all bring something useful to the table.
In this particular books case, it did a good job of discussing the various topics of ASP.NET 3.5. especially for those new to asp.net 3.5. it gives a broad overview of the entire ASP.NET programming platform as a whole.
Chapters 1 - 2 gave some good insights into using Visual Studio 2008 (the latest Microsoft programming environment at the time of the book's publication), IIS 7 (Microsoft's web server technology) and AJAX (a way of making very responsive web user interfaces). For newcomers to the Microsoft Visual Studio 2008 environment, it gives simple step by step instructions on how to get started with the VS2008 programming environment.
Chapters 3-8 mainly deal with how to use the controls inherent in ASP.NET. Of particular interest (for me at least) would be the new object/xml and sql datasource controls which make connecting and binding to external data much easier. You can use the new datasource controls and bind them to members of the System.Web.UI.WebControls.BaseDataBoundControl's class. The author calls these controls "data aware controls". These types of databound controls are pretty special because you can manipulate database updates/inserts and deletes directly from "bound properties" of the controls. Pretty powerful stuff for easily making updateable web forms with minimal programming code. The type of applications you would make with these concepts would probably not be your enterprise level applications but probably smaller systems.
Chapter 9 deals with ado.net which is standard fare for the asp.net programmer. It expands particularly on how to update databases from asp.net webforms without using the "data aware controls". In ado.net's case, you would invoke dynamic sql or stored procedure calls rather than trying to use the "data aware" controls outlined in chapter 8. Dealing directly with ado.net allows more complex programming logic to be applied because the programmer is writing custom programming code to deal with the database. For most larger systems, a programmer would more likely use ado.net calls rather than binding of sql statements to "data aware" controls.
Chapter 10 deals with LINQ which is a new way of querying against data and this data does not necessarily have to be inside of a database, it could be in an xml file, or a collection of objects etc. In other words, we are not limited to SQL calls when processing against relational databases, but we now have a "standardized" querying language that can process not just relational databases, but other sources of data. What is interesting about LINQ is the fact that it allows "code generation" of LINQ code via an ORM (object relational mapping) designer. This ORM designer can understand for example, the structure of your sql database and generate appropriate "LINQ data context objects" that can insert/update/delete/select database data (crud). This can save time because now you don't have to write all of your database access programming code by hand. This concept is certainly something a programmer would have to decide whether or not to use, because on the one hand, you save time, but you may not have the flexibility that you need when you need it, since most of the code is generated on your behalf. However, I'm confident with more experience with LINQ, we can make it do what we need, while still taking advantage of its benefits. It's interesting to me how code generation technologies are becoming more and more mainstream and so very powerful. (read up on the T4 templates which just came out in .net framework 4.0).
The rest of the book deals with topics such as input validation, security, master pages, personalization (themes and skins), user and server controls, SOA architectures (web services/WCF (windows communication foundation), performance tuning your asp.net website and other topics.
One useful chapter has to deal with administering and configuring your asp.net website with IIS 7.0. This topic is many times not well understood by many programmers initially. However, if programmers understand how to use IIS 7.0, they are much more effective in their jobs. I especially like "application pools" which came out starting with IIS 6.0, application pools allows asp.net websites to basically "isolate themselves" from other asp.net websites running on your web server (IIS). What I mean by that is in previous versions of IIS, it was possible for a web application to "crash" or consume excess cpu cycles or excess memory and affect other web applications running on the same web server. With application pools, a web applications "bad behavior" is largely isolated only to itself and will only affect itself and not other web applications. This enhances the stability of your IT shop or hosting environment because now other asp.net applications are still running even if your application is having a bad day. Very nice...
One of the most powerful features of Microsoft IDE's (such as Visual Studio 2008) is the ability to trace and debug your programming code. Without being able to inspect program variables, or step through lines of code, life would be much more difficult. The .NET framework and Visual Studio 2008 give powerful capabilities in the area of debugging, that's why I consider Microsoft programming tools to be the best out there in my experience. This book has some useful information in the debugging/tracing source code arena.
Conclusion: I liked this book because anybody who reads this book from start to finish should be able to amass a wealth of useful knowledge as applies to programming with ASP.NET 3.5. Granted, some of the material is carried over from previous versions of the .net framework, but I think this was done so a complete understanding of ASP.NET could be achieved. If the author chose to only focus on the latest features of ASP.NET 3.5 and not explain how that fits in with the overall ASP.NET technology base, then someone just starting out with ASP.NET 3.5 would not get a complete overall explanation of what is available in ASP.NET as a whole. (For example, technologies that have been available from the earliest versions of .net (such as user controls)) are described very capably in this book.
From the perspective of a person who has read lots of ASP.NET programming books over the years, yes some of the material I kind of glossed over since I knew about it, but I believe the target market for this book is (as I stated), is for a person who wants a complete picture of ASP.NET programming as it stands at version 3.5. This is a good book!
The code samples in the book are concise and deal with the various topics at hand. They are plentiful and compiled and ran on my computer just fine. The programming language used in the samples is only C#, so those people who desire samples in vb.net may be a little disappointed. I personally do think C# will be the dominant .NET language in the future from what I can see anyway. VB.NET is a good language also, but if you read the latest technical magazines or books, most of the samples are starting to show up in C#.