Профессиональное программирование на языке C# Лекция 3 «Он живой и светится!» Доктор физ.-мат. наук, профессор Р.В. Шамин Сахалинский филиал Дальневосточного.

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



Advertisements
Похожие презентации
Методология объектно- ориентированного программирования.
Advertisements

Классы в C# Ссылочный тип, определенный пользователем (аналогично языкам C++ и Java) Единичное наследование классов Множественное наследование интерфейсов.
Профессиональное программирование на языке C# Лекция 1 «Hello, world!» Доктор физ.-мат. наук, профессор Р.В. Шамин Сахалинский филиал Дальневосточного.
ОБЪЕКТНО- ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ (ООП) 1.
1 © Luxoft Training 2012 Введение в ООП Модуль #2.
Информационные технологии Стандартные библиотечные функции манипулирование данными преобразование и шифрование определение пользователями функций.
Сравнение реализаций пользовательских типов переменных в языках высокого уровня. typedef struct tagStack{ double data; struct tagStack* prev; }*stack;
Профессиональное программирование на языке C# Лекция 2 «Правый поворот» Доктор физ.-мат. наук, профессор Р.В. Шамин Сахалинский филиал Дальневосточного.
Лекция 1 Классификация С++. Парадигмы программирования Императивная Функциональная Декларативная (логическая) Инструкция 1 Инструкция 2 Инструкция 3 Инструкция.
Delphi. 11 класс.. Познакомиться с понятиями : Инкапсуляция Интерфейс объекта Классы, экземпляр класса Наследование, иерархия полиморфизм.
Основы информатики Классы Заикин Олег Сергеевич zaikin.all24.org
Кафедра ОСУ, Java 2007 Слайд 1 Методология ООП В формулировке цели участвуют предметы (объекты) и понятия реального мира, имеющие отношение.
Включить звукозапись!. Андрей Александрович Б Е Р С профессор, доктор тех. наук, академик МАИ. Сибирское Отделение РАН Институт Систем информатики им.
1 Умение мыслить объектно (проектирование архитектуры) Культура кодирования Знание языка и технологий Знание языка и технологий Понимание процесса Задача.
Распространение объектно- ориентированного подхода на информационную безопасность Лекция 2.
Java, каф. ОСУ АВТФ1 Методология ООП В формулировке цели выполнения некоторого проекта (например, разработка ИС) участвуют предметы (объекты)
Объектно- ориентированное программирование (ООП)
Объектно-ориентированное программирование Объектно-ориентированное программирование (ООП) - основная методология программирования. Она является продуктом.
ОСНОВНЫЕ ПОНЯТИЯ ООП Лекция 1 1. Язык Simula 2 Simula = SIMULAlation За разрабртку языка Simula Кристен Нигорд (Nygaard, Kristen; ), на снимке.
Представление проекта. Введение в программирование на Java Макаревич Л. Г.
Транксрипт:

Профессиональное программирование на языке C# Лекция 3 «Он живой и светится!» Доктор физ.-мат. наук, профессор Р.В. Шамин Сахалинский филиал Дальневосточного федерального университета Кафедра прикладной информатики и математики Сахалинский научный центр Институт морской геологии и геофизики ДВО РАН

План сегодняшней лекции: Понятия об объектно-ориентированном программировании Классы и объекты в C# Инкапсуляция объектов Наследование Понятие о полиморфизме Что мы с вами сегодня создадим? Прошлый долг об анимации – ползающий объект Поиграемся с объектами …

Парадигмы языков программирования: 1.Структурное программирование Первая четко сформулированная парадигма программирования. Основана на декомпозиции программы на отдельные модули и на правилах программирования. Стоимость программного обеспечения очень быстро превзошла стоимость компьютеров! Сложность разработки больших программ требовала промышленного способа их разработки. Требовались технологии написания программ большими коллективами Код должен быть не только и не сколько эффективным, но и понятным другим программистам 2.Объектно-ориентированное программирование Парадигма программирования, основанная на абстракции данных. Современный стандарт разработки программных продуктов. *.Функциональное, логическое, агентное, событийно- управляемое, декларативное и иное программирование…

Понятие объектно-ориентированного программирования: Основные столпы: инкапсуляция наследование полиморфизм Инкапсуляция: Сокрытие реализации объекта Отделение данных от реализации Наследование: Создание новых классов добавлением полей и методов Отличный способ повторного использования кода Полиморфизм: Модификация существующих классов при наследовании Самое удивительное в ООП! Основные языки: SmallTalk, C++, C#, Java, PHP, Delphi, Ada, Ruby Классы и объекты В терминах C#: класс – новый тип данных объект – переменная класса Класс состоит из: полей – данные методов – функции

Как это выглядит в C#? class TPocoyo { protected Color MyColor; public int Tag; public TPocoyo(Color C) { MyColor = C; } public Color GetColor() { return MyColor; } { TPocoyo Pocoyo; Pocoyo = new TPocoyo(Color.Blue); Pen p = new Pen(Pocoyo.GetColor()); Pocoyo.Tag = 1024; // можно Pocoyo.MyColor = Color.Red;// нет! TPocoyo Poc2 = new TPocoyo(Color.Red); Pocoyo = Poc2; } Инкапсуляция – мощное средство объектно-ориентированного программирования, позволяющее изменить весь стиль программирования!

Наследование: Особую гибкость объектно-ориентированному программированию придает наследование. Как улучшить функционал Pocoyo? class TLivePocoyo : TPocoyo { protected string Name; protected bool IsChangeColor; public TLivePocoyo(string Name, Color C) : base(C) { this.Name = Name; IsChangeColor = false; } public void SetColor(Color C) { MyColor = C; IsChangeColor = true; }

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