Файл: Лабораторная работа 1. Установка и настройка операционной системы 5 Тема Обзор современных ос 29 Лабораторная работа 1 29 Работа с файлами в консоле ос windows 29.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 16.03.2024
Просмотров: 76
Скачиваний: 2
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОДЕРЖАНИЕ
Поля класса содержат данные, которые определяют атрибуты экземпляров класса. Методы класса – процедуры и функции, которые манипулируют полями и возвращают результаты, основанные на текущих значениях полей. Важно отметить, что методы класса автоматически имеют доступ ко всем полям этого класса.
Объекты – это экземпляры классов. Объект объявляется в операторе var точно так же, как другие типы переменных. Каждый объект имеет собственный набор полей класса и может обращаться только к его публичным полям. Аналогично, только публичные методы класса могут применяться к объекту.
Объектно-ориентированное программирование (ООП) подразумевает управление объектами путем посылки им сообщений. Сообщение указывает объекту выполнить задачу. Объект ищет метод, чье имя соответствует такому сообщению, и применят этот метод. Таким образом, ООП-сообщение определяет, что делать объекту, в то время как метод определяет, как управлять объектом. Паскаль использует операцию точки, чтобы обратиться к публичным полям объекта и также посылать сообщение объекту.
Для того чтобы поддерживать форму, Delphi использует модули Паскаля.
Методические рекомендации по созданию программы арифметического калькулятора:
Для практического изучения синтаксического модуля, в качестве примера рассмотрим листинг программы создания калькулятора, используя компоненты, находящиеся на закладках Standard и Additional.
-
Запустите Delphi. -
Подпишите форму (Form1) заголовком "Калькулятор". Для этого нужно в поле Caption инспектора объектов вписать слово Калькулятор. Во время того, как вы будете вписывать слово, оно автоматически будет прописываться в заголовок формы вместо надписи Form1. -
Добавьте на форму поле, в которое будет выводиться результат. Для этого используйте компонент Edit (поле для ввода), который находится на закладке Standard. Теперь установите его свойства в инспекторе объектов. Свойству Text присвойте значение 0 (именно это свойство содержит текст, находящийся в поле для ввода). Кроме того, свойству ReadOnly (только чтение) присвойте значение true (истина). Это необходимо для того, чтобы во время работы вашей программы пользователь не мог вводить символы напрямую, без помощи кнопок, в это поле. -
Добавьте на форму две кнопки Button1 и Button2 из закладки Standard панели компонентов. Свойству Caption первой кнопки присвоим значение "Сброс" а второй "Выход". Первая кнопка будет сбрасывать результат вычислений, а вторая позволит выйти из программы. Теперь нужно добавить еще несколько кнопок для ввода чисел и арифметических действий. Для этого используйте кнопки быстрого доступа SpeedButton. Найдите этот компонент на закладке Additional панели компонентов. Расположите четыре ряда по шесть кнопок на форме. В результате получится форма следующего вида:
Последовательно присвойте свойству Caption для каждой кнопки значения: 0,1,2,3,4,… а также арифметические операции и операции работы с памятью:
Заметим, что кнопки работы с памятью позволяют запомнить любое число, а затем выдать его. Названия кнопок соответствуют следующим действиям:
СП - стереть память;
ИП - выдать значение из памяти;
П- - поместить число в память со знаком минус и сложить его с содержимым памяти;
П+ - поместить число в память и сложить его с содержимым памяти.
Вы можете расположить кнопки так, как это вам больше нравится. Ведь это ваше приложение!
Написание программного кода:
Кнопки Сброс и Выход. Выполните двойной щелчок по кнопке Сброс (или щелкните один раз, затем перейдите в окно инспектора объектов и выберите закладку Events (события), затем выполните двойной щелчок напротив надписи OnClick). Создание кода обнуления:
procedure TForm1.Button1Click(Sender: TObject);
begin
Edit1.Text:='0';
end;
Таким образом, при нажатии на кнопку, в поле для ввода Edit1 будет записано значение 0.
Для кнопки Выход напишите следующий код:
procedure TForm1.Button2Click(Sender: TObject);
begin
Form1.Close;
end;
При нажатии на эту кнопку, форма Form1 закроется.
Запустите вашу программу при помощи клавиши
Создание обработчиков события нажатия кнопки для всех остальных кнопок.
Для кнопки 9:
procedure TForm1.SpeedButton3Click(Sender: TObject);
begin
if Edit1.Text<>'0' then
Edit1.Text:=Edit1.Text+'9'
else
Edit1.Text:='9';
end;
Здесь сначала проводится проверка значения, находящегося в поле для ввода. Если оно равно нулю, то в поле просто вписывается нужная цифра вместо нуля. Если же там уже не нулевое значение, то приписывается эта цифра справа от уже имеющегося числа.
Создайте аналогичный код, как и для кнопки 9, для остальных цифровых кнопок (кроме кнопки 0), за исключением того, что вместо числа 9 везде поставьте число, соответствующее названию кнопки, например для кнопки 1:
procedure TForm1.SpeedButton3Click(Sender: TObject);
begin
if Edit1.Text<>'0' then
Edit1.Text:=Edit1.Text+'1'
else
Edit1.Text:='1';
end;
Теперь напишите код для кнопки 0:
procedure TForm1.SpeedButton19Click(Sender: TObject);
begin
if Edit1.Text<>'0' then
Edit1.Text:=Edit1.Text+'0'
end;
Здесь, если в поле для ввода стоит ноль, то к нему ничего не добавляется, иначе, если значение поля для ввода не равно нулю, то приписывается ноль справа.
Запустите программу (
Арифметические операции
Для написания кода арифметических операций необходимо введение вспомогательных переменных.
Пока попробуем работать с числами целого типа данных. В дальнейшем код можно легко переписать для действительных чисел.
Операция сложения двух чисел:
Код должен описывать выполнение следующих действий:
по щелчку на кнопке запоминать первое число в какой-либо переменной, а по щелчку по кнопке выводить результат сложения в поле для ввода.
Для этого добавьте переменную a в раздел описания переменных модуля Unit1 (это в самом начале модуля, в разделе interface):
var
Form1: TForm1;
a: integer;
Пусть она пока будет целой (integer). Теперь нужно при нажатии кнопки запомнить число, находящееся в поле для ввода в переменную a и обнулить поле для ввода :
procedure TForm1.SpeedButton22Click(Sender: TObject);
begin
a:=StrToInt(Edit1.Text);
Edit1.Text:='0';
end;
Функция StrToInt преобразует строковое значение (тип string) в целое (тип integer). Обратная функция (преобразующая целое значение в строковое) - это функция IntToStr. Теперь, при нажатии на кнопку , осталось сложить введенное число с запомненным ранее в переменной a:
procedure TForm1.SpeedButton23Click(Sender: TObject);
begin
Edit1.Text:=IntToStr(StrToInt(Edit1.Text)+a);
end;
Таким образом, строка преобразуется в число, складываем с переменной a, преобразуем число в строку и помещаем результат в поле для ввода.
Аналогичным образом напишите коды для остальных арифметических операций. Для этого введем еще одну переменную целого типа, например f, в зависимости от значения которой будет выполнятся требуемое действие при нажатии кнопки . Далее допишем коды арифметических операций следующим образом:
begin
a:=StrToInt(Edit1.Text);
Edit1.Text:='0';
f:=1;
end;
Код для кнопки равно примерно будет выглядеть следующим образом:
begin
if (f=1)
then Edit1.Text:=IntToStr(StrToInt(Edit1.Text)+a);
if (f=2)
then Edit1.Text:=IntToStr(a-StrToInt(Edit1.Text));
if f=3
then Edit1.Text:=IntToStr(a*StrToInt(Edit1.Text));
end;
или
сase f of
1: Edit1.Text:=IntToStr(StrToInt(Edit1.Text)+a);
2: Edit1.Text:=IntToStr(a-StrToInt(Edit1.Text));
3: Edit1.Text:=IntToStr(a*StrToInt(Edit1.Text));
End;
Конечно, вышеприведенный код не лишен недостатков. Однако цель нашей лабораторной работы проиллюстрировать возможности, предоставляемые средой Delphi и изучить некоторые возможности стандартных компонентов Delphi.
Задание на самостоятельную работу
Подготовиться к лабораторному занятию по ТМ № 1 ЛЗ. № 4.2 «Разработка пользовательского интерфейса с использованием программы EaSynth ForeUI».
Контрольные вопросы
-
В чем заключается принципиальная разница между Delphi и Turbo-Pascal? -
Дать понятия компоненты, класса, объекта, свойств, события. -
Дать понятия формы, проекта. -
Из каких элементов состоит интегрированная среда разработки программ. -
Пояснить этапы создания программы. -
Что такое программа, управляемая событиями? -
Назначение модуля. -
Пояснить понятие класса и методов класса. -
Что такое объектно-ориентированное программирование?
Тематический модуль № 1. Общие понятия и положения теории систем
Тема № 4. Интерфейс ОС с пользователями
Лабораторная работа №2. Разработка пользовательского интерфейса с использованием программы EaSynth ForeUI
Учебные цели:
-
дать практическое представление о принципах проектирования пользовательского интерфейса программного продукта; -
исследовать на практике основные понятия и положения излагаемого курса, -
получение навыков создания пользовательского интерфейса программного продукта.
Воспитательные цели:
-
воспитание познавательного интереса, активности, целеустремленности, настойчивости, активности, наблюдательности, интуиции, сообразительности; -
формирование навыков самостоятельности и дисциплинированности; -
стимулировать активную познавательную деятельность обучаемых, способствовать формированию у них творческого мышления.
Категория слушателей: 2,3 курс РТФ.
Время: 90 мин.
Место проведения: дисплейный класс.
Материально-техническое обеспечение:
виртуальная машина с операционной системой Windows и установленным на ней программным продуктом EaSynth ForeUI
ПЛАН практического ЗАНЯТИЯ
Учебные вопросы | Время, мин |
Вступительная часть 1.Этапы разработки пользовательского интерфейса 2. Создание интерфейса АИС «Командировка» Заключительная часть | 10 25 45 10 |
Литература:
Основная:
-
Горлов, С.К. (ВИ МВД РФ). Операционные системы [Текст] : Учеб.пособие / С. К. Горлов, М. В. Питолин, С. В. Белокуров. - Воронеж : ВИ МВД РФ, 2002. - 95с. -
Гордеев, А. В. Операционные системы [Текст] : [учебник]: доп. М-вом образования РФ / А. В. Гордеев. - 2-е изд. - СПб : Питер, 2009. - 415 с. : ил. - (Учебник для вузов). - Лит. : с. 406-408. - ISBN 978-5-94723-632-3 : 171-70.
Дополнительная:
-
Конфигурирование и сопровождение современных операционных систем [Текст]: учебное пособие/Т.В. Мещерякова, И.В. Атласов, Л.А. Обухова.-Воронеж: Воронежский институтМВД России, 2012.- 139 с.- ISBN 978-5-885973-069-9. -
Фигурнов, В.Э. IBM PC для пользователя : крат. курс [Текст] / В. Э. Фигурнов. - 7-е изд.,сокращ.версия. - М. : Инфра-М, 1999. - 479с. : ил. - ISBN 5-86225-471-4 : 32-00. -
Операционные системы [Текст]: учебное пособие / Воронежск. ин-т МВД РФ. - Воронеж : ВИ МВД России, 2010. - 158 с. - Лит.: с.157-158. - ISBN 978-5-88591-025-5 : 47-69.
Краткие теоретические сведения
Интерфейс пользователя (UI) – это часть программы, которая находится на виду у пользователя и призвана обеспечивать отображение данных, управление или диалог с пользователем. При разработке программного обеспечения программисты не должны оставлять дизайн интерфейса пользователя "на потом", считая, что в программе только код должен быть краеугольным камнем. Время от времени у пользователей возникает чувство раздраженности, например, даже из-за неудачно подобранных шрифтов, неудобного расположения элементов управления, отображения данных. Для удобства пользователей должно быть затрачено n-ое количество часов, так как это серьезная работа. Это следует учитывать при озвучивании сроков разработки программы.
Удобство пользовательского интерфейса входит в такое понятие как "Эргономика", которое включается в процессы разработки и тестирования программного продукта как часть системы качества. Разработка пользовательского интерфейса должна вестись совместно с дизайном программного продукта в целом.
Процесс разработки пользовательского интерфейса разбивается на этапы жизненного цикла:
-
Анализ трудовой деятельности пользователя, объединение бизнес-функций в роли. -
Построение пользовательской модели данных, привязка объектов к ролям и формирование рабочих мест. -
Формулировка требований к работе пользователя и выбор показателей оценки пользовательского интерфейса. -
Разработка обобщенного сценария взаимодействия пользователя с программным модулем (функциональной модели) и его предварительная оценка пользователями и Заказчиком. -
Корректировка и детализация сценария взаимодействия, выбор и дополнение стандарта (руководства) для построения прототипа. -
Разработка макетов и прототипов ПИ и их оценка в деловой игре, выбор окончательного варианта. -
Имплементация ПИ в коде, создание тестовой версии. -
Разработка средств поддержки пользователя (пользовательские словари, подсказки, сообщения, помощь и пр.) и их встраивание в программный код. -
Usability тестирование тестовой версии ПИ по набору раннее определенных показателей. -
Подготовка пользовательской документации и разработка программы обучения.
Удобство пользовательского интерфейса. Программа разрабатывается для обеспечения работы пользователя, т. е. для того, чтобы он, с помощью компьютерной программы, быстрее, надежнее и качественнее решал свои производственные задачи. С точки зрения удобства пользовательского интерфейса в программе важно создать такой пользовательский интерфейс, который сделает работу эффективной и производительной, а также обеспечит удовлетворенность пользователя от работы с программой. Разработчику необходимо тщательно продумать и осознать сценарий взаимодействия программы с пользователем, приведя его к оптимальной системе выполнения задач, и реализовать пользовательский интерфейс в соответствии с этой системой. Для того, чтобы разобраться в технологии решения задач пользователя, разработчику необходимо выяснить следующие моменты:
-
Какая информация необходима пользователю для решения задачи? -
Какую информацию пользователь может игнорировать (не учитывать)? -
Совместно с пользователем разделить всю информацию на сигнальную, отображаемую, редактируемую, поисковую и результирующую. -
Какие решения пользователю необходимо принимать в процессе работы с программой? -
Может ли пользователь совершать несколько различных действий (решать несколько задач) одновременно? -
Какие типовые операции использует пользователь при решении задачи?
Что произойдет, если пользователь будет действовать не по предписанному Вами алгоритму, пропуская те или иные шаги или обходя их?
Дизайн пользовательского интерфейса должен обеспечивать минимизацию усилий пользователя при выполнении работы и приводить к:
-
сокращению длительности операций чтения, редактирования и поиска информации, -
уменьшению времени навигации и выбора команды, -
повышению общей продуктивности пользователя, заключающейся в объеме обработанных данных за определенный период времени. -
увеличению длительности устойчивой работы пользователя и др.
Методика выполнения работы
1. Запустить программу ForeUI: