Факултет по математика и информатика - Проектиране на софтуер с примери на Java (Практикум)
Лектор
Кирил Стефанов (софтуерен инженер в OBS – София)
Анотация
Този курс е предназначен за студенти с интерес към софтуерните технологии. Курсът е акцентиран върху проектиране на приложения и покрива широк кръг от умения, необходими при разработката на софтуер. По време на курса студентите ще научат как да анализират проблемите, които възникват в разработката на даден софтуерен модул, намиране на решения и оценки на алтернативите. Студентите ще се запознаят с мощни механизми за абстракция, шаблони за дизайн, които са се утвърдили в практиката, както и начини за ограничаване на времето прекарано в отстраняване на грешки. Изискванията са: владеене на английски език на работно ниво (повечето материали ще бъдат на английски език) и основни познания на езика Java.
Съдържание
Въведение в софтуерното инженерство.
Концепции и принципи на обектно-ориентираното програмиране.
Създаване и спазване на модулните спецификации.
Подтиповете и правила за наследяване. Принцип на заместване.
Ролята на тестовете.
Процедурна спецификация.
Абстрактни типов данни.
Абстракцията в детайли. Абстрактни функции.
Еквивалентност на обекти и копиране.
Обработка на грешки.
Тестване и отстраняване на грешки.
Проектиране на приложенията.
Зависимост и свързаност между компонентите на приложението.