Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Объектно ориентированное программирование

Покупка
Артикул: 799094.01.99
Доступ онлайн
350 ₽
В корзину
В пособии рассмотрены основы программирования на примере языка Паскаль, описаны принципы разработки программ с графическим интерфейсом пользователя в среде объектно-визуального программирования Delphi, приведены базовые сведения по языку Microsoft Visual C#. Для запуска содержащихся в издании примеров могут быть использованы бесплатные версии сред разработки приложений, такие как PascalABC. NET и Microsoft Visual C# Express Edition. Предназначено для бакалавров, изучающих электронику и электротехнику.
Зюзев, А. М. Объектно ориентированное программирование : учебно-методическое пособие / А. М. Зюзев, К. Е. Нестеров. - Екатеринбург : Изд-во Уральского ун-та, 2019. - 116 с. - ISBN 978-5-7996-2634-1. - Текст : электронный. - URL: https://znanium.com/catalog/product/1936349 (дата обращения: 21.07.2026). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов
Министерство науки и высшего образования
Российской Федерации
Уральский федеральный университет
имени первого Президента России Б. Н. Ельцина
А. М. Зюзев
К. Е. Нестеров
ОБЪЕКТНО 
ОРИЕНТИРОВАННОЕ 
ПРОГРАММИРОВАНИЕ
Учебно-методическое пособие
Рекомендовано методическим советом
Уральского федерального университета
для студентов вуза,
обучающихся по направлению подготовки
13.03.02 — Электроэнергетика и электротехника
Екатеринбург
Издательство Уральского университета
2019


УДК 004.42(075.8)
ББК 32.973я73
          З-98
Рецензенты:
кафедра информатики УГГУ (завкафедрой канд. техн. наук, доц. 
Дружинин А. В.);
директор ООО «Тяжпромэлектропривод» канд. техн. наук, доц. 
Зеленцов В. И.
Научный редактор — канд. техн. наук, доц. Метельков В. П.
	
Зюзев, А. М.
З-98        Объектно ориентированное программирование : учеб.-метод. 
пособие / А. М. Зюзев, К. Е. Нестеров. — Екатеринбург : Изд-во 
Урал. ун-та, 2019. — 116 с.
ISBN 978-5-7996-2634-1
В пособии рассмотрены основы программирования на примере языка Паскаль, описаны принципы разработки программ с графическим интерфейсом пользователя в среде объектно-визуального программирования 
Delphi, приведены базовые сведения по языку Microsoft Visual C#. Для запуска содержащихся в издании примеров могут быть использованы бесплатные версии сред разработки приложений, такие как PascalABC. NET 
и Microsoft Visual C# Express Edition.
Предназначено для бакалавров, изучающих электронику и электротехнику.
Библиогр.: 6 назв. Рис. 9.
УДК 004.42(075.8)
ББК 32.973я73
ISBN 978-5-7996-2634-1	
© Уральский федеральный
	
     университет, 2019


Введение
Я
зыки программирования условно можно разделить на  три основных группы: языки низкого 
уровня (ассемблер), языки высокого уровня 
(Basic, C, Pascal) и языки объектно-визуального программирования (Delphi, LabVIEW, 
языки из  пакета Microsoft  Visual Studio). 
Языки низкого уровня используются в основном для программирования простейших 
контроллеров, т. к. позволяют получить эффективно исполняемый код минимальной 
длины. Языки высокого уровня применяются при разработке программ для более сложных контроллеров и персональных компьютеров (ПК). Языки объектно-визуального 
программирования используются при написании программ для ПК и позволяют значительно сократить время разработки пользовательского интерфейса программы.


1.1. Общие сведения
А
лфавит языка Паскаль включает буквы, цифры, шестнадцатеричные цифры, специальные символы и зарезервированные слова.
Буквы — это буквы латинского алфавита от а до z и от А до Z. 
В Паскале нет различия между прописными и строчными буквами алфавита, если только они не входят в символьные и строковые выражения.
Цифры — арабские цифры от 0 до 9. Каждая шестнадцатеричная цифра имеет значение от 0 до 15. Первые 10 значений 
обозначаются арабскими цифрами от 0 до 9, остальные шесть — 
латинскими буквами от A до F или от a до f.
Специальные знаки Паскаля — это символы + – * / = , ′ . : ; 
< > [] () {} ^ @ $ #. К специальным знакам относятся также следующие пары символов: <> <= >= := (* *). В программе такие 
пары символов нельзя разделять пробелами, если они используются как знаки операций отношения или ограничители комментария. Символы (* и *) могут употребляться соответственно вместо {и}.
Особое место в алфавите языка занимают пробелы, к которым относятся любые символы ASCII в диапазоне кодов 
от 0 до 32. Эти символы рассматриваются как ограничители идентификаторов, констант, чисел, зарезервированных 


