Главная страница

лекция ориентированное моделирование и программирование. Лекция №2 - ООМиП. Лекция 2 История оояп. Перспективы оояп


Скачать 1.95 Mb.
НазваниеЛекция 2 История оояп. Перспективы оояп
Анкорлекция ориентированное моделирование и программирование
Дата01.03.2023
Размер1.95 Mb.
Формат файлаpdf
Имя файлаЛекция №2 - ООМиП.pdf
ТипЛекция
#962951

Объектно-
ориентированное
моделирование и
программирование
Уфа-2021
http://vk.com/asu_ugatu http://asu.ugatu.ac.ru/
Лекция №2 – История ООЯП. Перспективы ООЯП. http://sdo.ugatu.su
Преподаватель:
доцент, Казанцев Андрей Валерьевич
http://asu.ugatu.su/
http://инфопроект.рф

Концептуальная база объектно-ориентированной
парадигмы
Концептуальная база для ООП – это объектная модель.
1) Абстрагирование
2) Инкапсуляция
3) Полиморфизм
4) Наследование
Без любого из этих принципов модель
не будет объектно-ориентированной.

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

Ключевые положения объектно-
ориентированного подхода
По мнению
Алана
Кея
(создателя
Smalltalk),
объектно- ориентированный подход к программированию заключается в некотором наборе ключевых положений.

Ключевые положения объектно-
ориентированного подхода
1)
Всё является объектом
2)
Вычисления осуществляются путем взаимодействия между объектами
3)
Каждый объект имеет независимую память
4)
Каждый объект является представителем (экземпляром) класса
5)
В классе задается поведение (функциональность) объекта
6)
Классы организованы в единую древовидную структуру с общим корнем, называемую иерархией наследования.

Группа механизмов, определяющая особенности
разработки программ
1)
Синтаксис – механизм языка программирования, который описывает структуру программ на том или ином языке программирования.
2)
Структура
программы

механизм,
определяющий строение программного кода.
3)
Отладка – механизм, упрощающий процесс выявления и устранения ошибок в программе.

История ООЯП
Первый ООЯ был язык Simula (SIMUlation LAnguage) 1967.
Авторы языка — норвежские ученые Кристен Нюгор и Оле-Йохан
Даль. Первые версии языка работали на 36-битных компьютерах UNIVAC
1107.
Язык был предназначен для моделирования различных объектов и
процессов,
и объектно-ориентированные черты появились в нем именно для описания свойств модельных объектов.

Следующий язык – Smalltalk (создан в 1980 году), который был изобретен в компании
Xerox PARC
(Алан Кей и некоторые другие ученые), фактически навязывал использование «объектов» и «сообщений» как базиса для вычислений.
История ООЯП
Язык был предназначен для проектирования сложных графических интерфейсов и был первым по настоящему объектно- ориентированным языком.
Пример кода:
В результате будет нарисован правильный треугольник со стороной в 100 пикселей.

Следующий язык – Eiffel (1986 год) – создатель языка Бертран Мейер, профессор университета ИТМО, ныне преподаватель в университете Иннополис.
История ООЯП
Основное применение
этого языка связано с
приложениями большого размера в
критически важных по надежности областях в таких как,
например, финансовая, военная,
аэрокосмическая.

ООП развилось в доминирующую методологию программирования в начале и середине 1990 годов. В это время появились широкодоступные языки программирования: C++ (1983), Delphi (1995), Object-C (1983, построен на парадигме
Smalltalk) и т.п.
История ООЯП
Доминированием
этой методологии поддерживалось ростом популярности графических интерфейсов пользователя, которые основывались на техниках ООП.

История ООЯП
Язык Python был разработан в 1990 году.
Язык Java был разработан в 1995 году.
Язык Perl 6 был разработан в 2000 году.
Язык C# разработан в 2001 году.
Язык Scala был разработан в 2003 году.
Язык С++ разработал Бьёрн Страуструп, он придумал ряд усовершенствований к языку С
под собственные нужды. Страуструп решил дополнить язык
С
возможностями,
имеющимися в языке Simula.

История ООЯП
Язык Python
Разработка языка Python была начата
Гвидо ван Россумом
Python язык программирования общего назначения, ориентированный на повышение производительности разработчика и читаемости кода.

