- •1 Основные понятия технологии программирования.
- •2 Классические технологии разработки программного обеспечения.
- •3 Структурное программирование.
- •4 Модульное программирование.
- •5 Объектно-ориентированное программирование.
- •6 Компонентное программирование.
- •7 Case-технологии
- •8 Понятие жизненного цикла по
- •9 Стандарты, регламентирующие жц по
- •10 Стандарт iso/iec 12207 (Information Technology - Software Life Cycle Processes) и его практическое применение.
- •12 Процессы разработки по.
- •13 Унифицированный процесс разработки rup.
- •14 Экстремальное программирование (Extreme Programming, xp)
- •15 Стандарты документации
- •16 Согласованность и целостность документации.
- •17 Способы представления предметной области.
- •18 Выделение и анализ требований.
- •20 Архитектура по.
- •21 Список стандартов, регламентирующих описание архитектуры.
- •25 Статические диаграммы.
- •26 Динамические диаграммы.
- •27 Образцы проектирования. Образцы анализа.
- •Образцы анализа
- •29. Удобство использования программного обеспечения.
- •30. Методы разработки удобного программного обеспечения.
- •31. Платформа .Net.
- •В c# имеются мощные выразительные возможности объектно-ориентированных языков последнего поколения, поддерживающих автоматическое управление памятью и работу в многопоточном режиме.
- •32. Лексика языка c#. Общая структура программы языка c#.
- •33. Базовые типы и операции над ними языка c#. Инструкции и выражения языка c#.
- •34. Пользовательские типы языка c#. Наследование языка c#. Элементы типов.
- •35. Дополнительные элементы описания операций.
- •36.Описание метаданных
- •37. Средства создания многопоточных программ.
- •38. Библиотеки.
- •39 Принципы построения распределенных систем.
- •40 Синхронное и асинхронное взаимодействие.
- •41 Компоненты .Net.
- •Процессы и синхронизация
- •Целостность
- •42 Связь между компонентами.
Образцы анализа
Образец анализа является типовым решением по представлению набора понятий некоторой предметной области в виде набора классов и связей между ними.
-
Наиболее простым образцом этой группы является образец величина (quantity). Результаты большинства измерений имеют количественное выражение, однако, если представлять их в виде атрибутов числовых типов (рост — 182, вес — 83), часть информации пропадает. Поэтому более аккуратное решение — использовать для хранения данных числовых измерений объекты специального класса Quantity, в полях которого хранится не только значение величины, но и единица ее измерения.
-
составные единицы, например Ньютон для измерения силы (1 Н = 1 кг*м/с2).
-
Образец измерение. Этот образец становится полезным, если имеется очень много различных измерений для каждого объекта, группируемых в достаточно много видов измеряемых явлений.
28 Архитектурные образцы. Образцы организации и образцы процессов.
Архитектурные образцы или архитектурные стили (architectural styles, architectural patterns). Такие образцы представляют собой типовые способы организации системы в целом или крупных подсистем, задающие некоторые правила выделения компонентов и реализации взаимодействий между ними.
Архитектурный стиль определяет основные правила выделения компонентов и организации взаимодействия между ними в рамках системы или подсистемы в целом. Различные архитектурные стили подходят для решения различных задач в плане обеспечения нефункциональных требований — различных уровней производительности, удобства использования, переносимости и удобства сопровождения. Одну и ту же функциональность можно реализовать, используя разные стили.
Образцы организации (organizational patterns) и образцы процессов (process patterns). Образцы этого типа описывают успешные практики организации разработки ПО или другой сложной деятельности, позволяющие решать определенные задачи в рамках некоторого контекста, который включает ограничения на возможные решения.
29. Удобство использования программного обеспечения.
Одним из важных показателей качества программного обеспечения является удобство его использования. Оно описывается с помощью таких характеристик, как понятность пользовательского интерфейса, легкость обучения работе с ним, трудоемкость решения определенных задач с его помощью, производительность работы пользователя с ПО, частота появления ошибок и жалоб на неудобства.
Типичный подход программиста при разработке пользовательского интерфейса — предоставить пользователю те же рычаги и кнопки, с помощью которых программист сам хотел бы управлять своей программой.
Человек «понимает» смысл и назначение вещей и действий с ними, только если они в его сознании находятся в рамках некоторой системы связанных друг с другом понятий. Набор текста на компьютере больше всего напоминает набор текста на печатной машинке (и специально сделан выглядящим так в редакторах WYSIWYG), чуть менее он близок к письму. В обоих этих случаях, написав или напечатав некоторый текст на листе бумаги, мы получим достаточно долго хранящийся документ. Чтобы избавиться от него, нужно предпринимать специальные действия — смять, порвать, пролить на него кофе, выкинуть в мусорную корзину. Если такой документ пропадает без наших действий, значит кто-то (сотрудник, начальник, жена, ребенок или уборщица) взял его. Человек, только что столкнувшийся с электронными документами, воспринимает их как аналоги бумажных и ожидает от них тех же свойств.
«Простота» и «легкость обучения» все-таки не совсем субъективны, а имеют объективные составляющие, которые необходимо учитывать при разработке части программного обеспечения, предназначенной для непосредственного взаимодействия с человеком — пользовательского интерфейса. Если посмотреть внимательнее, непонимание программистами пользователей в большой степени вызвано их, программистов, собственной ленью и нежеланием задумываться над непривычными вещами.