Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Какие парадигмы программирования сегодня широко известны?

Общая компетенция модуля

По завершении модуля обучающийся будет компетентен в понимании объектно-ориентированного проектирования как моделирования мира.

Средняя продолжительность обучения

На достижение всех диагностируемых результатов данного модуля обучающемуся в среднем требуется 10 учебных часов аудиторных занятий и 4 часа самостоятельной работы студента.

Утверждение о поступлении

Уровень умений или знаний, необходимых для изучения данного модуля, предшествующие квалификации или опыт, которым должен обладать обучающийся для успешного изучения модуля, определяются в форме теста с вариантами ответов.

Вопросы, входящие в состав теста (допуск):

  1. Понятие системы программирования
  2. Понятие этапов разработки программ
  3. Классификация языков программирования

Утверждение о стандартах

Результат Утверждение о диапазоне Критерии деятельности Требования к свидетельствам
Описывать историю развития парадигм программирования Диапазон данного результата полностью отражен в критериях деятельности 1. Классификация подходов программирования составлена верно 2. Описание проблем, решаемых с помощью ООП, подробное и точное 3. Понятие парадигмы программирования сформулировано верно 4. Техника организации вычислений и данных в различных парадигмах программирования описана правильно Структурированное описание подходов программирования и их особенностей. Устные и письменные свидетельства знания и понимания истории развития парадигм программирования. Свидетельства реальной деятельности в данном случае не требуются.
Описывать парадигму ООП Диапазон данного результата полностью отражен в критериях деятельности 1. Центральная идея ООП сформулирована правильно 2. Описание принципов ООП подробное и точное 3. Словарь терминов отражает основные понятия ООП, составлен подробно и точно 4. Классы организованы в иерархическую структуру адекватно поставленной задаче Устные и письменные свидетельства знания и понимания парадигмы ООП. Словарь терминов.  
Проектировать объекты ООП   1. Понятие объекта сформулировано верно 2. Характеристики объекта перечислены правильно 3. Описание характеристик объекта подробное и точное 4. Понятие экземпляра класса сформулировано правильно 5. Состояние объекта по диаграмме UML определено правильно 6. Конструкции языка UML для описания объектов использованы правильно Устные и письменные свидетельства знания и понимания объекта ООП Чтение и представление объекта на языке UML Свидетельства реальной деятельности в данном случае не требуются.
Использовать визуальную среду разработки   1. Новый проект создан правильно 2. Дизайнер формы использован верно 3. Возможности окна кода использованы оптимально 4. Окно свойств использовано правильно 5. Элементы управления использованы правильно 6. Обработчик событий создан верно 7. Программа работает стабильно Устные свидетельства знания и понимания возможностей редакторов визуальной среды Работа в одном из редакторов VS.Net  

 

Освоение теоретического материала

В течение первых двух недель вы изучите:

объектно-ориентированное проектирование и программирование в историческом контексте;

базовые понятия объектно-ориентированного проектирования;

преимущества и цели объектно-ориентированного проектирования;

распространенные ошибки, связанные с представлениями об объектно-ориентированном проектировании и программировании.

возможности интегрированной среды разработки (IDE) VS.Net для построения небольшого, но функционального приложения на VB.Net

Чтобы понять настоящее состояние ООП, надо немного знать историю программирования. ООП не было придумано за один день. Его появление является очередной ступенькой в естественном развитии программного обеспечения. Со временем стало проще определить, какие методологии удобны для работы, а какие нет. ООП эффективно сочетает в себе наиболее удачные, проверенные временем методологии.

Сердцевина объектно-ориентированного программирования — новая техника организации вычислений и данных.

Парадигмы в программировании — это способ концептуализации, который определяет, как проводить вычисления и как работа, выполняемая компьютером, должна быть структурирована и организована.

Информационные источники

Основные

  1. Иванова Г.С. Технология программирования: учебник М.: КНОРУС, 2011
  2. Мирошниченко В.А. Методические рекомендации освоения дисциплины. Омавиат, 2012
  3. Мирошниченко В.А. Документация модулей. Омавиат, 2012
  4. Бодарева М.А., Мирошниченко В.А. Философия ООП. Учебно-методическое пособие. Омавиат, 2007

Дополнительные

  1. Ларс Пауэрс, Майк Снелл. Microsoft Visual Studio.NET 2008/ Пер. с англ. — ПХБ – Питербург, 2009. – 1200 с.
  2. Бадд Тимоти. Объектно-ориентированное программирование в действии/ Пер. с англ. — СПб.: Питер, 1997. — 464 стр.
  3. Буч Гради. Объектно-ориентированный анализ и проектирование с примерами приложений на С++. М.: Бином; СПб.: Невский диалект, 1998
  4. Бодарева М.А., Мирошниченко В.А. Первое знакомство с ООП. Брошюра. Омавиат, 2008
  5. Бодарева М.А. Решения и обсуждения. Брошюра. Омавиат, 2011