История ООЯП
Язык Java
Автором языка Java является Джеймс Гослинг.
Изначально язык
разрабатывался для программирования бытовых электронных устройств.
Java сейчас используется повсюду, в телефоне, в приставке, в кредитке, на сервере,
к которому вы сейчас подключены, в браузере, который вы используете.
Работает на огромном количестве
операционных систем и железе.
Java, работает под JVM — виртуальной машиной
Java (Java Virtual Machine).

История ООЯП
Язык Perl 6
Язык программирования Perl создал Ларри Уолл.
Perl
- интерпретируемый язык,
приспособленный для обработки произвольных текстовых файлов,
извлечения из них необходимой информации и выдачи сообщений.
Perl 6 — очередная версия языка программирования Perl

История ООЯП
Язык C#
Язык программирования C# разработан группой инженеров компании
Microsoft под руководством Андерса Хейлсберга и Скотта Вильтаумота.
C#

язык программирования, который компания
Microsoft изначально делала для своих проектов.

История ООЯП
Язык Scala
Первые версии языка Scala были созданы в лаборатории методов программирования Федеральной политехнической школы Лозанны под руководством Мартина Одерски.
Язык реализован для платформы Java.
Scala может стать
приемником Java.
Scala, как и Java, работает под JVM — виртуальной машиной Java (Java Virtual Machine).
Scala
выбирают те,
кому нравится объектный подход, но не нравится то, как это сделано в Java.

Перспективы ООЯП
Тенденции развития языков программирования:
1)
Стремление к совершенству
2)
Нацеленность на эффективность
3)
Повышение сложности задач
4)
Продление жизненного цикла ПО
Стремление разработчиков создавать программы, которые не зависели бы от
типа компьютера и операционной
системы – создало современный язык
Java.

Перспективы ООЯП
Среди аргументов в
пользу использования объектно- ориентированного программирования можно выделить:
1)
Простота
2)
Высокая скорость разработки
3)
Удобство тестирования и обслуживания
Объектно-ориентированные
языки
программирования поставляются с богатыми библиотеками объектов, а код, разработанный в ходе реализации проекта, также может быть повторно использован в будущем при создании других программ.

Как и что программировать?
Последовательное изучение ООМиП.
1.
Объекты и классы: спецификация языка Java, API, JDK, JRE и IDE; определение классов для объектов; создание объектов с помощью конструкторов, доступ к объектам с помощью ссылочных переменных; различия между переменными примитивных и ссылочных типов;
использование классов из Java-библиотеки; статические переменные, константы и методы;
модификаторы доступа; инкапсуляция полей данных; передача методам объектов; массив объектов; неизменяемые объекты и классы; область видимости переменных; ссылка this.
2.
Объектно-ориентированное мышление: абстракция и инкапсуляция класса; мышление объектами; отношения между классами (вот тут появляется моделирование); обработка примитивных типов как объектных; автоматическое преобразование между примитивными типами и классами-обертками; классы BigInteger и BigDecimal; класс String; классы
StringBuilder и StringBuffer.
3.
Наследование и полиморфизм: суперклассы и подклассы; особенности наследования в
Java; ключевое слово super; переопределение методов; переопределение и перегрузка; класс
Object и его метод toString(); полиморфизм; динамическое связывание; приведение объектов и оператор instanceof; класс ArrayList; полезные методы для обработки ArrayList;
модификатор доступа protected; предотвращение порождения и переопределения.

ООМиП это только про написание кода?
Конечно, НЕТ!
В ИТ сфере есть такое понятие как
DevOps
DevOps (акроним от англ. Development /разработка/ и Operations
/сопровождение/) — это инженерная культура, практики и инструменты,
направленные на сокращение релизного цикла, повышение эффективности и обеспечение возможности выпуска релиза в любой момент посредством:
•интеграции Development и Operations;
•создания единой команды;
•автоматизации рутинных операций;
•частой проверки кода.

DevOps как стиль жизни
Источник: https://partner.sberbank-school.ru/
- курс DevOps для всех

Источник: https://partner.sberbank-school.ru/
- курс DevOps для всех

Вопрос дня, месяца и года!
А кем мы можем работать? Что же такое прикладная информатика?
На сегодняшний день существует карьерный
навигатор по ИТ специальностям!
Продолжите фразу: «Live and let …»

Спасибо за внимание


написать администратору сайта