Основы объектного программирования на C# 08.12.2013 Основы ООП на C#. МГУ, 2008 Владимир Биллиг Vladimir.Billig@tversu.ru.

Презентация:



Advertisements
Похожие презентации
Владимир Биллиг профессор кафедры информатики Тверского госуниверситета Преподавание Объектно-Ориентированной Технологии Программирования.
Advertisements

Программа повышения квалификации «Системное программирование» Приоритетное направление модернизации и технологического развития экономики России - Стратегические.
Куратор: Ямпольская Л.И., директор УЦ ТПУ&Softline, тел.раб.(3822) Томск Национальный исследовательский Томский политехнический.
ООП Лекция 1. Основные понятия. Литература Шилдт Г. С#: полное руководтво.-М.:ООО Вильямс, с. Культин Н.Б. Microsoft Visual C# в задачах и.
Лекция 5 Способы конструирования программ. Основы доказательства правильности.
Разработка программного обеспечения (Software Engineering) Часть 2. Создание ПО.
Владимир Биллиг профессор кафедры информатики Тверского госуниверситета Курс «Офисное программирование» и его роль в образовании.
Языки программирования Выполнили: Гашек Г.И. и Горшкова И.А.
Симпозиум 2008 Сергей Шутов, ДИМАС Борис Егоров, Интерсистемс Практика использования Zen и Прототип-6.
Учебный курс Объектно-ориентированный анализ и программирование Лекция 4 Трансформация логической модели в программный код Лекции читает кандидат технических.
Московский Государственный университет им. М.В. Ломоносова Microsoft Office в учебном курсе информатики Калугина Ольга Борисовна ст. преподаватель Химический.
Электронный задачник по программированию для системы 1С:Предприятие М. Э. Абрамян, М. Ю. Беренкеева Южный федеральный университет, факультет математики,
Microsoft ® Visual Basic ®.NET 2003 Быстрые решения для Microsoft ® Windows ® и веб-разработки.
1 ИССЛЕДОВАНИЕ ВОЗМОЖНОСТЕЙ COM- ТЕХНОЛОГИИ ДЛЯ ПОСТРОЕНИЯ РАСПРЕДЕЛЕННЫХ ПРОГРАММНЫХ ПРОДУКТОВ Component Object Model Министерство образования и науки.
Курс «Основы программирования» на базе системы PascalABC.NET IV Международная научно-практическая конференция «Современные информационные технологии и.
Апробация технологий Silverlight/LINQ/WCF для создания web-приложений, ориентированных на интенсивную обработку данных Дипломная работа студента 545 группы.
Microsoft Solutions Framework Технологии программирования. Курс на базе Microsoft Solutions Framework Семинар 1. Повтор принципов объектно- ориентированного.
RusBroker (RB). Общие сведения Система «RusBroker» была разработана Департаментом ИТ инвестиционной компании OOO «Уником Партнер». Программный комплекс.
Тренинг «Разработка веб-приложений на ASP.NET» Занятие 1 Знакомство с ASP.NET Гайдар Магдануров
ГОРОДСКОЙ МЕТОДИЧЕСКИЙ ЦЕНТР mosmetod.ru Примерная программа учебного предмета «Информатика»
Транксрипт:

Основы объектного программирования на C# Основы ООП на C#. МГУ, 2008 Владимир Биллиг

О чем пойдет речь Требования к программным системам и технология разработки Проблемы обучения C# и Visual Studio Почему ? Модели обучения и их реализации Классы и модули Классы и объекты Стиль программирования Корректность и устойчивость Отношения между классами Новинки C# 3.0 Будущее C# Итоги

Требования к программным системам Корректность Устойчивость Повторное использование Расширяемость Сроки разработки Технология, отвечающая требованиям ? ООП ОО язык как первый язык программирования ?

Проблемы обучения Алгоритмическое мышление Мир новых понятий Процесс вычислений Выбор Цикл Рекурсия Структуры данных Классические алгоритмы Помогает ли ООП решению проблем ?

