ОСНОВНЫЕ ПОНЯТИЯ ООП Лекция 1 1. Язык Simula 2 Simula = SIMULAlation За разрабртку языка Simula Кристен Нигорд (Nygaard, Kristen; 1926-2002), на снимке.

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



Advertisements
Похожие презентации
Инкапсуляция полей и констант в языке C# (1) Поле: - инициализация факультативна, однако запрещен доступ к полям и методам того же типа; - поля структуры.
Advertisements

Основы ООП и C# Работа с объектами и классами. Классы Класс специальный тип данных для описания объектов. Он определяет данные и поведение типа. Определение.
АССОЦИАТИВНЫЕ КОЛЛЕКЦИИ Лекция 6 1. Отличие от последовательных 2 В последовательной коллекции каждый элемент ассоциируется с номером, начиная с 0. В.
Объектно-ориентированный подход в языке C#. Класс в языке C# - ссылочный тип, определенный пользователем. Для классов ЯП C# допустимо только единичное.
Объектно-ориентированное программирование С++. Лекция 6 Карпов В.Э.
Учебный курс Объектно-ориентированный анализ и программирование Лекция 7 Методы как средство реализации операций Лекции читает кандидат технических наук.
ОБЪЕКТНО- ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ (ООП) 1.
Наследование Полиморфизм ВЫЗОВ КОНСТРУКТОРОВ И ДЕСТРУКТОРОВ ПРИ НАСЛЕДОВАНИИ.
Лекция 3 Принципы объектно- ориентированного программирования.
С# и ООП Формальное определение класса с C# Класс в C# - это пользовательский тип данных (user defined type), который состоит из данных (часто называемых.
Лекция 8. Введение в ООП. Часть 1 Красс Александр СПбГУ ИТМО, 2008.
Лекция 13. Введение в ООП. Часть 4 Красс Александр СПбГУ ИТМО, 2008.
Основы информатики Классы Заикин Олег Сергеевич zaikin.all24.org
Хочу быть программистом! С чего бы начать? Turbo Pascal.
Лекция 2: Описание класса 1. Поля 2. Методы 3. Конструкторы.
Лекция 9. Введение в ООП. Часть 2 Красс Александр СПбГУ ИТМО, 2008.
Объектно-ориентированное программирование Объектно-ориентированное программирование (ООП) - основная методология программирования. Она является продуктом.
САОД кафедра ОСУ 1 Основные абстрактные типы данных Схема процесса создания программ для решения прикладных задач ВУ.
EPAM Systemswww.epam.com EPAM Systemswww.epam.com Программирование на языке C# Основы ООП.
Классы в С#. Перечисления С# Перечисление задает конечное множество возможных значений, которые могут получать объекты класса перечисление. [атрибуты][модификаторы]
Транксрипт:

ОСНОВНЫЕ ПОНЯТИЯ ООП Лекция 1 1

Язык Simula 2 Simula = SIMULAlation За разрабртку языка Simula Кристен Нигорд (Nygaard, Kristen; ), на снимке слева, и Оле-Йохан Дал (Dahl, Ole-Johan; ) были удостоены высшей награды компьютерного сообщества – медали Тьюринга

Язык Smalltalk 3 42 factorial сообщение factorial посылается исполнителю 42. Исполнитель отвечает на сообщение, возвращая значение, которое можно присвоить переменной. aRatherBigNumber := 42 factorial Выражение new Rectangle(100, 200); на Smalltalk выглядит так: Rectangle width: 100 height: 200 Алан Кей Аллан Кей предложил рассматривать программу не как работу одного исполнителя, а как совместную деятельность многих исполнителей. Каждый исполнитель имеет собственную систему команд (сообщений). Для координации усилий исполнители посылают друг другу сообщения.

Язык С++ 4 Бьярн Страуструп (Stroustrup, Bjarne; р. 1950) ввел в язык С объекты и превратил его в С++

Delphi 5 Среда разработки Delphi фирмы Borland объединила передовые достижения технологии программирования: объектное расширение языка Pascal, визуально- событийное проектирование, модульное структурирование и раздельная компиляция. В 2000 году Андерс Хейлсберг получил награду популярного журнала Dr. Dobb's Journal за создание Turbo Pascal, Delphi и C#.

Java 6 В 1995 г. фирма Sun Microsystems представила язык Java для программирования в интернете. Он возник в ходе реализации проекта Oak («Дуб»), целью которого было создание системы программирования бытовых микропроцессорных устройств. Джеймс Гослинг (Gosling, James) – автор Java.

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

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

Свойства в С# 9 Свойство – это пара методов, один для чтения, а другой для записи значения свойства. Хотя свойство это два метода, для клиента класса оно выглядит как поле. class Rectangle { public int Width; public int Height; } public int Width { get { return width; } set { width = value; } }

Пример: коллекция строк 10 Объявите класс, полем которого является массив строк, а методами: добавить элемент в конец, вставить элемент в i-ю позицию, удалить i-й элемент, получить i-й элемент public class StringCollection { private string[] m; private void Expand(int n) {} public int Count; public void Add(string s) {} public void Insert(string s, int i) {} public void RemoveAt(int i) {} public string Item(int i) {} }

Самостоятельно 11 1.Запрограммировать все методы коллекции строк. 2.Добавить в класс StrCollection свойство Capacity – емкость коллекции. Объявить оба аксессора set и get таким образом, чтобы изменение емкости не могло уничтожить имеющиеся данные. 3.Объявите статический класс MyConsole с методами для чтения целых и вещественных чисел. 4.Добавьте в MyConsole методы для чтения и записи массивов.