Водещи: Валери Дачев, Александър Далемски и Ивелин Моллов, ДАВИД Холдинг АД
Целта на курса е да въведе участниците във фундаментите на съвременното приложно програмиране, предполагайки че те имат базови познания в областта на софтуерната разработка. Краткият период на провеждане на курса няма да позволи пълно запознаване със съответните области и затова целта е на участниците да бъде даден добър старт в областта и възможност сами да определят своята насоченост.
Курсът ще се провежда езика за програмиране C#, система за управление на бази данни Microsoft SQL Server и в среда за разработка на приложенията Microsoft Visual Studio.
Общата продължителност на курса е 40 часа, които при нужда ще бъдат увеличени.
Следва програмата на самия курс:
- Общи слова
- …
 
 - Основи на обектното програмиране.
(с елементи на C#)
- Абстракция на данните. Класове и обекти. Видимост.
(или какво ще сънуваме от тук нататък)
 - Наследяване. Композиция.
(или Слънчевата система през погледа на програмиста)
 - Override и Overload;
(или как да се загубим в собствения си код)
 - Абстрактни класове. Интерфейси.
(или с какво се занимават софтуерните архитекти)
 - Полиморфизъм;
(и защо аджеба се занимават софтуерните архитекти)
 - Обработка на грешки. Работа с изключения.
(и още – как да оставим днешната работа за утре)
 
 - Абстракция на данните. Класове и обекти. Видимост.
 - Основи на XML.
(с неоценимата помощ на текстови редактори)
- Що е то XML (eXtensible Markup Language);
(и защо XML ще замени есперанто)
 - Що е то XSLT (eXtensible Stylesheet Language for Transformations)?
(или въведение в езиковите преводи)
 - Що е то XSD (XML Specification Definition)?
(или да обясним XML говорейки XML)
 - Приложение: Персистенция. Interoperability. Web услуги.
(или защо си губим времето с XML)
 
 - Що е то XML (eXtensible Markup Language);
 - Работа със системи за управление на бази данни (СУБД)
(Microsoft SQL Server for newbies)
- Основи на базите данни. Видове бази данни;
(и по какво се различават от бозите данни)
 - Архитектура на СУБД;
(или нервите на коя част от нервната ни система са ни спестили)
 - Организация на СУБД;
(или първи опит да се загубим в термини)
 - DDL, DCL и DML в едно – Structured Query Language (SQL).
(неочаквана добра комбинация – да научим английски с бази данни)
 
 - Основи на базите данни. Видове бази данни;
 - .NET Framework
- …
 
 - Desktop приложения:
(или какво стои зад цъкането с мишката)
- Въведение. Предимства и недостатъци;
 - Windows Forms
 - Windows Presentation Foundation (WPF).
 
 - Web приложения:
(или какво НЕ правят web дизайнерите)
- Въведение. Предимства и недостатъци;
 - Особености и ограничения на HTTP протокола;
 - Основи на (X)HTML & Java Script;
 - AJAX и JSON;
 - Web Forms;
 - ASP.NET MVC.
 
 - Web услуги:
(или как да си говорим с останалия свят)
- Описание и приложение;
 - Особености и изисквания. Приложение;
 - Спецификации на услугите;
 - Прилики и разлики с web приложенията.
 
 - Практики в разработката.
(или религиозните войните между разработчиците)
- Трислойна архитектура на решенията;
(или принципът „Разделяй и владей”)
 - Бележки по освобождаването на паметта;
(или кой ще ни чисти бъкиите)
 - Отличителни белези на лошия код. Примери;
(или „Опознай врага… за да го обикнеш”)
 - Що е то UML и кой го ползва?
(и защо няма да го ползваме ние)
 
 - Трислойна архитектура на решенията;
 - Разработка на софтуерно решение.
(Putting it all together… или повече действие, по-малко приказки)
- Формулиране на основните изисквания;
(или симулация на преговори с клиент – тест за издръжливост)
 - Базова архитектура на решението. Интерфейси за работа;
(или увод в строителството)
 - План и разпределение на работата;
(или защо трябва да започнем от мазето)
 - Дизайн на базите от данни;
(или как да си подредим гардероба)
 - Дизайн на базовите класове и основната библиотека;
(или как се излива бетонна плоча)
 - Имплементация;
(известна още като „черната работа“)
 - Тестване на проекта и изчистване на грешки.
(или отработване на фразата „Роди ме, мамо, тъпа, аз сама ще се изруся.“)
 
 - Формулиране на основните изисквания;
 - Окончание.
(или кратко въведение в алкохолизма на програмистите)