План на курса
Необходимостта от обектно-ориентирано програмиране
Опит за отразяване на реалния свят в програмирането
Началото и еволюцията на обектно-ориентираното програмиране
Programowanie obiektowe по отношение на правилата KISS и DRY
Класове и обекти
Идеи и същности във философията на Платон
Ролята на класовете
Реализация на класове с помощта на обекти
Класове, свойства и статични методи
Конвенции за именуване и кодиране
Наименуване на класове
Наименуване на свойства и методи
Именуване на пакети и папки
Други конвенции
Структура на класа
Свойства/полета като описание на състоянието на обекта
Аксесоари
Методи като изпълнение на функционалност
Моделиране и графично представяне на класове
- Анализ на изискванията
- Моделиране на структурата на класовете и връзките
- Описване на бизнес обекти
- EER диаграми
- Диаграма на класа UML
Парадигми на обектно-ориентираното програмиране
Концепцията за парадигма
Херметизация
Абстракция
Наследство
Полиморфизъм
Проектиране и изпълнение на абстрактния слой
Абстрактни класове
Интерфейси
Характеристики - Черти
Вложени класове
Генерични класове
Създаване на обекти
Начини за създаване на обекти
Ролята на дизайнера
Фабричен модел
Зависимости между класове
Агрегиране
Състав
Разделяне на зависимостта - отделяне
Инжектиране на зависимост, DIC контейнери
Модел на посредника
Организация на кода
Проектиране на многократно използваем код
Структура на папката
Пространства от имена, пакети, модули
Programowanie obiektowe и производителност
Резервиране на памет за обекти
Събирач на боклук
Изрично премахване на обекти, деструктори
Работа с референции
Механизъм за отражение
Област прилага отражение
Получаване на информация за класове и обекти
Значението на размисъла при създаването на документация и софтуер за тестване
Обработка на грешки
Възможни модели за обработка на грешки
Обектно-ориентиран модел за обработка на грешки
Ролята на изключенията и класа Exception, хвърляне и прихващане на изключения
Try-catch-final block, блоково влагане
Антимодели на обектно-ориентираното програмиране
Прекомерна класова отговорност, модел на делегиране
Силни зависимости
Сингълтън и потенциални проблеми
Модел на анемичен домейн
Други антимодели
Изисквания
Участниците в обучението трябва да имат основни познания по програмиране.
Oтзиви от потребители (2)
The extra information that was shared, the training was not straightforward groovy, which was nice.
Covenant - Vodacom
Курс - Groovy Programming
Добри примери, фокусирайте се върху най-полезния материал
Piotr Sowinski - Intel Technology Poland
Курс - Object Oriented Programming with C++
Машинен превод