Интернет-ресурсы

- Электронный ресурс ВикиУчебник: Открытые книги для открытого мира http://ru.wikibooks.org/wiki/ Объектно -ориентированное_программирование (дата посещения 17.06.2011);

- Электронный ресурс интернет-университета ИНТУИТ http://www.intuit.ru/department/software/ (дата посещения 17.06.2011).

- Открытый электронный ресурс http://уроки-на-диване.рф/1552-microsoft-visual-studio-2008.html (дата посещения 05.01.2012).

- Открытый электронный ресурс http://уроки-на-диване.рф/5653-obektnoe-programmirovanie-v-klassah-na-s-30-2010-videokurs.html (дата посещения 05.01.2012).

- Открытый электронный ресурс http://уроки-на-диване.рф/5485-visual-basic-net-70-visual-basic-for-application-2011.html (дата посещения 05.01.2012).

Мультимедийные наглядные пособия

- Мультимедийное наглядное пособие «Три кита» в локальной сети Омавиат.

- Мультимедийное наглядное пособие «Понятие класса» в локальной сети Омавиат.

- Мультимедийное наглядное пособие «Понятие объекта» в локальной сети Омавиат.


 

Рейтинг модуля №1 Философия ООП

Баллов

Диагност-й результат Диагностируемый критерий деятельности Рейтинг
Входной контроль Тест  
Описывать историю развития парадигм программирования Классификация подходов программирования составлена верно  
Описание проблем, решаемых с помощью ООП, подробное и точное  
Понятие парадигмы программирования сформулировано верно  
Техника организации вычислений и данных в различных парадигмах программирования описана правильно  
Описывать парадигму ООП Центральная идея ООП сформулирована правильно  
Характеристики ООП перечислены верно  
Словарь терминов отражает основные понятия ООП, составлен подробно и точно  
Классы организованы в иерархическую структуру адекватно поставленной задаче  
Проектировать объекты ООП Понятие объекта сформулировано верно  
Характеристики объекта перечислены правильно  
Описание характеристик объекта подробное и точное  
Понятие экземпляра класса сформулировано правильно  
Состояние объекта по диаграмме UML определено правильно  
Конструкции языка UML для описания объектов использованы правильно  
Использовать визуальную среду разработки Новый проект создан правильно  
Дизайнер формы использован верно  
Возможности окна кода использованы оптимально  
Окно свойств использовано правильно  
Элементы управления использованы правильно  
Обработчик событий создан верно  
Программа работает стабильно  
СРС Решение задач по описанию состояния и поведения объектов  
Выходной контроль Организация классов в иерархическую структуру, описание состояния и поведения объектов  

 

 

Проверь себя

Резюме

ООП – это не просто набор некоторых свойств, добавленных в уже существующие языки. Это новый шаг в осмыслении задач и разработки ПО. Программы – это совокупность взаимодействующих объектов. Каждый объект отвечает за конкретную задачу. Вычисление осуществляется посредством взаимодействия объектов. Объект получается в результате инкапсуляции состояния (данных) и поведения (операций), во многом аналогично абстрактному типу данных АТД. Поведение объекта диктуется классом. Данные и поведение представлены в виде классов, экземпляры которых - объекты. Все экземпляры одного класса будут вести себя одинаковым образом в ответ на одинаковые запросы.

Объект проявляет свое поведение путем вызова метода в ответ на сообщение. Интерпретация сообщения зависит от объекта и может быть различной для различных классов объектов (полиморфизм).

Для удобства создания нового типа из уже существующих типов, определенных пользователем используется механизм наследования. Классы могут быть организованы в виде иерархического дерева наследования.

С помощью уменьшения взаимозависимости ООП позволяет разрабатывать системы, пригодные для многократного использования. ООП - это взгляд на программирование, сосредоточенный на данных; в котором данные и поведение жестко связаны. Для этого необходимо, чтобы объекты определялись вместе с сообщениями, на которые они могут реагировать (инкапсуляция).

Объектно-ориентированная парадигма предлагает новый подход к разработке программного обеспечения. Фундаментальная концепция объектно-ориентированной парадигмы состоит в передаче сообщений объектам. Передать сообщение – то же самое, что вызвать метод с целью изменения состояния объекта или применить одну из моделей поведения. Сообщение – очень важное понятие объектно – ориентированного подхода. Благодаря механизму сообщений объекты могут сохранять свою независимость. Объекту, который посылает сообщение другому объекту, безразлично, как этот другой объект выполнит требуемое действие. Объекту важно лишь, чтобы действие было выполнено.

