Водещи: Валери Дачев, Александър Далемски и Ивелин Моллов, ДАВИД Холдинг АД
Целта на курса е да въведе участниците във фундаментите на съвременното приложно програмиране, предполагайки че те имат базови познания в областта на софтуерната разработка. Краткият период на провеждане на курса няма да позволи пълно запознаване със съответните области и затова целта е на участниците да бъде даден добър старт в областта и възможност сами да определят своята насоченост.
Курсът ще се провежда езика за програмиране 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… или повече действие, по-малко приказки)
- Формулиране на основните изисквания;
(или симулация на преговори с клиент – тест за издръжливост)
- Базова архитектура на решението. Интерфейси за работа;
(или увод в строителството)
- План и разпределение на работата;
(или защо трябва да започнем от мазето)
- Дизайн на базите от данни;
(или как да си подредим гардероба)
- Дизайн на базовите класове и основната библиотека;
(или как се излива бетонна плоча)
- Имплементация;
(известна още като „черната работа“)
- Тестване на проекта и изчистване на грешки.
(или отработване на фразата „Роди ме, мамо, тъпа, аз сама ще се изруся.“)
- Формулиране на основните изисквания;
- Окончание.
(или кратко въведение в алкохолизма на програмистите)