1.1. Общие сведения
слов. Несколько следующих друг за другом пробелов считаются одним пробелом (последнее не относится к строковым 
константам).
В Паскале имеются следующие зарезервированные слова:
аnd	
end	
nil	
shr
asm	
file	
not	
string
array	
for	
object	
then
begin	
function	
of	
to
сasе	
goto	
or	
type
const	
if	
packed	
unit
constructor	
implementation	
procedure	
until
destructor	
in	
program	
uses
div	
inline	
record	
var
dо	
interface	
repeat	
while
downto	
label	
set	
with
else	
mod	
shl	
xor
Зарезервированные слова не могут использоваться в качестве идентификаторов (что такое идентификатор, см. ниже).
Стандартные директивы первоначально связаны с некоторыми стандартными объявлениями в программе. К ним относятся:
аbsolutе	
far	
near
assembler	
fоrward	
рrivatе
external	
interrupt	
virtual
Можно переопределить любую стандартную директиву, т. е. 
объявить одноименный идентификатор. Стандартные директивы PRIVATE и VIRTUAL действуют только в пределах объявления объектов.
Идентификаторы в Паскале — это имена констант, переменных, меток, типов, объектов, процедур, функций, модулей, программ и полей в записях. Идентификаторы могут иметь 
произвольную длину, но значащими (уникальными в области 
определения) являются только первые 63 символа. Идентификатор всегда начинается с буквы или знака подчеркивания, 
за которым могут следовать буквы, цифры и знак подчеркива
ния (код 95 в ASCII). Пробелы и специальные символы алфавита не могут входить в идентификатор. Примеры правильных 
идентификаторов:
а
ALPHA
MyProgramIsTheBestProgram
date_27_ sep_ 39
external
_beta
Примеры неправильных идентификаторов:
1Program (начинается с цифры)
block#1 (содержит специальный символ)
Му Program (содержит пробел)
mod (зарезервированное слово)
В качестве констант в Паскале могут использоваться целые, 
вещественные и шестнадцатеричные числа, логические константы, символы, строки символов, конструкторы множеств 
и признак неопределенного указателя NIL.
Целые числа записываются со знаком или без него. Диапазон 
допустимых значений зависит от разрядности переменной или 
константы, в которой хранится число. Например, для 32-битной переменной диапазон значений составляет от –2 147 483 648 
до +2 147 483 647. Следует учесть, что, если целочисленная константа выходит за допустимые границы, компилятор дает сообщение об ошибке. В этом случае необходимо использовать 
другой тип переменной.
Вещественные числа записываются со знаком или без него 
с использованием десятичной точки и (или) экспоненциальной части. Экспоненциальная часть начинается символом «е» 
или «Е», за которым могут следовать знаки «+» или «–» и число, равное десятичному порядку. Например,


1.1. Общие сведения
3.14Е5 — 3.14 умножить на 10 в степени 5;
—17e–2 — минус 17 умножить на 10 в степени минус 2.
Если в записи вещественного числа присутствует десятичная 
точка, перед точкой и за ней должна быть хотя бы одна цифра. 
Если используется символ экспоненциальной части «е» («Е»), 
за ним должна следовать хотя бы одна цифра десятичного порядка.
Шестнадцатеричное число состоит из  шестнадцатеричных цифр, которым предшествует знак доллара «$» (код 36 
в АSСII). Диапазон шестнадцатеричных чисел от $00000000 
до $FFFFFFFF.
Логическая константа — это либо слово «FALSE» (ложь или 
0), либо слово «TRUE» (истина или 1).
Символьная константа — это любой символ ПК, заключенный в апострофы: ′z′ — символ z, ′Ф′ — символ Ф. Если необходимо записать собственно символ апострофа, он удваивается: ′′′′ — символ ′ (апостроф). Допускается использовать запись 
символа путем указания его внутреннего кода, которому предшествует символ «#» (код 35), например: #97 — символ а, #90 — 
символ z, #39 — символ ′, #13 — символ CR.
Строковая константа — любая последовательность символов 
(кроме символа «CR» — возврат каретки), заключенная в апострофы; если в строке нужно указать сам символ апострофа, он 
удваивается, например: ′Это — строка символов′, ′That′′s string′.
Строка символов может быть пустой, т. е. не иметь никаких 
символов в обрамляющих ее апострофах. Строку можно составлять из кодов нужных символов с предшествующими каждому 
коду символами, например, строка #8З#121#109#98#11#108 
эквивалентна строке ′Symbol′.
В строке можно чередовать части, записанные в обрамляющих апострофах, с частями, записанными кодами. Таким способом можно вставлять в строки любые управляющие символы, в т. ч. и символ «CR», например: #7′Ошибка! ′#13′Нажмите 
любую клавишу … ′#7.


