|
Программирование и обработка графического интерфейса часть 2
|
|
| engineerklub | Дата: Среда, 13.05.2026, 14:52 | Сообщение # 1 |
 Генералиссимус
Группа: Администраторы
Сообщений: 39282
Статус: Offline
| Программирование и обработка графического интерфейса (часть 2)
Лабораторная работа №1: Создание и использование классов. Цель работы: Знакомство с базовыми принципами ООП. Знакомство с основами создания классов. Задачи: Реализовать программу для рисования геометрических фигур используя представленные примеры. Создать свой класс для четырехугольника. Создавать четырехугольник лучше всего через начальную точку и расстояния его длинны и ширины. Реализовать функционал для создания треугольника и квадрата со случайными точками или заданными пользователем Реализовать функционал для перемещения фигур по сцене. Функционал программы: Рисование двух видов фигур на холсте – треугольника и прямоугольника. У пользователя должна быть возможность либо задать размеры фигур, либо они генерируются со случайным размером. Точка, треугольник и прямоугольник должны быть реализованы в качестве классов. В программе должен присутствовать функционал для перемещения фигур по холсту по обоим осям координат. Теоретическая информация. Объектно-ориентированное программирование (ООП) — это парадигма программирования, в которой программа строится вокруг объектов. ООП возникло как ответ на необходимость улучшения структуры и организации программ, а также на стремление сделать программирование более интуитивно понятным и управляемым. Процедурное программирование, основанное на разделении программы на функции и процедуры, становилось неэффективным для больших и сложных систем, так как это часто приводило к дублированию кода и запутанности. Концепция ООП же основана на моделировании программы в терминах реальных сущностей или объектов, что сделало код более интуитивно понятным, легче расширяемым и поддерживаемым. Класс — это основной инструмент в технологии ООП. Класс представляет собой шаблон или модель для создания объектов. Класс определяет общие характеристики (атрибуты) и поведение (методы) объектов, которые на его основе могут быть созданы. Класс является логической абстракцией. Физическое представление класса появится в программе лишь после того, как будет создан объект (экземпляр) этого класса. Основная идея при выделении классов заключается в обобщении некоторых сущностей, которые обладают схожими параметрами и выполняют одинаковые функции. К примеру, мы делаем программу для учета книг в библиотеке. Нашим основным классом в данном случае будет как раз «Книга», которая будет обладать некоторыми атрибутами – названием, автором, количеством страниц. А уже какие-то записи о существующих в библиотеке книгах будут экземплярами объектов данного класс
СКАЧАТЬ
|
| |
|
|
| engineerklub | Дата: Среда, 13.05.2026, 14:52 | Сообщение # 2 |
 Генералиссимус
Группа: Администраторы
Сообщений: 39282
Статус: Offline
| Лабораторная работа №2: Применение классов при создании архитектуры программы. Цель работы: Применение знаний о создании классов для разработки ПО. Задачи: Реализовать программу согласно предложенному функционалу. Разработать систему классов для программы: классы для шаблона противника и иконки, классы для работы со списком шаблонов противников и иконок. Реализовать систему сохранения и загрузки списка противников. Функционал программы: При старте программы должна происходить загрузка всех изображений из указанной в коде программы папки в качестве иконок. Добавление/удаление противников в список. Загрузка/сохранение списка противников в формате JSON. Задание. Редактор противников. В качестве задания на лабораторную работу требуется написать программу для редактирования списка противников для игры-кликкера, которая будет реализовываться в лабораторной работе №3.
СКАЧАТЬ
|
| |
|
|
| engineerklub | Дата: Среда, 13.05.2026, 14:53 | Сообщение # 3 |
 Генералиссимус
Группа: Администраторы
Сообщений: 39282
Статус: Offline
| Лабораторная работа №3: Инкапсуляция. Повторное использование классов. Цель работы: Знакомство с принципом инкапсуляции. Применение ранее разработанных классов. Задачи: Реализовать программу согласно описанному функционалу. Создать класс для хранения числовых данных в формате массива и использовать класс для хранения больших чисел. Разработать систему классов для реализации логики программы. Классы должны удовлетворять принципу инкапсуляции. Функционал программы: Загрузка сохраненных шаблонов из редактора противников реализованного в лабораторной работе №2 в качестве противников в игре при запуске программы. По нажатию не иконку противника тому наносится урон. По достижению нуля жизней игроку дается золото, соответствующее этому значению у противника. После победы над противником случайно выбирается следующий. Характеристики следующего противника модифицируются в соответствии со значениями его модификаторов и уровнем игрока. Игрок может тратить золото на улучшение характеристики урона. Теоретическая информация. Инкапсуляция — один из фундаментальных принципов объектно-ориентированного программирования, который предполагает объединение данных и методов, работающих с этими данными, внутри одного класса, а также ограничение доступа к этим данным извне. С первой частью термина вы уже познакомились в первой лабораторной работе где был рассмотрен процесс формирования класса. Что касается ограничения доступа к данным извне этот механизм реализуется благодаря следующим принципам: Сокрытие данных - атрибуты класса, как правило, делаются private, чтобы их нельзя было изменить напрямую из внешнего кода. Таким образом мы скрываем внутренние детали реализации объекта и ограничиваем доступ к его состоянию. Контроль доступа - класс предоставляет контролируемые точки доступа к своим данным через публичные методы, что позволяет контролировать и управлять тем, как эти данные изменяются или используются.
СКАЧАТЬ
|
| |
|
|