'

Владимир Биллиг профессор кафедры информатики Тверского госуниверситета VLADIMIR.BILLIG@TVERSU.RU

Понравилась презентация – покажи это...





Слайд 0

Владимир Биллиг профессор кафедры информатики Тверского госуниверситета VLADIMIR.BILLIG@TVERSU.RU Преподавание Объектно-Ориентированной Технологии Программирования


Слайд 1

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


Слайд 2

ОО язык и среда. Три кандидата Язык C# и среда Visual Studio .Net Язык Eiffel и среда Eiffel EnViSioN 2.0 Язык Visual Basic и среда Microsoft Office


Слайд 3

Кандидаты. Достоинства и недостатки C#. Достоинства Перспективный язык разработки современных систем Изначально объектный язык Ориентирован на компонентное программирование Открытая многоязычная среда, облегчающая интеграцию. С#. Недостатки Не поддерживает всех возможностей объектного подхода Нет учебников, ориентированных на начальный курс обучения


Слайд 4

Eiffel Достоинства Тщательно спроектирован Бертраном Мейером. Не отягощен прошлым наследием. Поддержан авторской книгой “Object-Oriented Software Construction” На его основе автор читает начальный курс информатики в ETH, Цюрих. Доступна академическая версия языка и среды EnViSioN 2.0 : www.eiffel.com Недостатки Менее популярен, как практический язык разработки


Слайд 5

Офисное программирование См. доклад на предыдущей конференции: «ОФП и его роль в образовании» http:/www.it-education.ru/archive/2003/reports/presentation/billig.ppt


Слайд 6

О сути подхода. Основные понятия Классы. Две ипостаси – Тип и Модуль Встроенные классы Семейства классов. Отношения. Клиенты и наследники Повторное использование Динамическое связывание. Полиморфизм.


Слайд 7

Объектное проектирование Абстрактные классы Универсальные классы Ограниченная универсальность


Слайд 8

Проектирование по контракту Качество программ и спецификации Система как совокупность классов, связанных контрактами Корректные программы и триады Хоара Корректность класса Определение: Корректность класса Класс C корректен по отношению к своим утверждениям, если и только если: С1. Для любого правильного множества аргументов xp процедуры создания p: { DefaultC and prep(xp)} Bodyp { postp(xp) and Inv} С2. Для каждой экспортируемой программы r и для любого множества правильных аргументов xr: { prer(xr) and Inv} Bodyr { postr(xr) and Inv}


Слайд 9

Исключительные ситуации. Когда контракт нарушается Что такое исключительная ситуация по Мейеру? Как обрабатывать исключительные ситуации. Два исхода – повторение и возврат управления вызывающей программе


Слайд 10

Классы и события Модель событий в C#


Слайд 11

Детали C# Указатели и автоматическая сборка мусора (Garbage Collector) Ссылочные и значимые типы Boxing и Unboxing Иерархия классов и прародитель Object Встроенные классы. Пример строковых классов – класс регулярных выражений Структуры, интерфейсы, классы. Наследование.


Слайд 12

Эйфель. Детали Факторы: корректность, устойчивость, расширяемость, повторное использование, совместимость, эффективность, переносимость, простота использования, функциональность, своевременность. Критерии (Метод и язык): Бесшовность, Классы (как модули, как типы), Утверждения, Механизм вычислений. Скрытие информации, Обработка исключений, Статическая типизация, Наследование, Переопределение, Полиморфизм, Динамическое связывание, Отложенные классы, Универсальность, Ограниченная универсальность. Управление памятью и сборка мусора. Критерии (Реализация и окружение): Автоматическое обновление, Быстрое обновление, Сохраняемость, Документирование, Просмотр и поиск. Критерии (Библиотеки): Базисные библиотеки, Графические и пользовательские интерфейсы


Слайд 13

5 критериев, 5 правил, % принципов Метод проектирования, претендующий на звание «модульного» должен удовлетворять следующим критериям, правилам, принципам: Критерии: Декомпозиции, Композиции, Понимаемости, Непрерывности, Защищенности Правила: Прямое отображение, Минимум интерфейсов, Слабая связность, Явные интерфейсы, Скрытие информации Принципы: Лингвистических единиц, Самодокументирование, Единый доступ, Открыт-Закрыт, Однозначный выбор.


Слайд 14

Итоги Одна цитата (из предисловия к русскому изданию книги Б. Мейера): Слишком часто, объектно-ориентированные механизмы использовались просто как некоторый способ обтесывания программы, а не как систематический подход ко всему процессу разработки программного продукта в бесшовной модели, покрывающей не только реализацию, но и этапы анализа, проектирования, сопровождения. Упор на качество компонентов должен быть особенно важен для российских читателей. Россия может поддерживать свое лидерство в глобальном оффшорном рынке только при условии представления точной и документированной гарантии качества, на самом высоком уровне сертификации для программных продуктов и компонентов, которые она производит.


Слайд 15

Итоги ОО Метод следует вводить в начальном курсе информатики с тем, чтобы он стал основой во всем процессе обученийя инженерии программ. Для программистов реальными кандидатами в поддержке ОО метода могут быть языки C# и Eiffel Офисное программирование может быть положено в основу обучения студентов других специальностей.


Слайд 16

Литература В.А. Биллиг, М. И. Дехтярь «VBA и Office 97. Офисное программирование», Русская Редакция, 1998 В.А. Биллиг «VBA в Office 2000. Офисное программирование», Русская Редакция, 1999 В.А. Биллиг «Средства разработки VBA-программиста. Офисное программирование, т.1», Русская Редакция, 2001 В.А. Биллиг «Мир Объектов Excel 2000 Средства разработки VBA-программиста», Русская Редакция, 2001 Email: Vladimir.Billig@tversu.ru


×

HTML:





Ссылка: