Средства и среды разработки




Программа экзамена по Технологии программирования (2012 г.)

Технологические подходы к разработке программ.

Принципы быстрой разработки и экстремального программирования

1. Общая классификация технологических подходов и процессов разработки.

Традиционный подход к разработке программ (каскадный или водопадный

процесс) и итеративные подходы.

2. Унифицированный процесс (UP) и Rational Unified Process (RUP).

3. Принципы быстрой разработки (agile development).

Манифест альянса быстрой разработки.

4. Основные принципы и практики экстремального программирования (XP). Отличия

XP от каскадного и унифицированного подходов.

Начальные этапы разработки. Анализ требований. Прецеденты и

Пользовательские истории. Дополнительные требования

5. Виды требований. Функциональные и нефункциональные требования,

ограничения.

6. Понятие о прецедентах. Виды описания прецедентов. Анализ прецедентов.

7. Пользовательские истории в XP. Их отличия от прецедентов.

8. Анализ дополнительных требований.

9. Планирование разработки. Экстремальное планирование. Общий план. Планы

версий и итераций, текущее планирование. Измерение скорости работы.

10. Архитекутурное проектирование. Задачи. Архитектурные паттерны.

Основы ООП. Моделирование предметной области

 

11. Понятие о классе и объекте. Атрибуты (поля) и методы классов. Инкапсуляция,

наследование, полиморфизм.

12. Отношения между классами и объектами. Виды отношений.

13. Ассоциация, агрегация и композиция. Отношение зависимости.

14. Наследование и реализация. Сравнение наследования и делегирования.

15. Абстрактные классы и интерфейсы. Назначение интерфейсов.

16. Задача классификации на примере анализа предметной области. Варианты

выделения классов.

17. Базовые принципы объектного проектирования SOLID

 

UML и MDD

 

18. Понятие об UML. Назначение UML. Виды диаграмм UML.

19. Диаграммы классов и пакетов. Диаграммы прецедентов.

20. Диаграммы взаимодействия.

21. Диаграммы активности и состояний.

22. Диаграммы компонентов и размещения.

23. Разработка, управляемая моделью (MDD). Основные принципы. Использование

диаграмм UML. Пример MDD.

24. Использование CASE — средств в процессе MDD. Reverse Engeneering.

Практики экстремального программирования. Планирование, тестирование, рефакторинг

25. Понятие о модульном тестировании. Назначение, способы реализации.

26. Каталог шаблонов тестирования (виды модульных тестов).

27. Понятие о разработке через тестирование (TDD).

28. Оболочка xUnit/NUnit. Назначение, структура, применение.

29. Понятие о приемочном тестировании. Назначение, автоматизация.

30. Понятие о рефакторинге.

31. Каталог шаблонов рефакторинга.

Шаблоны (паттерны) проектирования

32. Понятие о шаблонах (паттернах). Паттерны проектирования. Классификация

паттернов.

33. Паттерны GoF. Классификация паттернов GoF. Назначение паттернов.

34. Шаблоны структурирования (Адаптер, Компоновщик, Фасад, Заместитель и др.)

35. Шаблоны поведения (Итератор, Наблюдатель, Стратегия, Шаблонный метод и др.)

36. Шаблоны создания (Фабричный метод, Абстрактная фабрика, Одиночка).

37. Архитектурные шаблоны (Слои, Контроллер и др.). Шаблоны создания

корпоративных приложений (М.Фаулер).

38. Шаблон Слои и концепция расслоения приложений. Трех- и многоуровневые

приложения.

 

Использование технологий баз данных в объектно-ориентированных проектах

39. Виды приложений, работающих с БД и варианты использования БД.

40. Применение шаблонов при работе с БД (Фасад, Заместитель, Активная запись, DIP,

модуль таблицы, преобразователь данных-маппер, репозиторий, ORM и др.).

41. Преимущества и недостатки размещения логики предметной области в БД и в

классах приложения.

 

Реализация пользовательского интерфейса

42. Виды пользовательского интерфейса. Роль интерфейса в приложении.

Проблематика отделения интерфейса от основной части приложения.

Анти-паттерн Smart User Interface.

43. Применение шаблонов GoF при построении пользовательского интерфейса

(Наблюдатель, Контроллер, Фасад и др.).

44. Шаблоны MVC, MVP, MVVM.

 

Упаковка проектов и построение распределенных приложений

45. Задача упаковки программных проектов. Общие принципы упаковки (REP, CCP и

др). Понятие о пакете.

46. Метрики упаковки. Способы улучшения метрик.

47. Понятие о распределенных приложениях. Виды распределенных приложений.

Проблематика построения распределенных приложений.

Средства и среды разработки

48. Классификация средств и сред создания программ.

49. CASE средства. Преимущества и недостатки. Примеры CASE средств. Понятие о

возвратном проектировании. Стандарты IDEF. Понятие о MDD/MDA.

50. Интегрированные среды (IDE) и визуальные средства быстрой разработки (RAD).

Преимущества и недостатки.

51. Средства поддержки коллективной разработки.

52. Понятие о защищенном программировании.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-04-14 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: