Publisher: Smart Method
Aimed at: Beginners/Intermediate
Pros: Hands on practice
Cons: Hard work and not deep
Reviewed by: Ian Elliot
Can you learn ASP.NET and C# in a single book?
The full title of this book is:
Learn ASP.NET 4.0, C# and Visual Studio 2010 Essential Skills with The Smart Method: Courseware tutorial for self-instruction to beginner and intermediate level
and this tells you quite a lot about it.
The most important thing to note is that it is "Courseware tutorial" and the material presented has been used to provide hands on-courses.There is also a DVD available of lectures based on the book. I only had a copy of the book to review.
The book has a different format from most and while this makes it more difficult to read on your commute, it is potentially easier to use when you can give it you full attention. The large A4 pages do mean that you can view an entire topic at a time as each lesson is arranged to occupy facing pages. Unfortunately, this advantage is difficult to realize because the book's binding is so stiff that it is very difficult to get it to lie flat on a desk while you work through a lesson. It can be done but only with the help of a heavy weight and bending the spine of the book so far that it cracks - not good if you are a book lover and equally not good if you hope to pass it on to another user or sell secondhand.
Each of the lessons is short and fairly self-contained. The big problem is that there are a lot of them - being short there just have to be a lot of them to cover the ground. They are presented as numbered point-by-point "do-this, do-that" lists. As long as you are sitting in front of Visual Studio Express, or equivalent, then this is great as you can follow the practical. If you aren't then there isn't much you can abstract from the course. So if you are not prepared to do the practicals this isn't going to be of much use to you.
The book starts off from the very basics of installing Visual Studio and works you through creating an ASP .NET web site and application. The first two chapters are mostly focused on how to use Visual Studio and the basic idea of a web site. Chapter 3 is where we need the key ideas in ASP.NET - postback and viewstate. Next we have ASP.NET controls and then an introduction to C#.
Personally I think this is the wrong order to do things in - being able to program in C# is a prerequisite for being able to create an ASP.NET web application. I agree that you don't need to know C# just to produce a website, but if you are discussing postback, viewstate and controls then you can't really avoid code.
The next four chapters are an introduction to C# and to be honest I don't think the treatment is deep enough. If you really don't program before you encounter this section of the course, you are going to come away with a very vague idea of what it is all about. There are also too many things introduced that could be left until later so that the beginner really doesn't have a chance to see the wood for the trees.
Next we move on to authentication, using Linq and the data controls. This is tough stuff for a learner who has just been introduced to the For loop. Then Chapter 12 shows how it all fits together by working through the creation of a complete website and the book is at an end.
I can't say that I liked the approach. It was far too targeted at just getting you to do only what is necessary to build the website in Chapter 12. While there are lots of box outs that do help you understand what is going on, and the ideas that are behind what you are doing, teaching concepts is not the book's main concern. As a result you have to work very hard to grasp the ideas.
If you are prepared to do the work then something will rub off. However the biggest problem with this book is simply that it attempts too much. A first volume teaching C# programming, followed by an introduction to ASP.NET, might work better.
If you can already program then the problem isn't as great and you might find that this approach suits your style of learning.