Jump to ratings and reviews
Rate this book

Fundamentals of Computer Programming with C#

Rate this book
The free book "Fundamentals of Computer Programming with C#" (http://www.introprogramming.info) is a comprehensive computer programming tutorial that teaches programming, logical thinking, data structures and algorithms, problem solving and high quality code with lots of examples in C#. It comes with free video lessons, presentations, exercises and solutions.

This free programming tutorial starts with the first steps in programming and software development like variables, data types, conditional statements, loops and arrays and continues with other basic topics like methods, numeral systems, strings and string processing, exceptions, classes and objects.

After the basics this free fundamental programming book enters into more advanced programming topics like recursion, data structures (lists, trees, hash-tables and graphs), high-quality code, unit testing and refactoring, object-oriented principles (inheritance, abstraction, encapsulation and polymorphism) and their implementation in the C# language. It also covers fundamental topics that each good developer should know like algorithm design, complexity of algorithms and problem solving.

This free programming book uses C# language and Visual Studio to illustrate the programming concepts and explains some C# / .NET specific technologies like lambda expressions, extension methods and LINQ. This free programming C# book is written by a team of developers lead by Svetlin Nakov (http://www.nakov.com) who has 20+ years practical software development experience and 10+ years as software development trainer.

This free book on fundamentals of programming teaches the major programming concepts and way of thinking needed to become a good software engineer and the C# language in the meantime. It is a great start for anyone who wants to become a skillful software engineer. The books does not teach technologies like databases, mobile and web development, but shows the true way to master the basics of programming regardless of the languages, technologies and tools. It is good for beginners and intermediate developers who want to put a solid base for a successful career in the software engineering industry. The book is accompanied by 27 free video lessons on C# programming (42 hours), presentation slides (27 PPTX presentations) and mind maps, as well as hundreds of exercises with solutions and live examples.

Table of contents

Preface
Chapter 1. Introduction to Programming
Chapter 2. Primitive Types and Variables
Chapter 3. Operators and Expressions
Chapter 4. Console Input and Output
Chapter 5. Conditional Statements
Chapter 6. Loops
Chapter 7. Arrays
Chapter 8. Numeral Systems
Chapter 9. Methods
Chapter 10. Recursion
Chapter 11. Creating and Using Objects
Chapter 12. Exception Handling
Chapter 13. Strings and Text Processing
Chapter 14. Defining Classes
Chapter 15. Text Files
Chapter 16. Linear Data Structures
Chapter 17. Trees and Graphs
Chapter 18. Dictionaries, Hash-Tables and Sets
Chapter 19. Data Structures and Algorithm Complexity
Chapter 20. Object-Oriented Programming Principles
Chapter 21. High-Quality Programming Code
Chapter 22. Lambda Expressions and LINQ
Chapter 23. Methodology of Problem Solving
Chapter 24. Sample Programming Exam – Topic #1
Chapter 25. Sample Programming Exam – Topic #2
Chapter 26. Sample Programming Exam – Topic #3
Conclusion

Tags: free, programming, book, computer programming, programming fundamentals, ebook, book programming, C#, CSharp, C# book, tutorial, C# tutorial; programming concepts, programming fundamentals, compiler, Visual Studio, .NET, .NET Framework, data types, variables, expressions, statements, console, conditional statements, control-flow logic, loops, arrays, numeral systems, methods, strings, text processing, StringBuilder, exceptions, exception handling, stack trace, streams, files, text files, linear data structures, list, linked list, stack, queue, tree, balanced tree, graph, depth-first search, DFS, breadth-first search, BFS, dictionaries, hash tables, associative arrays, sets, algorithms, sorting algorithm, searching algorithms, recursion, combinatorial algorithms, algorithm complexity, OOP, object-oriented programming, classes, objects, constructors, fields, properties, static members, abstraction, interfaces, encapsulation, inheritance, virtual methods, polymorphism, cohesion, coupling, enumerations, generics, namespaces, UML, design patterns, extension methods, anonymous types, lambda expressions, LINQ, code quality, high-quality code, high-quality classes, high-quality methods, code formatting, self-documenting code, code refactoring, problem solving, problem solving methodology, 9789544007737, 9544007733

Download the free C# programming book, videos, presentations and other resources from http://introprogramming.info.

1132 pages, Paperback

First published August 1, 2011

39 people are currently reading
178 people want to read

About the author

Svetlin Nakov

14 books42 followers
Svetlin Nakov (https://nakov.com) has 20+ years of technical background as software engineer, software project manager, consultant, trainer and entrepreneur with rich experience with Web development, information systems, databases, blockchain, cryptography, .NET, Java EE, JavaScript, PHP, Python and software engineering. He is the leading author of 15 books on computer programming, software technologies, cryptography, C#, Java, JavaScript, Python, C++ and tens of technical and scientific publications. He is a big fan of knowledge sharing and is proud Wikipedia contributor, free books author and open-source supporter.

Svetlin has been a speaker at hundreds of conferences, seminars, meetups, courses and other trainings in the United States, Singapore, Germany, Egypt, Bulgaria and other locations. He holds a PhD degree in computer science (for his research on computational linguistics and machine learning), several medals from the International Informatics Olympiads (IOI) and the Bulgarian President’s award “John Atanasoff”. He has been a part-time assistant professor / visiting lecturer / technical trainer in Sofia University, New Bulgarian University, the Technical University of Sofia, Ngee Ann Polytechnic (Singapore) and few others.

Dr. Svetlin Nakov have spent his last 15 years in teaching software engineers: from basics of coding to advanced Web apps. He is proud to have tens of thousands graduates who got technical skills and joined the software industry.

In the last few years Svetlin Nakov together with his partners drive the global expansion of the largest training center for software engineers in Bulgaria and the region – the Software University (https://softuni.us), where he inspires and teaches hundred of thousands of young people in computer science, software development, information technologies and digital skills, and gives them a profession and a job.

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
55 (54%)
4 stars
32 (31%)
3 stars
9 (8%)
2 stars
4 (3%)
1 star
1 (<1%)
Displaying 1 - 9 of 9 reviews
8 reviews
September 1, 2014
Impressive

I was skeptical at first because of the cost. The author starts right off with the comparisons of languages and why NOT to use C++ or PHP which was inline with my philosophy of why C# is important. I also love teaching books with exercises and this book is full of them. Don't let the apology of English translation defer you either because there's no translation confusion anywhere that I found ... and I'm from America. Highly recommending this book for beginners and intermediate programmers who want to take their coding up to professional level. Warning.. be prepared to study and practice.
1 review
August 15, 2019
Excellent C# beginners book. It isn't a typical reference book but it makes you think like a real programmer. Loads of coding examples and exercises, advices and best practises. I couldn't think of a better beginners book. A+
Profile Image for Ibrahim Radi.
34 reviews3 followers
February 6, 2022
The book encompasses the topics needed to start practical with programming. The approach with topics and assignments is the best for teaching a person how to program, Loads of coding examples and exercises, advices and best practices.
I read this book in a Structure Programming course at the university.
2 reviews
July 3, 2018
That is the best book for understanding C#. Please, don't get prejudiced to book that looks like informal cover page. This book can be a main book of CS classes at Universities. When, I was reading -try to learn C#- this book, I found myself at ancient Eygpt try to understand sexagesimal number to calculate River Nile floats or at Today's world, try to implement algorithm on number series. This is excellent book.

YOU SHOULD READ THIS BOOK IMMEDIATELY!
4 reviews
September 25, 2015
The book encompasses the topics needed to start practical with programming. The approach with topics and assignments is the best for teaching a person how to program. Great work.
Displaying 1 - 9 of 9 reviews

Can't find what you're looking for?

Get help and learn more about the design.