Fundamentals of Computer Programming with C#
If you want to take up programming seriously, you’ve come across the
right book. For real! This is the book with which you can make your first
steps in programming. It will give a flying start to your long journey into
learning modern programming languages and software development
technologies. This book teaches the fundamental principles and concepts
of programming, which have not changed significantly in the past 15 years.
Do not hesitate to read this book even if C# is not the language you would
like to pursue. Whatever language you move on to, the knowledge we will
give you here will stick, because this book will teach you to think like
programmers. We will show you and teach you how to write programs for
solving practical algorithmic problems, form the skills in you to come up
with (and implement) algorithms, and use various data structures.
As improbable as it might seem to you, the basic principles of writing
computer programs have not changed all that much in the past 15 years.
Programming languages change, technologies get modernized, integrated
development environments get more and more advanced but the
fundamental principles of programming remain the same. When
beginners learn to think algorithmically, and then learn to divide a problem
instinctively into a series of steps to solve it, as well as when they learn to
select the appropriate data structures and write high-quality programming
code that is when they become programmers. Once you acquire these skills,
you can easily learn new languages and various technologies – like Web
SQL, XML, REST, ASP.NET, Java EE, Python, Ruby and hundreds more.
About the Book
This book is designed specifically to teach you to think like a programmer and
the C# language is just a tool that can be replaced by any other modern
programming languages, such as Java, C++, PHP or Python. This is a book
on programming, not a book on C#!
Please Excuse Us for the Bugs in the Translation!
This book was originally written in Bulgarian language by a large team of
volunteer software engineers and later translated into English. None of the
authors, translators, editors and the other contributors is a native English
speaker so you might find many mistakes and imprecise translation. Please,
excuse us! Over 70 people have participated in this project (mostly
Bulgarians): authors, editors, translators, correctors, bug submitters, etc. and