Конструктор множества — список элементов множества, обрамленный квадратными скобками, например:
[1,2,4..7,12];
[blue, red];
[];
[true].
В Паскале разрешается в объявлении констант использовать 
произвольные выражения, операндами которых могут быть ранее объявленные нетипизированные константы, имена типов 
и объектов, а также следующие функции от них:
аbs	
lo	
рtr	
swар
chr	
odd	
round	
trunc
hi	
ord	
sizeof
length	
pred	
succ
Например:
const
МахRеа1 = Maxint div SizeOf (real);
NumChars = ord (′Z′) — ord (′a′) + 1;
Ln10 = 2,302585092994;
Ln10R = 1/Ln10.
Основными элементами, из которых конструируется исполняемая часть программы, являются константы, переменные 
и обращения к функциям. Каждый из данных элементов характеризуется своим значением и принадлежит к какому-либо типу данных. С помощью знаков операций и скобок из них 
можно составлять выражения, которые фактически представляют собой правила получения новых значений. Частным случаем выражения может быть просто одиночный элемент, т. е. 
константа, переменная или обращение к функции. Значение 
такого выражения имеет тот же тип, что и сам элемент. В бо
1.1. Общие сведения
лее общем случае выражение состоит из нескольких элементов 
(операндов) и знаков операций, а тип его значения определяется типом операндов и видом примененных к ним операций.
Примеры выражений:
Y
21
(а + b) * с
sin (t)*a > 2
a > 2
not Flag and (а = b)
NlL
[1, 3..7] * set1
В Паскале определены следующие операции:
унарные — not, @;
мультипликативные — *, /, div, mod, аnd, shl, shr;
аддитивные — +, —, or, xor;
отношения — =, <>, <, >, <=, >=, in.
Приоритет операций убывает в указанном порядке, т. е. 
наивысшим приоритетом обладают унарные операции, низшим — операции отношения. Порядок выполнения нескольких операций равного приоритета устанавливается компилятором из условия оптимизации кода программы и не обязательно 
слева направо. При исчислении логических выражений, операции равного приоритета всегда вычисляются слева направо, 
причем будут вычисляться все или только достаточные операции в зависимости от значения опции компилятора СОМPLETЕ 
ВООLEAN EVAL: при установленном значении этой опции вычисляются все операции отношения; при неустановленном — 
только те, которые достаточны для получения результата.
При действиях с вещественным типом одним из операндов 
может быть значение любого целого типа. Результат операций 
имеет тип DOUBLE.


Унарная операция @ применяется к операнду любого типа 
и возвращает результат типа POINTER, в котором содержится 
адрес операнда. Пусть, например, задано описание
type
TwoChar = array [1..2] of char;
var Int : integer;
TwoCharPtr: ^TwoChar;
В таком случае оператор TwoCharPtr := @int; приведет к тому, 
что в ТWОСНАRРТR будет храниться адрес целочисленной переменной int, которая теперь будет интерпретироваться как совокупность двух символов. Поэтому возможен, например, такой оператор:
if TwoCharPtr [1]^ = ′С′ then…
Если операция @ применяется к процедуре, функции или 
методу в объекте, ее результатом будет адрес точки входа в эту 
процедуру (функцию, метод). Этот адрес можно использовать 
только в подпрограмме, написанной на ассемблере, или в фрагментах INLINE.
В Паскале определены следующие логические операции:
not — логическое НЕ;
and — логическое И;
or — логическое ИЛИ;
xor — исключающее ИЛИ.
Логические операции применимы к операндам целого и логического типов. Если операнды — целые числа, то результат 
логической операции есть тоже целое число. К логическим операциям в Паскале обычно относятся и две сдвиговые операции 
над целыми числами:
i shl j — сдвиг содержимого i на j разрядов влево; освободившиеся младшие разряды заполняются нулями;
i shr j — сдвиг содержимого i на j разрядов вправо; освободившиеся старшие разряды заполняются нулями.


Доступ онлайн
350 ₽
В корзину