Head First C# is a complete learning experience for object-oriented programming, C#, and the Visual Studio IDE. Built for your brain, this book covers C# 3.0 and Visual Studio 2008, and teaches everything from language fundamentals to advanced topics including garbage collection, extension methods, and double-buffered animation. You'll also master C#'s hottest and newest syntax, LINQ, for querying SQL databases, .NET collections, and XML documents. By the time you're through, you'll be a proficient C# programmer, designing and coding large-scale applications.

Every few chapters you will come across a lab that lets you apply what you've learned up to that point. Each lab is designed to simulate a professional programming task, increasing in complexity until-at last-you build a working Invaders game, complete with shooting ships, aliens descending while firing, and an animated death sequence for unlucky starfighters. This remarkably engaging book will have you going from zero to 60 with C# in no time flat.

Chapter 1 Get Productive With c#: Visual Applications, in 10 minutes or less

Why you should learn C#

C# and the Visual Studio IDE make lots of things easy

Help the CEO go paperless

Get to know your users’ needs before you start building your program

Here’s what you’re going to build

What you do in Visual Studio...

What Visual Studio does for you...

Develop the user interface

Visual Studio, behind the scenes

Add to the auto-generated code

You can already run your application

Where are my files?

Here’s what we’ve done so far

We need a database to store our information

The IDE created a database

SQL is its own language

Creating the table for the Contact List

The blanks on contact card are columns in our People table

Finish building the table

Diagram your data

Insert your card data into the database

Connect your form to your database objects with a data source

Add database-driven controls to your form

Good programs are intuitive to use

Test drive

How to turn YOUR application into EVERYONE’S application

Give your users the application

You built a complete data-driven application

You built a complete data-driven application

CSharpcross

CSharpcross Solution

Chapter 2 It’s All Just Code: Under the Hood

When you’re doing this...

...the IDE does this

Where programs come from

The IDE helps you code

When you change things in the IDE, you’re also changing your code

Anatomy of a program

Your program knows where to start

You can change your program’s entry point

Two classes can be in the same namespace

Your programs use variables to work with data

C# uses familiar math symbols

Loops perform an action over and over again

Time to start coding

if/else statements make decisions

Set up conditions and see if they’re true

Csharpcross

Csharpcross Solution

Chapter 3 Objects: Get Oriented!: Making Code Make Sense

How Mike thinks about his problems

How Mike’s car navigation system thinks about his problems

Mike’s Navigator class has methods to set and modify routes

Use what you’ve learned to build a simple application

Mike gets an idea

Mike can use objects to solve his problem

You use a class to build an object

When you create a new object from a class, it’s called an instance of that class.

Jennifer Greene

Jennifer Greene studied philosophy in college but, like everyone else in the field, couldn't find a job doing it. Luckily, she's a great software tester, so she started out doing it at an online service, and that's the first time she got a good sense of what project management was. She moved to New York in 1998 to test software at a financial software company. She managed a team of testers at a really cool startup that did artificial intelligence and natural language processing. Since then, she's managed large teams of programmers, testers, designers, architects, and other engineers on lots of projects, and she's done a whole bunch of procurement management. She loves traveling, watching Bollywood movies, drinking carloads of carbonated beverages, and owing a whippet. For more information about Jennifer, Andrew Stellman, and their books, visit http://www.stellman-greene.com.

This book is well written and easy to follow. I was a beginning programmer, and this book was great with helping me learn C#. Also, this book continues to be a great reference. This book uses a lot of visual styles such as pictures, important side notes, and other notes that appear to be hand written. The hand written notes is what stands out the best for me because I do a lot of my learning by jotting down side notes. I'm a visual style learner, and this book really does well with grasping that concept. Towards the beginning of the book, there is a section that explains ways to trick your brain into ways of wanting to learn C#. I thought that was the best intro to any other programming book I have read before. This is not a boring book. There any many cool exercises to do and you get to build a cool video game for the last chapter. I recommend this excellent book to anyone who is interested in learning C#.

I am not new to .net, but kind of avoided really understanding and using interfaces and inheritance to their potential. The diamond of death illustration on page 304 is something no person, web page, or forum ever explained but makes perfect and simple sense of interfaces and inheritance. I think it does the same thing for other topics too, and its a shame I did not find the book sooner. Super green beginners might want a plainer beginners manual at first, but will quickly realize they need to understand how things are intended to be used. Recipies in other books do not explain the why most of the time, just the how. It also conveys good coding practice which is hard to find on mutiple topics all in one place.

