1 Introducing C# and .NET

This chapter covers

  • Understanding what C# and .NET are
  • Learning why you would use C# for your projects (and why you wouldn’t)
  • Switching to C# and how to get started

Another book on C#, you say? Yes, another one. Plenty of books are written about C# and .NET, but this book has one fundamental difference: I wrote this book to help you develop clean, idiomatic C# code in your day-to-day life. This book is not a reference book but rather a practical guide. This book does not cover things like how to write an if statement, what a method signature is, or what an object is. We are not concerned about syntax but instead focus on concepts and ideas. There is a difference between knowing the syntax of a language and being able to write clean, idiomatic code. After going through this book, that is exactly what you will be able do. Whatever your background is and whatever programming languages you know, as long as you understand object-oriented programming, this book helps you shift into the C# and .NET ecosystem, as shown in figure 1.1.

Figure 1.1 Every chapter introduction contains a progress diagram, which allows you to quickly figure out where you are in the book.

1.1 Why work in C#?

1.1.1 Reason 1: C# is economical

1.1.2 Reason 2: C# is maintainable

1.1.3 Reason 3: C# is developer friendly and easy to use

1.2 Why not work in C#?

1.2.1 Operating system development

1.2.2 Real-time operating system embedded development in C#

1.2.3 Numerical computing and C#

1.3 Switching to C#

1.4 What you will learn in this book

1.5 What you will not learn in this book