Какие языки можно использовать для реализации ООП, какими свойствами они должны обладать?

Объектно-ориентированный язык должен обладать свойствами абстракции, инкапсуляции, наследования и полиморфизма.

1. Инкапсуляция с сокрытием данных - способность отличать внутреннее состояние объекта и поведение от его внешнего состояния и поведения

2. Абстракция - расширяемость типов - способность добавлять типы, определяемые пользователем для того, чтобы дополнить ими встроенные типы. Один из принципов ООП заключается в том, что типы, определяемые пользователем, должны обладать теми же привилегиями, что и встроенные типы.

3. Наследование - способность создавать новые типы, повторно используя, описание существующих типов.

4. Полиморфизм с динамическим (поздним) связыванием - способность объектов быть ответственными за интерпретацию вызова функции.

Ошибки и предостережения

Начинающие изучать объектно-ориентированный подход часто допускают одни и те же четыре ошибки.

Ошибка 1: ООП – простой язык

Некоторые люди полагают, что ООП и объектно – ориентированные языки – это одно и тоже.

Полагая так, вы будете уверены в том, что применяете в программировании объектно-ориентированный подход уже хотя бы потому, что используете объектно-ориентированный язык. Нет ничего более далекого от правды.

ООП предполагает намного больше, чем простое использование объектно-ориентированного языка или знание набора определений. Можно написать абсолютно не объектно-ориентированную программу на объектно-ориентированном языке. Настоящее ООП — это образ мышления, заставляющий рассматривать проблему в виде группы объектов и правильно использовать инкапсуляцию, наследование и полиморфизм.

К сожалению, многие компании и программисты полагают, что если они используют объектно-ориентированный язык, у них будут все преимущества ООП. Когда их надежды не оправдываются, они обвиняют используемую технологию, не учитывая того факта, что это именно они не обучили должным образом своих подчиненных или же польстились на популярный метод программирования, не понимая до конца его принципов.

Ошибка 2: страх повторного использования

Нужно научиться повторно использовать программу. Когда вы начинаете работать с ООП, обучение безошибочному повторному использованию является одним из наиболее трудных заданий. Трудности обусловлены тремя проблемами.

Во-первых, программистам нравится творить и поэтому создается впечатление, что повторное использование лишает вас удовольствия, присущего самостоятельному творческому процессу созидания программы. Однако следует помнить, что при повторном использовании ранее разработанных элементов вашей целью является создание чего-то большего, чем те элементы, которые вы используете повторно.

Во-вторых, многие программисты не доверяют тому, что было написано не ими. Если часть программного обеспечения хорошо проверена и подходит вам, вы не должны бояться использовать ее повторно. Не отказывайтесь от какого-либо компонента только потому, что его писали не вы. Помните, что повторное использование позволит вам написать еще одно замечательное программное обеспечение.

Ошибка 3: ООП – лекарство от всех болезней

Хотя ООП обладает множеством преимуществ, оно вовсе не является лекарством от всех болезней в мире программирования. В некоторых случаях вы не должны использовать объектно-ориентированный подход. Нужно уметь выбрать правильное средство для выполнения определенной работы. Важно понимать, что применение ООП совсем не гарантирует успех какого-либо проекта. Успех приходит только тогда, когда планирование, разработка и программирование выполнены самым тщательным образом.

Ошибка 4: эгоцентрическое программирование

Программируя, не следует быть эгоцентристом. Уметь делиться создаваемой программой так же необходимо, как и уметь повторно использовать чужие. Делиться означает создавать удобные для использования другими разработчиками классы, а также упрощать повторное использование этих классов.

Когда программируете, помните о других разработчиках. Создайте четкий, понятный интерфейс. Что наиболее важно, пишите документацию. Документируйте допущения (предусловия), документируйте параметры метода, документируйте как можно больше. Люди не будут повторно использовать то, что не возможно найти или понять.

Вопросы и ответы

Как освоить ООП?

Данное пособие помогает начать изучение ООП. Важно заложить прочный фундамент, и данное учебное пособие может помочь в этом.

Приобретя базовые знания, нужно практиковаться в применении объектно – ориентированного подхода. Настоящее мастерство приходит только с опытом. Начните в качестве разработчика объектно – ориентированного проекта. Хорошо во всем разберитесь. По мере освоения объектно – ориентированного подхода начинайте заниматься анализом и разработкой своих собственных проектов. Продолжайте изучение самостоятельно. Читайте книги, статьи, журналы.

Какие парадигмы программирования сегодня широко известны?

- Структурное (процедурное) программирование;

- Модульное программирование

- Объектно – ориентированное программирование.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...