I love the fact that the first chapter of this book finishes with you building a functional program. And with a target of building a classic game @ the end of the book makes reading this a true joy. I'm definitely going to start checking out more Head First books.

Head First C# is a great workbook for anyone who is interested in learning C#. It jumps you right into programming with C# and then explains all you have done. As a professional QA Software Engineer, this book is great. I would recommend it to anyone who is interested in learning C#.

It's be interesting to see which types of people find this book fantastic, and which find it really confusing, as I think assuming those that are confused must illiterate or stupid is arrogant and naive.

People think in different ways. Perhaps it's a left brain/right brain thinker thing. Most people are left brain thinkers, and if something is arranged in a way that suits them perfectly, they'll find it totally logical. A right brained person could be presented with the same information, and just not be able to visualise the solution at all.

Overall I think the book has a terrific approach, and they way it dealt with the basics was excellent. The problem I have with it is in the longer exercises, where I find I'm having to spend so much time trying to figure out what it is that the program, and in particular the methods, are supposed to do and how they should be used, that I've really had enough for the day when it comes to actually writing the code.

I actually felt that I learned more on the shorter exercises, as the longer ones bored me, and I just wanted to get them over and done with. They also often seem contrived to give them a "fun" spin, and I rarely saw a benefit for some of the features in a real world application.

For me, reading about a C# feature, I want to know how to write it and why I'd use it, and have a short punchy exercise demonstrating that I've understood it. I'm less keen on it being part of a long "logic puzzle" of an excercise. Perhaps those who enjoy logic puzzles will think differently.

I would recommend the book though, as most do seem to find it fine, and it's certainly better than terminally dull books I've tried in the past. I just find I need my learning split into two or three hour long sessions in a day, and at times it's hard to achieve that with this book.

My three stars reflects than when it's good it's very good, but I found the frequent need to understand the author's logic for a solution to be really painful at times.

Unlike the individual who commented on the book being a "waste of money", i thought this book was very good for a person who wants to start learning C#. The person mentioned above (who's comment was titled "Waste of money") is either illiterate, needs glass, or has the IQ of a frog.

The book does what most other books don't.

It starts you off by telling you what to do to create a rolodex/phone book/contacts list type program. It explains a little bit of what's going on, but nothing in depth. The point of the exercise is to get the reader into the "meat" of programming, without having to read 300 or more pages on Variables, Loops, Conditionals, Objects, Methods, Functions, etc.

However, after that first chapter, you start down with the basics. What you learn there you can use to modify any of the projects that you've done in the entire book to make them better (i did, and i had never used C# in my life...i'm a Coldfusion developer for the web!).

The following chapters usually present you with a "we want you to create this..." problem, and it tells you what it wants each part of the program to do (this button should do this, this image should do this, etc). However, it tells you what it wants YOU to do...it doesn't tell you how to do all of it. That is taken from knowledge from previous chapters for the most part. However, if you flip to the next few pages, it starts to actually show you how to tackle the problem, all of it, and in depth at that.

