Synopsis Programming Basics with C# by : Svetlin Nakov
The free book "Programming Basics with C#" (https://csharp-book.softuni.org) is a comprehensive entry level computer programming tutorial for absolute beginners that teaches basics of coding (variables and data, conditional statements, loops and methods), logical thinking and problem solving using the C# language. The book comes with free video lessons for each chapter, 150+ practical exercises with an automated online evaluation system (online judge) and solution guidelines for the exercises. The book "Programming Basics with C#" introduces the readers with writing programming code at a beginners level (basic coding skills), working with development environment (IDE), using variables and data, operators and expressions, working with the console (reading input data and printing output), using conditional statements (if, if-else, switch-case), loops (for, while, do-while, foreach) and methods (declaring and calling methods, passing parameters and returning values), as well as algorithmic thinking and solving practical programming problems. This free coding book for beginners is written by a team of developers lead by Dr. Svetlin Nakov (https://nakov.com) who has 25+ years practical software development experience and 15+ years as software development trainer. The free book "Programming Basics with C#" is an official textbook for the "Programming Basics" classes at the Software University (SoftUni), used by tens of thousands of students at the start of their software development education. The book relies on the "explain by examples" and "learn by doing" approaches to learning the practical coding skills required to become a software engineer. Each chapter provides some concepts, explained as video lesson with lots of code examples, followed by practical exercises involving the use of the new concepts with online evaluation system (online judge). Learners watch the videos, try the sample code and solve the exercises, which come as part of each book chapter. Exercises are given in series with increasing complexity: from quite trivial, though little complicated to highly complicated, requiring more thinking and research in Internet. Most exercises come with detailed hints and guidelines about how to construct a correct solution. Download the free C# programming basics book (as PDF, ePub and Mobi formats), watch the video lessons and the live coding demos, solve the practical exercises and evaluate your solutions at the book official Web site: https://csharp-book.softuni.org. Tags: book, programming, free, computer programming, coding, writing code, programming basics, ebook, programming book, book programming, C#, CSharp, C# book, Visual Studio, .NET, tutorial, C# tutorial, video lessons, C# videos, programming videos, programming lessons, coding lessons, coding videos, programming concepts, data types, variables, operators, expressions, calculations, statements, console input and output, control-flow logic, program logic, conditional statements, nested conditions, loops, nested loops, methods, functions, method parameters, method return values, problem solving, practical exercises, practical coding, learn by examples, learn by doing, code examples, online judge system, Nakov, Svetlin Nakov, SoftUni, ISBN 978-619-00-0902-3, ISBN 9786190009023 Detailed Book Contents: Preface - about the book, scope, how to learn programming, how to become a developer, authors team, SoftUni, the online judge, forums and other resources Chapter 1. First Steps in Programming - writing simple commands, writing simple computer programs, runtime environments, the C# language, Visual Studio and other IDEs, creating a console program, writing computer programs in C# using Visual Studio, building a simple GUI and Web apps in Visual Studio Chapter 2.1. Simple Calculations - using the system console, reading and printing integers, using data types and variables, reading floating-point numbers, using arithmetic operations, concatenating text and numbers, using numerical expressions, exercises with simple calculations, creating a simple GUI app for converting currencies Chapter 2.2. Simple Calculations – Exam Problems - practical problems with console input / output and simple calculations, with solution guidelines, from programming basics exams Chapter 3.1. Simple Conditions - using simple conditional statements, comparing numbers, simple if-else conditions, variable scope, sequence of if-else conditions, using the debugger, practical exercises with simple conditions with solution guidelines Chapter 3.2. Simple Conditions – Exam Problems - practical problems with simple if-else conditions, with solution guidelines, from programming basics exams Chapter 4.1. More Complex Conditions - nested if conditions (if-else inside if-else), using the logical "OR", "AND" and "NOT" operators, using the switch-case conditional statements, building GUI app for visualizing a point in a rectangle, practical exercises with solution guidelines Chapter 4.2. More Complex Conditions – Exam Problems - practical problems with more complex if-else conditions and nested if conditions, with solution guidelines, from programming basics exams Chapter 5.1. Repetitions (Loops) - using simple for-loops, iterating over the numbers from 1 to n, reading and processing sequences of numbers from the console, using the for-loop code snipped in Visual Studio, many practical exercises with loops, with solution guidelines, summing numbers, finding min / max element, drawing with the "turtle graphics" in a GUI app Chapter 5.2. Loops – Exam Problems - practical problems with simple loops, with solution guidelines, from programming basics exams Chapter 6.1. Nested Loops - using nested loops (loops inside other loops), implementing more complex logic with loops and conditional statements, printing simple and more complex 2D figures on the console using nested loops, calculations and if conditions, practical exercises with nested loops with solution guidelines, building a simple Web app to draw ratings in Visual Studio using ASP.NET MVC Chapter 6.2. Nested Loops – Exam Problems - practical problems with nested loops and more complex logic, with solution guidelines, from programming basics exams Chapter 7.1. More Complex Loops - using for-loops with a step, loops with decreasing loop variable, using while loops, and do-while loops, solving non-trivial problems like calculating GCD (greatest common divisor) and finding the prime numbers in certain range, infinite loops with break inside, using simple try-catch statements to handle errors, building a simple Web based game using Visual Studio and ASP.NET MVC, practical exercises with more complex loops with solution guidelines Chapter 7.2. More Complex Loops – Exam Problems - practical problems with nested and more complex loops with non-trivial logic, with solution guidelines, from programming basics exams Chapter 8.1. Practical Exam Preparations – Part I - sample practical exam from the entrance exams at the Software University, with solution guidelines, covering 6 problems with simple calculations, with simple conditions, with more complex conditions, with a simple loop, with nested loops, with nested loops and more complex logic Chapter 8.2. Practical Exam Preparations – Part II - another sample practical exam from the entrance exams at the Software University, with solution guidelines, covering 6 problems with simple calculations, with simple conditions, with more complex conditions, with a simple loop, with nested loops, with nested loops and more complex logic Chapter 9.1. Problems for Champions – Part I - a sample set of more complex problems, requiring stronger algorithmic thinking and programming techniques, with solution guidelines Chapter 9.2. Problems for Champions – Part II - another set of more complex problems, requiring stronger algorithmic thinking and programming techniques, with solution guidelines Chapter 10. Methods - what is method, when to use methods, defining and calling methods (functions), passing parameters and returning values, returning multiple values, overloading methods, using nested methods (local functions), naming methods correctly, good practices for using methods Chapter 11. Tricks and Hacks - some special techniques, tricks and hacks for improving our performance with C# and Visual Studio: hints how to format the code, conventions an guidelines about naming the code elements, using keyboard shortcuts in VS, defining and using code snippets in VS, debugging code, using breakpoints and watches Conclusion - the skills of the software engineers, how to continue learning software development after this book (study software engineering in SoftUni, study in your own way), how to get learning resources and how many time it takes to become a skillful software engineer and start a job