Язык SmallTalk «Чистый» объектно- ориентированный язык.

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



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

ОБЪЕКТНО- ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ (ООП) 1.
Синтаксис языка Java. Символы и синтаксис Перевод строчки эквивалентен пробелу Регистр в именах различается.
Основы информатики Классы Заикин Олег Сергеевич zaikin.all24.org
Операции Условная операция ? : Если истинно, то результатом будет, иначе. Например, int x = a < b ? a : b вычисляет минимум из a и b.
Переменные: тип, имя, значение НАЧАЛА ПРОГРАММИРОВАНИЯ.
OOП Инна Исаева. Подпрограмма – это большая программа, разделённая на меньшие части. В программе одна из подпрограмм является главной. Её задача состоит.
Базы данных и технологии баз данных, использующие объектную модель или ее элементы.
Данные в Visual Basic. Типы данных ДАННЫЕ переменные величины постоянные величины.
Лекция 12. Основы Avenue Харитонов А. Ю. Министерство образования и науки Украины Донецкий национальный технический университет Кафедра компьютерных систем.
Перегрузка операторов x = a + b результат 1-й операнд2-й операнд оператор По количеству операндов операторы делятся на: унарные (один операнд) бинарные.
Подпрограммы 1.Принцип модульности 2.Область действия переменных 3.Параметры подпрограмм 4.Модули.
Учебный курс Объектно-ориентированный анализ и программирование Лекция 7 Методы как средство реализации операций Лекции читает кандидат технических наук.
Файловый тип данных Файл – это область памяти на внешнем носителе, в которой хранится некоторая информация. В языке Паскаль файл представляет собой последовательность.
Лекция 1 Классификация С++. Парадигмы программирования Императивная Функциональная Декларативная (логическая) Инструкция 1 Инструкция 2 Инструкция 3 Инструкция.
Переменная l. Определение Переменная - именованное место в памяти, в котором можно хранить некоторое значение.
EPAM Systemswww.epam.com EPAM Systemswww.epam.com Программирование на языке C# Основы ООП.
САОД кафедра ОСУ 1 Основные абстрактные типы данных Схема процесса создания программ для решения прикладных задач ВУ.
Основы ООП и C# Работа с объектами и классами. Классы Класс специальный тип данных для описания объектов. Он определяет данные и поведение типа. Определение.
Объектно-ориентированное программирование Объектно-ориентированное программирование (ООП) - основная методология программирования. Она является продуктом.
Транксрипт:

Язык SmallTalk «Чистый» объектно- ориентированный язык

Основные принципы Объекты и сообщения Объект - компонент системы. Каждый объект состоит из некоторой принадлежащей ему памяти и множества операций, таким образом объединяя в себе (инкапсулируя) и данные и операции по их обработке. Сообщение - запрос к объекту выполнить одну из операций. Сообщение определяет, какая требуется операция, но не определяет как эта операция должна выполняться. Только получатель - объект, которому послано сообщение, определяет, как выполнять требуемую операцию. Классы и экземпляры Класс описывает реализацию множества объектов, которые представляют подобные компоненты системы. Отдельные объекты, описываемые классом, называются его экземплярами. Именно класс описывает структуру памяти своих экземпляров, которая представляется множеством переменных, и то, как экземпляры выполняют посланные им сообщения, то есть описывают методы, определяющие как выполнить операцию, затребованную соответствующим сообщением. Каждая переменная в принадлежащей объекту памяти ссылается на некоторый объект, называемый значением этой переменной. Классы и Метаклассы Всё есть объекты т.е. экземпляры некоторых классов, значит сами классы – тоже экземпляры некоторых классов. Класс, экземпляры которого сами являются классами называется метаклассом. Каждый класс является единственным экземпляром своего собственного метакласса и, всякий раз, когда создается новый класс, для него автоматически создается новый метакласс.

Переменные Существуют два вида частных переменных, доступных только одному объекту. 1.Переменные экземпляра - существуют в течение всего времени жизни объекта. 2.Временные переменные - создаются для некоторого действия и доступны только во время этого действия. Три других вида переменных доступны более чем одному объекту и называются общими переменными. Они различаются по тому, насколько широко они доступны объектам системы. 3.Переменные класса - доступны всем экземплярам данного класса. 4.Глобальные переменные - доступны всем экземплярам всех классов (то есть всем объектам системы). 5.Переменные пула - доступны экземплярам некоторого подмножества классов системы.

Особенности синтаксиса Всё делается через посылку сообщений: x + y объекту x посылается сообщение + с аргументом y Наиболее естественна постфиксная запись Невычисляемые операторы (блоки) [ … ]

Синтаксис Java и SmallTalk int a; float b; | a b | a = 5; // assigna := 5 "assign" object.getField();object getField object.getItem(10);object getItem: 10 'h'$h "string"'string' "a" + "b"'a','b' thisself nullnil return x;^ x new Object;Object new {1, 2, 3, 4, 5}#( ) a[10]a at: 10

Управляющие конструкции через посылку сообщений Проверка условий: parity := (number \\ 2) = 0 ifTrue: [0] ifFalse: [1] Применение блока к массиву: |sum| sum := 0. #( ) do: [:pr | sum := sum + (pr*pr)]

Иерархия классов Object Stream Magnitude PositionabIe5tream Character ReadStream Date WriteStream Time ReadWriteStream Number ExternalStrea, Float FileStream Fraction Random Integer Boolean LargeNegativelnteger False LargePositivelnteger True SmallInteger ProcessorScheduler LookupKey Delay Association SharedQueue Collection Behavior SequenceableCollection ClassDsscription LinkedList Class Semaphore MetaClass ArrayedCollection BitBlt Array CharacterScanner WordArray Pen DisplayBitmap DisplayObject RunArray DisplayMedium String Form Symbol Cursor Text DisplayScreen ByteArray InfiniteForm Interval OpaqueForm OrderedCollection Path SortedCollection Arc Bag Circle MappedCollection Curve Dictionary Line IdentityDictionary LinearFit Point Spline Rectangle UndefinedObject