Menu

Nakov.com logo

Thoughts on Software Engineering

Безплатната книга “Принципи на програмирането със C#” / 2018 – обновена за C# 7 и VS 2017

С голяма радост обявявам на всички, които се интересуват сериозно от програмиране, че през юли 2018 г. излезе трето, обновено издание на добре известната безплатна книга “Въведение в програмирането със C#”, която учи на основи и принципи на програмирането, на алгоритмично мислене и решаване на задачи, структури от данни и алгоритми, редом с концепции от обектно-ориентираното програмиране (ООП) и с фундаментални принципи на качествения програмен код. Книгата е с променено заглавие, което по-точно съответства на нейното съдържание – “Принципи на програмирането със C#”. Каузата на книгата е да учи на алгоритмично мислене и на непреходните принципи на програмирането, които всеки кадърен програмист трябва да разбира в дълбочина и да прилага ежедневно в работата си. Книгата е задълбочено и изчерпателно ръководство по програмиране от ниво съвсем начинаещ до експерт и ви повежда от първите стъпки в писане на код и изпълнение на програми към по-сложни концепции като обектно-ориентирано програмиране и структури от данни.

За книгата “Въведение в програмирането със C#”

Intro C# книгата е оригинално българско творение, събрало опита на десетки доказани софтуерни инженери, начело с д-р Светлин Наков и Веско Колев, които споделят доброволно, без възнаграждение натрупаните през годините инженерна и преподавателска работа знания, умения и техники за програмиране с мисъл и с дълбоко разбиране на материята.

Историята на “Въведение в програмирането”

Книгата започва своята история още през 2008 г. Първоначално излиза като безплатен учебник за програмиране с езика Java, а през 2011 г. е адаптирана за C# и програмиране за .NET платформата.

Години наред тази книга е използвана като основен учебник за навлизащите в програмирането в Национална академия по разработка на софтуер (НАРС), в Софтуерната академия на Телерик (Telerik Academy) и в Софтуерния университет (СофтУни), и върху нея са изградени различни учебни курсове: от съвсем начинаещи до по-напреднали. Учебните програми в тези академии от тогава се промениха и еволюираха по свой път и вече не следват стриктно този учебник, но той си остана едно от най-важните учебни пособия за българския кандидат-програмист (на училищно, любителско и университетско ниво) и продължава да поднася в дълбочина основните непреходни принципи на програмирането. Макар и образованието да става по-интерактивно, с видео-уроци и интерактивни учебни платформи, книгите все още имат важно място в образованието, и особено книги като тази, които дават фундаментални знания и изграждат трайни умения.

През 2015 г. книгата “основи на програмирането със C#” беше леко обновена (второ издание, версия 2.0), но по същина си остана актуална към вече остарелите C# 4 и Visual Studio 2010. Нямахме сили и ресурс за по-сериозна преработка.

През 2017 г. дойде време да издадем нова версия (трето издание, версия 3.0) на тази ценна компилация от знания и техники за начинаещи и средно ниво програмисти. Решихме да вложим по-сериозни усилия и да направим истинско обновяване и адаптация на цялото съдържание (над 1100 страници) за новостите в програмирането и езика C# от последните години: повече функционално програмиране, адаптация към .NET Core и C# 7, с използване на Visual Studio 2017. Поправихме и много грешки и недобре написани части от съдържанието, добавихме и някои допълнения. Променихме и заглавието на книгата, за да съответства по-добре на нейното съдържание и образователна кауза. Работата отне повече от половин година и сме радостни, че през юли 2018 г. проектът завършва успешно: излезе Принципи на програмирането със C#” (версия 3.0).

Какво обхваща тази ценна, фундаментална за програмирането, книга?

Книгата “Принципи на програмирането със C#” обхваща всички фундаментални умения и принципи, които един програмист трябва да владее, за да бъде добър в професията си. Книгата учи на концепции, принципи и начин на мислене и подход към програмирането, без да навлиза в конкретни софтуерни технологии (като уеб и мобилна разработка), които се променят ежедневно.

Тя започва от най-базовите понятия за писане на код, компилация и работа със среда за разработка, преминава през основите на писането на програмна логика, типовете данни в програмирането, бройни системи и представяне на числата, работата с изрази и конструкции за управление, проверки и цикли, работа с входно-изходни операция, четене и писане от конзолата, използване на подпрограми (методи и функции).

След най-базовите понятия книгата обръща внимание на по-сложни концепции от програмирането като работа с линейни структури от данни, масиви, матрици и списъци, работа с текст и стрингообработка, създаване и използване на обекти, рекурсия и рекурсивни алгоритми, работа с текстови файлове и потоци, обработка на изключения и защитно програмиране.

