5. Объектно-ориентированный анализ и объектно-ориентированное проектирование.
Сложность вызывается четырьмя основными причинами:
1.сложностью реальной предметной области;
2.трудностью управления процессом разработки;
3.необходимостью обеспечить достаточную гибкость программы;
4.неудовлетворит. способами описания поведения больших дискретных систем.
Признаки:1. Принцип иерархичности. Сложные системы часто являются иерархическими и состоят из взаимозависимых подсистем, которые в свою очередь также могут быть разделены на подсистемы, и т.д., вплоть до самого низкого уровням. 2.Принцип детальности. Выбор, какие компоненты в данной системе считаются элементарными, относительно произволен и в большой степени оставляется на усмотрение исследователя. 3.Принцип модульности. Внутрикомпонентная связь обычно сильнее, чем связь между компонентами. 4.Принцип экономности. Иерархические системы обычно состоят из немногих типов подсистем, по-разному скомбинированных и организованных. 5.Принцип эволюции. Любая работающая сложная система является результатом развития работавшей более простой системы.
Объект – это структурированная переменная, содержащая всю информацию о некотором физическом предмете или реализуемом в программе понятии, класс – это описание таких объектов и действий, которые можно с ними выполнять. Описания называют свойствами, а действия — методами.
Абстракция - это такие существенные характеристики некоторого объекта, которые отличают его от всех других объектов и, таким образом, четко определяют особенности данного объекта с точки зрения дальнейшего рассмотрения и анализа. Абстрагирование концентрирует внимание на внешних особенностях объекта и позволяет отделить самые существенные особенности поведения от деталей их осуществления.
Если Абстрагирование фокусирует внимание на внешних особенностях объекта, то Инкапсуляция не позволяет различать внутреннее устройство объекта.
Инкапсуляция — это процесс отделения друг от друга элементов объекта, определяющих его устройство и поведение; инкапсуляция служит для того, чтобы изолировать контрактные обязательства абстракции от их реализации.
Модульность — это свойство системы, которая была разложена на внутренне связные, но слабо связанные между собой модули. В процессе разделения системы на модули могут быть полезными два правила. Во-первых, поскольку модули служат в качестве элементарных и неделимых блоков программы, которые могут использоваться в системе повторно, распределение классов и объектов по модулям должно учитывать это. Во-вторых, многие компиляторы создают отдельный сегмент кода для каждого модуля. Поэтому могут появиться ограничения на размер модуля
Иерархия - это упорядочение абстракций, расположение их по уровням. Основными видами иерархических структур применительно к сложным системам являются структура классов (иерархия «is-a») и структура объектов (иерархия «part of»). Наследование - это такое соотношение между классами, когда один класс использует структурную или функциональную часть одного или нескольких других классов (соответственно простое или множественное наследование). Если иерархия «is а» определяет отношение «обоб-щение/специализация», то отношение «part of» (часть) вводит иерархию агрегации.
Типизация — это способ защититься от использования объектов одного класса вместо другого, или по крайней мере управлять таким использованием
Параллелизм - свойство объектов находиться в активном, либо пассивном состоянии.
Сохраняемость — способность объекта существовать во времени, переживая породивший его процесс, и (или) в пространстве, перемещаясь из своего первоначального адресного пространства.
Понятие интерфейса можно представить в виде формулы:
Интерфейс = Объект – Реализация. По форме объявления интерфейсы похожи на обычные классы, но в отличие от классов: интерфейсы не могут содержать поля; интерфейсы не могут содержать конструкторы и деструкторы; все атрибуты интерфейсов являются общедоступными.
- 1. Рассмотрите процесс конструирования программ в императивных языках программирования
- Int cena;
- 5. Объектно-ориентированный анализ и объектно-ориентированное проектирование.
- 6. Объясните основные архитектурные особенности ос Windows xp/Vista
- 7. Классифицируйте операционные системы.
- 8. Объясните архитектурные особенности операционной системы Unix.
- 9. Проанализируйте структурную схему персонального компьютера, архитектурные свойства и принципы микропроцессоров.
- 10. Классифицируйте режимы работы микропроцессора. Объясните организацию оперативной памяти и систему прерываний.
- 11. Охарактеризуйте становление веб-программирования в историческом и технологическом аспекте.
- 12. Проанализируйте основные подходы к верстке веб-страниц.
- 13. Объясните принципы декларативного стиля программирования.
- 14. Проанализируйте задачи искусственного интеллекта.
- 15. Охарактеризуйте архитектуру платформы Microsoft .Net
- 16. Поясните ключевые концепции объектно-ориентированного языка программирования c#
- 17. Проанализируйте процесс создания Windows-приложений средствами Visual с#.
- 18. Проанализ. Процесс автоматизации проектирования по. Методы и ср-ва структурн. Системн. Анализа и проектир.
- 19. Проанализируйте процесс моделирования сложных систем и формальные средства представления моделей.
- 20. Охарактеризуйте назначение, принципы организации и классификацию компьютерных сетей и систем.
- 21. Объясните назначение, структуру и реализацию моделей сетевого взаимодействия открытых систем
- 22. Проанализируйте структуру, область применения и реализацию стека протоколов tcp/ip.
- 23. Объясните назначение, задачи и способы построения мультисервисных компьютерных сетей.
- 24. Объясните организацию межсетевого взаимод. И глоб. Сети Интернет.
- 25. Проанализируйте организацию корпоративных инф-ормац.-коммуникац. Инфраструктур на основе каталога Microsoft Active Directory.
- 26. Проанализируйте понятие базы данных, методы и средства создания моделей данных.
- 27. Охарактеризуйте основные аспекты реляционной модели данных. Продемонстрируйте использование методологии проектирования реляционных баз данных. Особенности реляционной модели данных.
- 28. Язык sql: назначение, возможности, типы команд.
- 29. Проанализируйте различные подходы к защите баз данных. Охарактеризуйте компьютерные и некомпьютерные средства контроля данных.
- 31. Охарактеризуйте многомерную модель данных. Продемонстрируйте метод многомерного моделирования для проектирования хранилищ данных.
- 32. Охарактеризуйте технологии olap. Объясните концепцию кубов данных и методы их построения с использованием современных систем.
- 33. Объясните понятие «многомерное выражение». Сформулируйте основные подходы к построению запросов к многомерным базам данных
- 34. Объясните основные этапы визуализации 3d геометрических моделей.
- 36. Объясните основы машинной графики.
- 37. Проанализируйте структуру системы сертификации программного обеспечения
- 38. Проанализируйте хеш-таблицу как структуру данных.
- 40.Охарактеризуйте объектную модель Java
- 41. Проанализируйте стандартные библиотеки Java Development Kit.
- 42. Объясните понятие межсетевого экрана и охарактеризуйте возможности использования.
- 43. Охарактеризуйте общие подходы к защите информации в ос
- 44. Охарактеризуйте основополагающие концепции теории информации. Дайте понятие количественной меры информации.
- 45.Объясните понятие сжатия информации. Проанализируйте классические алгоритмы сжатия.
- 46. Объясните процесс шифрования информации. Проанализируйте алгоритмы симметричного и ассиметричного шифрования.
- 47. Объясните понятие дефекта в по. Логика построения отчёта об ошибке
- 30. Объясните понятие бизнес-анализа, общие подходы к организации и созданию систем, предназначенных для хранения и анализа корпоративных данных.