C# как претендент Легко поддерживает различные модели программирования, применяемые на начальных этапах обучения. Являясь языком профессионального программирования с большим будущим, обеспечивает легкий переход от обучения к профессиональной работе. Предоставляет большой набор образцов программирования, представленных классами библиотеки Framework.Net. Согласован со средой разработки Visual Studio 2008

Модели обучения Структурное программирование Визуальное, событийно - управляемое программирование Модульное программирование ООП Реализация : -> Консольный проект ! Реализация : -> Windows проект ! Реализация : -> DLL проект ! Реализация : -> Все средства C#!

Демонстрация Модели структурного программирования c:\BookC#30_Projects\SModel\

Классы и модули Модульность Проектирование от данных Две роли класса Класс C# как тип данных Статический класс C# как модуль Статический модуль типа данных Нужны ли модули или достаточно типов данных ?

Демонстрация Модель визуального программирования Класс как модуль c:\BookC#30_Projects\Part1\Ch7\

Развернутые и ссылочные типы Классы и объекты Объекты и память Два вида памяти Развернутый тип Ссылочный тип Классы и структуры C# Строки в C# Класс или структура ?

Стиль программирования Правило « И не вздумайте » Правило «Never, never, never» Правило « Нет литералам » Разное Нужен ли стиль учебным программам ?

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

Три закона программотехники Первый закон – закон разработчика Второй закон – закон пользователя Третий закон – закон « чечако » Корректность системы – недостижима. Каждая последняя найденная ошибка является предпоследней ? Не бывает некорректных систем. Каждая ошибка – следствие незнания спецификации системы ? Если спецификацию можно нарушить, – она будет нарушена ?

ООП и надежность Что дает надежности отношение вложенности отношение « клиент – поставщик » отношение наследования отношение « родитель – потомок » класс с родовыми параметрами отношение родового порождения статический контроль типов динамическое связывание и полиморфизм автоматическая сборка мусора

Универсальные классы Особенности универсальных классов C# Пример использования библиотечных универсальных классов – транслятор выражений Пример создания сервисных универсальных классов – поиск и сортировка

Наследование Особенности наследования в C# Пример наследования стандартных интерфейсов Пример семейства классов с наследованием

Алгоритмы и программы Классические алгоритмы Вычисление сходящихся рядов. Класс MyMath и калькулятор c:\BookC#30_Projects\Part1\Ch1\ Вычисление выражений Транслятор выражений, регулярные выражения, шкалы c:\C#Projects2008\ExprCalc\ Поиск и сортировка

Новинки C# 3.0 Расширенная архитектура приложений WEB – приложения Приложения, связанные с новыми технологиями – WPF, WCF, WF LINQ и деревья выражений Тренд к функциональному программированию

Будущее C# Тенденции Декларативность Динамичность Параллельность C# 4.0 и новые языки динамические языки IronPython, IronRuby Динамичность dynamic x = 1, y = Привет, z = Math.Abs(x); Упрощенная работа с COM C# 5.0 Компилятор как сервис Программирование на лету

Итоги Язык C# является одним из главных претендентов на роль первого языка программирования. Использование языка C# и среды разработки Visual Studio.NET позволяет поддерживать обучение программированию, начиная с основ программирования, заканчивая уровнем, соответствующим разработке профессиональных программных продуктов.

Мои разработки по C# В. А. Биллиг « Основы программирования на C#», Изд. Интернет – Университет ИТ, БИНОМ, Москва 2006 г. В. А. Биллиг « Основы программирования на C#», Учебный курс на сайте Интернет – Университета ИТ – В. А. Биллиг « Задачник : Алгоритмы и задачи на C#», ( в разделе « Основы программирования »). В. А. Биллиг « Основы объектного программирования на C# 3.0», Новая версия учебника и задачника ( В процессе разработки ).