Следва сериозно задълбочено навлизане в обектно-ориентираното програмиране (ООП), дефиниране на класове, конструктори, свойства, методи, абстракция, интерфейси, наследяване и полиморфизъм, обектно-ориентирано моделиране и шаблони за дизайн.

След въведение в ООП, следва въведение в структурите от данни: от теория и имплементация на линейни структури като свързан списък, списък, базиран на масив, стек и опашка, до дървета, наредени двоични дървета за претърсване, балансирани дървета и графи, стигайки до хеш-таблици, имплементации на речници и множества, заедно с инструменти за оценяване на сложност на алгоритми и асимптотична нотация.

Книгата завършва с практически техники и утвърдена методика за ефективно решаване на задачи по програмиране, развита детайлно като теория и демонстрирана многократно на практика с десетки практически задачи, които показват силата на показания подход.

Книгата дава задълбочено знание

Книгата “Принципи на програмирането със C#” дава задълбочено познание за програмирането, изгражда начин на работа и стабилен подход към решаване на проблеми от програмирането чрез алгоритмично мислене, писане на ефективен код с правилно използване на основните структури от данни и формиране на добър стил на програмиране, базиран на утвърдени техники за изграждане на качествен код, който лесно се четен, разбира и поддържа.

Две книги, които взаимно се допълват

Някои колеги са объркани и се питат: защо има две книги за програмиране за начинаещи със C#, от един и същ автори и какво е различното между тях?

Тази книга се явява естествено продължение на книгата по кодене за начинаещи “Основи на програмирането със C#” – https://csharp-book.softuni.bg. Препоръчваме ви да четете тези две книги една след друга в следния ред:

  • Книга “C# основи – тя дава начални знания и умения за писане на код (данни, проверки, цикли). Тази книга е много, много подробна, обхваща много малка част от програмирането (писане на програмна логика), но в много голяма дълбочина и с много, много примери, задачи и решения, разписани стъпка по стъпка. Препоръчва се за напълни начинаещи.
  • Книга “C# принципи – тя дава много по-дълбоки знания и умения и като обхват и като ниво на детайли. В нея се обхващат фундаменталните принципи на програмирането, които не са се променили съществено през последните 15-20 години, макар и през призмата на съвременния език за програмиране C# (последна версия). Тази книга обхваща 5 пъти повече концепции и принципи на програмирането от първата и се препоръчва като втора стъпка след предходната книга.

Секция “Благодарности”

Благодаря на всички колеги, които се включиха доброволно и без заплащане в екипа по проекта за създаването и развитието на тази фундаментална книга по програмиране, за да споделят опит и да помогнат на навлизащите в програмирането (по азбучен ред): Веселин Георгиев, Веселин Колев, Дилян Димитров, Илиян Мурданлиев, Йосиф Йосифов, Йордан Павлов, Мира Бивас, Михаил Вълков, Михаил Стойнов, Николай Василев, Николай Костов, Николай Недялков, Павел Дончев, Павлина Хаджиева, Радослав Иванов, Радослав Кирилов, Радослав Тодоров, Светлин Наков, Станислав Златинов, Стефан Стаев, Теодор Божиков, Теодор Стоев, Христо Германов, Цвятко Конов. Благодарим и на всички останали, които допринесоха за този проект: Венцислав Петров, Росица Ненова, Марина Шидерова.

Книга "Принципи на програмирането със C#"

От къде да се сдобия с книгата?

Книгата “Принципи на C# програмирането” се разпространява безплатно в електронен формат (PDF, DOCX и други формати) и ще може да се закупи на хартия от книжния пазар, както и от СофтУни. Книгата ще излезе от печат септември 2018:

Успех на всички с програмирането!

Comments (10)

10 Responses to “Безплатната книга “Принципи на програмирането със C#” / 2018 – обновена за C# 7 и VS 2017”

  1. Стоян Чолов says:

    Светлине и на Целия Екип Браво! И Успех в мисията която сте поели.

  2. Светослав Иванов says:

    Браво за допълнението! Ще очакваме от вас и на другите езици! Продължавайте да образовате България!!!

  3. Пешо says:

    Благодаря!

  4. Деян says:

    Супер! Мисля, че е нужно да издадете книга, която е за по-опитни програмисти.

  5. Yordan says:

    Здравейте, тъй като вече е септември 2018, а в статията пише, че през този месец ще излезе от печат хартиеното издание на книгата, бих искал да попитам налично ли е вече? И ако не – кога ще бъде налично?

  6. Милена says:

    Да я очакваме ли и в Java вариант?

  7. Ангел says:

    Мога ли да поръчам Основи и принципи на програмирането със C#.

RSS feed for comments on this post. TrackBack URL

LEAVE A COMMENT