An example is the second or third program you right. It's a small form with a button, a checkbox, and a label. You set the label's background color to red from the start (so it's defaulted to red when you run the program). You then make the program change the color of the label from red to blue, or blue to red, based on what it currently is...when you click the button. However if the checkbox isn't checked, you need to make a messagebox (messagebox.show) pop up to tell the user that the box wasn't checked, so the color changer isn't enabled. It's very simple, but shows you easily how to use conditionals.

A deeper example into that is with the color changing. You could do "if the background color is red, then change it to blue" and then another saying "if it's blue, change it to red". But the book (after showing you that), says "If the background color is blue, change it to red, otherwise, change it to blue". It's hard to realize this in words, but coding wise learning to combine conditional statements into smaller, compact form, makes for great "thinking" exercises, and helps keep your code uniform and lightweight. This is just one of the things that stood out to me that most people don't pick up on.

After you create that, it then starts getting into the basics (variables, loops, conditional statements, objects, functions, etc).

The applications you create are pretty fun to do as well, and even the little examples within the chapters are very good. It has many "pool puzzles" that are just downright migrain-inducing, but you aren't forced to do it. It's more a "logic test" for you, than anything else.

All in all, the book is VERY good for beginners. It challenges the way you think, and gives some very good examples of basic programs (you end up creating a horse-racing program, a "bank" style program, a small role-playing-game that is easily (and i mean EASILY) expandable into something larger, and a space-invaders game).

I highly recommend this book. This is what i use to "teach" to people that want to learn this language at my work place.

I wouldn't say this book was a waste of money (particularly since I read it via Safari - but I have several other Head First books).

If anything, I find the Head First books too slow moving if you have some familiarity with the subject. However, I do know the teaching principles that are being used in the Head First series and admire them for that...

I bought "Head First C#" because it was a "Brain-Friendly Guide", however it really is very CONFUSING. I am NOT new to programming, however the concepts are NOT explained very much and it is very confusing.

The book moves TOO FAST and leaves out detail of concepts, not spending much time on any one thing, it just briefly mentions most things and then moves on. I have had to re-read the material, to find out that I missed something important was briefly mentioned (usually only a word or two) and embedded deep into the text.

Besides the book NOT being detailed and being confusing, it seemed the book was written in a backwards format _ meaning that it would have you to type some code _ with little or no programming rules (of the code syntax). After typing in the code, it would mention some of the parts of the code syntax, however leaving other parts unmentioned. Several times, there was certain code that you typed in, but it would NOT mention that syntax until 50 _70 pages later (maybe).

It seemed that the book really jumped into the middle of programming concepts without first starting with the BASICS of programming C# in the IDE (and it did not really even explain the IDE or the new revisions that it has since the older IDEs).

Maybe the book needs a rewrite, where it does not move so fast and it clearly explains the concepts before actually writing a program. It is OK to reiterate the syntax after you have typed it in, however it should first introduce the concept and a VALID code example (NOT just pseudo code _ but real code).

I have other Head First books, however "Head First C#" is the most confusing of the "Head First" books that I have. I have been programming in Visual Basic, I wanted to get into C#, so I bought "Head First C#" because I thought that it would explain things more clearly; however I was very disappointed at how confusing, un-detailed, lack of organization & lack of detail of programming concepts in C# that it has.

I am very disappointed in "Head First C#". I should have spent my $50 of a different book.

I got this book because I wanted something easy to read and learn C#. My expectations were met. This book is very easy to follow. I feel the content is just as involved as the more wordy books but it leads you to the knowledge by practice rather then verbage.

This book is a 700+/- page workbook that will aid you in learning the language effectively. It is not a reference book - unless you want examples.

Examples and excersizes are presented similar to worksheets you would have had in elementary school, but the work is sophisticated enough for college entry. If you do all the excersizes you will be an efficient programmer in C#.

For those who are visual learners; for those who have the attention span of an average A.D.D. student in elementary (i.e. me); for those who need to learn C# yesterday this book is for you. It will keep you going until you get to the last page.

Head First C#, it's a great book, I first see this friendly book, this is incredibly quality and value for all people. About this book, all people can speak only three words , incredibly great job! When I firstly opened this book, I thinking , it's illustrated book for professional developers, hmm , but when I read first chapter , I know, this is only one good book at the world, seriously. I don't know how people can learn C# from another book, I don't know, I love this book, this is unique and very professional experience, first class!

At the fifteen chapters authors presented all developer techniques and programming core about C#, from create first, smart application in Visual Studio Express Edition to create professional and dynamic application with newest solution from NET Framework, for example author presented LINQ or new extenders for C# at 2008.

Andrew Stellman and Jennifer Greene prepare wonderful book for all people. If You decided to explore C# world, You must started Your travel with this book. You can quickly started create very useful and professional application in small time, and small work! All code techniques, tricks and method to delivery good experience for clients You find at this book. If You thinking about create commercial software, You should create this with Head First C# book, too.

About chapters, at the first chapter, authors inform You about possibilities to create good application with 10 minutes! Yes, it's possible, with this book I create this application with this time, and It's very easy. If You are thinking about build great program with really fast time, You must read this chapter. You find information why You should thinking about C#, how create new project, add useful interface and connect Your application with remote data, for example SQL Server and database techniques.

Next chapters, presented C# programming core with Visual Studio IDE. You can find info about programming method, language theory and practice example. Please thinking , your code must have a sense &#61514; Head First C# is not book what presented virtual tasks, and virtual applications, every sample, every method have a real-world solution and this is very useful learn method.

Sometimes chapters presented advanced topics, from encapsulation, to interfaces or abstract classes, but authors have a good idea to present advanced topics, and doing this with very funny words. With this You can better find road to be very professional C# developer!

This book is very different from other, but it's good! This is complete learning for all people who's go to C# way, smart chapters, funny texts, practice example , every it's great job!