Всё сдал! - помощь студентам онлайн Всё сдал! - помощь студентам онлайн

Реальная база готовых
студенческих работ

Узнайте стоимость индивидуальной работы!

Вы нашли то, что искали?

Вы нашли то, что искали?

Да, спасибо!

0%

Нет, пока не нашел

0%

Узнайте стоимость индивидуальной работы

это быстро и бесплатно

Получите скидку

Оформите заказ сейчас и получите скидку 100 руб.!


Подходы к проектированию программ в целом

Тип Курсовая
Предмет Информационные технологии на транспорте

ID (номер) заказа
3708335

500 руб.

Просмотров
1000
Размер файла
2.41 Мб
Поделиться

Ознакомительный фрагмент работы:

ВведениеКонцепция объектно-ориентированного программирования подразумевает, что основой управления процессом реализации программы является передача сообщений объектам. Поэтому объекты должны определяться совместно с сообщениями, на которые они должны реагировать при выполнении программы. В этом состоит главное отличие ООП от процедурного программирования, где отдельно определённые структуры данных передаются в процедуры (функции) в качестве параметров. Таким образом, объектно-ориентированная программа состоит из объектов - отдельных фрагментов кода, обрабатывающего данные, которые взаимодействуют друг с другом через определённые интерфейсы.Объектно-ориентированный язык программирования должен обладать следующими свойствами:. абстракции - формальное о качествах или свойствах предмета путем мысленного удаления некоторых частностей или материальных объектов;. инкапсуляции - механизма, связывающего вмести код и данные, которыми он манипулирует, и защищающего их от внешних помех и некорректного использования;. наследования - процесса, с помощью которого один объект приобретает свойства другого, т.е. поддерживается иерархической классификации;. полиморфизма - свойства, позволяющего использовать один и тот же интерфейс для общего класса действий.Разработка объектно-ориентированных программ состоит из следующих последовательных работ:определение основных объектов, необходимых для решения данной задачи;определение закрытых данных (данных состояния) для выбранных объектов;определение второстепенных объектов и их закрытых данных;определение иерархической системы классов, представляющих выбранные объекты;определение ключевых сообщений, которые должны обрабатывать объекты каждого класса;разработка последовательности выражений, которые позволяют решить поставленную задачу; разработка методов, обрабатывающих каждое сообщение;очистка проекта, то есть устранение всех вспомогательных промежуточных материалов, использовавшихся при проектировании;кодирование, отладка, компоновка и тестирование.Объектно-ориентированное программирование позволяет программисту моделировать объекты определённой предметной области путем программирования их содержания и поведения в пределах класса. Конструкция «класс» обеспечивает механизм инкапсуляции для реализации абстрактных типов данных. Инкапсуляция как бы скрывает и подробности внутренней реализации типов, и внешние операции и функции, допустимые для выполнения над объектами этого типа.ИсторияОбъектное и объектно-ориентированное программирование (ООП) возникло в результате развития идеологии процедурного программирования, где данные и подпрограммы (процедуры, функции) их обработки формально не связаны. Кроме того, в современном объектно-ориентированном программировании часто большое значение имеют понятия события (так называемое событийно-ориентированное программирование) и компонента (компонентное программирование).Первым языком программирования, в котором были предложены принципы объектной ориентированности, была Симула. В момент своего появления (в 1967 году), этот язык программирования предложил поистине революционные идеи: объекты, классы, виртуальные методы и др., однако это всё не было воспринято современниками как нечто грандиозное. Тем не менее, большинство концепций были развиты Аланом Кэйем и Дэном Ингаллсом в языке Smalltalk. Именно он стал первым широко распространённым объектно-ориентированным языком программирования.В настоящее время количество прикладных языков программирования (список языков), реализующих объектно-ориентированную парадигму, является наибольшим по отношению к другим парадигмам. В области системного программирования до сих пор применяется парадигма процедурного программирования, и общепринятым языком программирования является язык C. Хотя при взаимодействии системного и прикладного уровней операционных систем заметное влияние стали оказывать языки объектно-ориентированного программирования. Например, одной из наиболее распространенных библиотек мультиплатформенного программирования является объектно-ориентированная библиотека Qt, написанная на языке C++.Понятие объектно-ориентированного программированияОбъектно-ориентированное программирование – метод программирования, имитирующий способы, какими по нашему представлению выполнены предметы.ООП представляет собой отличный от процедурного способ программирования, который напоминает процесс человеческого мышления. В ООП главной отправной точкой при проектировании программы является объект. При структурном подходе описываемый объект обычно разделяется на составные части.Язык Delphi реализует концепцию объектно-ориентированного программирования (ООП). Это означает, что функциональность приложения определяется набором взаимосвязанных задач, каждая из которых становится самостоятельным объектом. У объекта есть свойства (т.е. характеристики, или атрибуты), методы, определяющие его поведение, и события, на которые он реагирует. Одним из наиболее важных понятий ООП является класс. Класс представляет собой дальнейшее развитие концепции типа и объединяет в себе задание не только структуры и размера переменных, но и выполняемых над ними операций. Объекты в программе всегда являются экземплярами того или иного класса (аналогично переменным определенного типа).Объект является представителем или экземпляром класса. Во время выполнения программы объекты взаимодействуют друг с другом, вызывая методы характерные для определенного класса. Класс определяет интерфейс с окружающим миром, посредством которого можно взаимодействовать с отдельными объектами. Все представители данного класса аналогичны друг другу. Каждый конкретный класс имеет свои особенности поведения и характеристик, определяющих этот класс.Принципы объектно-ориентированного программированияК основным принципам ООП относятся следующие:инкапсуляция;наследование;полиморфизм.Инкапсуляция представляет собой объединение данных и обрабатывающих их методов (подпрограмм) внутри класса (объекта). Это означает, что в классе инкапсулируются (объединяются и помещаются внутрь) поля, свойства и методы. При этом класс получает определенную функциональность, например, обеспечивая полный набор средств для создания программы поддержки некоторого элемента интерфейса (окна Windows, редактора и т. п.) или прикладной обработки.Непосредственно в описании объекта имеются только заголовки подпрограмм, а тело каждой подпрограммы задается отдельно. Описания полей всегда должны предшествовать заголовкамПосле того, как объектный тип объявлен, можно создавать переменные этого типа, или экземпляры объекта.После того как экземпляр объекта создан, его поля становятся доступными для методов.Таким образом, инкапсуляция – это объединение записей с процедурами и функциями, что превращает их в новый тип данных – объект.Наследование — это процесс порождения новых объектов-потомков от существующих объектов-родителей, при этом потомок наследует от родителя все его поля, свойства и методы. В дальнейшем наследуемые поля, свойства и методы можно использовать в неизменном виде или переопределять (модифицировать).Просто наследование большого смысла не имеет, поэтому в объект-потомок добавляются новые элементы, определяющие его особенность и функциональность. Удалить какие-либо элементы родителя в потомке нельзя. В свою очередь, от нового объекта можно породить следующий объект, в результате образуется дерево объектов (называемое также иерархией классов).Наследование – это использование объекта для построения иерархии порожденных объектов с наследованием доступа каждого из порожденных объектов к коду предка.Существует тип, служащий основой для создания нового объекта, называемый предком или родительским типом, а создаваемый объект – потомком или дочерним типом. Благодаря наследованию на основе существующего объекта можно создать любое количество новых объектов.В корне этого дерева находится базовый класс TObject, который реализует наиболее общие для всех классов элементы, например, действия по созданию и удалению объекта. Чем дальше тот или иной класс отстоит в дереве от базового класса, тем большей специфичностью он обладает.После того, как тип-потомок объявлен, прежде чем приступить к манипулированию его полями, необходимо создать экземпляр объекта.Таким образом, процесс, с помощью которого один тип наследует характеристики другого типа, называется наследованием. К объекту-потомку в случае необходимости могут быть объявлены новые поля, новые методы и перекрыты уже существующие методы предка. Эти добавления и изменения определяют только то, в чем потомок отличается от предка.Полиморфизм – задание одного имени действию, которое передается вверх и вниз по иерархии объектов с реализацией этого действия способом, соответствующим каждому объекту в иерархии.Сущность полиморфизма заключается в том, что методы различных классов могут иметь одинаковые имена, но различное содержание. Это достигается переопределением родительского метода в классе-потомке: В результате родитель и потомок ведут себя по-разному. При этом обращение к одноименным методам различных объектов выполняется аналогичноКонцепцииПоявление в ООП отдельного понятия класса закономерно вытекает из желания иметь множество объектов со сходным поведением. Класс в ООП - это в чистом виде абстрактный тип данных, создаваемый программистом. С этой точки зрения объекты являются значениями данного абстрактного типа, а определение класса задаёт внутреннюю структуру значений и набор операций, которые над этими значениями могут быть выполнены. Желательность иерархии классов (а значит, наследования) вытекает из требований к повторному использованию кода - если несколько классов имеют сходное поведение, нет смысла дублировать их описание, лучше выделить общую часть в общий родительский класс, а в описании самих этих классов оставить только различающиеся элементы.Необходимость совместного использования объектов разных классов, способных обрабатывать однотипные сообщения, требует поддержки полиморфизма - возможности записывать разные объекты в переменные одного и того же типа. В таких условиях объект, отправляя сообщение, может не знать в точности, к какому классу относится адресат, и одни и те же сообщения, отправленные переменным одного типа, содержащим объекты разных классов, вызовут различную реакцию.Отдельного пояснения требует понятие обмена сообщениями. Первоначально (например, в том же Smalltalk) взаимодействие объектов представлялось как «настоящий» обмен сообщениями, то есть пересылка от одного объекта другому специального объекта-сообщения. Такая модель является чрезвычайно общей. Она прекрасно подходит, например, для описания параллельных вычислений с помощью активных объектов, каждый из которых имеет собственный поток исполнения и работает одновременно с прочими. Такие объекты могут вести себя как отдельные, абсолютно автономные вычислительные единицы. Посылка сообщений естественным образом решает вопрос обработки сообщений объектами, присвоенными полиморфным переменным - независимо от того, как объявляется переменная, сообщение обрабатывает код класса, к которому относится присвоенный переменной объект.Однако общность механизма обмена сообщениями имеет и другую сторону - «полноценная» передача сообщений требует дополнительных накладных расходов, что не всегда приемлемо. Поэтому в большинстве ныне существующих объектно-ориентированных языков программирования используется концепция «отправка сообщения как вызов метода» - объекты имеют доступные извне методы, вызовами которых и обеспечивается взаимодействие объектов. Данный подход реализован в огромном количестве языков программирования, в том числе C++, Object Pascal, Java, Oberon-2. В настоящий момент именно он является наиболее распространённым в объектно-ориентированных языках.Концепция виртуальных методов, поддерживаемая этими и другими современными языками, появилась как средство обеспечить выполнение нужных методов при использовании полиморфных переменных, то есть, по сути, как попытка расширить возможности вызова методов для реализации части функциональности, обеспечиваемой механизмом обработки сообщений.Особенности реализацииКак уже говорилось выше, в современных объектно-ориентированных языках программирования каждый объект является значением, относящимся к определённому классу. Класс представляет собой объявленный программистом составной тип данных, имеющий в составе:Поля данныхПараметры объекта (конечно, не все, а только необходимые в программе), задающие его состояние (свойства объекта предметной области). Иногда поля данных объекта называют свойствами объекта, из-за чего возможна путаница. Физически поля представляют собой значения (переменные, константы), объявленные как принадлежащие классу.Методы Процедуры и функции, связанные с классом. Они определяют действия, которые можно выполнять над объектом такого типа, и которые сам объект может выполнять.Классы могут наследоваться друг от друга. Класс-потомок получает все поля и методы класса-родителя, но может дополнять их собственными либо переопределять уже имеющиеся. Инкапсуляция обеспечивается следующими средствами:Контроль доступа Поскольку методы класса могут быть как чисто внутренними, обеспечивающими логику функционирования объекта, так и внешними, с помощью которых взаимодействуют объекты, необходимо обеспечить скрытость первых при доступности извне вторых. Для этого в языки вводятся специальные синтаксические конструкции, явно задающие область видимости каждого члена класса. Методы доступа Поля класса, в общем случае, не должны быть доступны извне, поскольку такой доступ позволил бы произвольным образом менять внутреннее состояние объектов. Поэтому поля обычно объявляются скрытыми (либо язык в принципе не позволяет обращаться к полям класса извне), а для доступа к находящимся в полях данным используются специальные методы, называемые методами доступа. Такие методы либо возвращают значение того или иного поля, либо производят запись в это поле нового значения. Свойства объекта Псевдополя, доступные для чтения и/или записи. Свойства внешне выглядят как поля и используются аналогично доступным полям (с некоторыми исключениями), однако фактически при обращении к ним происходит вызов методов доступа. Таким образом, свойства можно рассматривать как «умные» поля данных, сопровождающие доступ к внутренним данным объекта какими-либо дополнительными действиями (например, когда изменение координаты объекта сопровождается его перерисовкой на новом месте). Полиморфизм реализуется путём введения в язык правил, согласно которым переменной типа «класс» может быть присвоен объект любого класса-потомка её класса.Подходы к проектированию программ в целомООП ориентировано на разработку крупных программных комплексов, разрабатываемых командой программистов (возможно, достаточно большой). Проектирование системы в целом, создание отдельных компонент и их объединение в конечный продукт при этом часто выполняется разными людьми, и нет ни одного специалиста, который знал бы о проекте всё.Объектно-ориентированное проектирование состоит в описании структуры и поведения проектируемой системы, то есть, фактически, в ответе на два основных вопроса:Из каких частей состоит система.В чём состоит ответственность каждой из частей.Выделение частей производится таким образом, чтобы каждая имела минимальный по объёму и точно определённый набор выполняемых функций (обязанностей), и при этом взаимодействовала с другими частями как можно меньше.Дальнейшее уточнение приводит к выделению более мелких фрагментов описания. После выделения компонентов и определения интерфейсов между ними реализация каждого компонента может проводиться практически независимо от остальных (разумеется, при соблюдении соответствующей технологической дисциплины).Большое значение имеет правильное построение иерархии классов. Одна из известных проблем больших систем, построенных по ООП-технологии - так называемая проблема хрупкости базового класса. Она состоит в том, что на поздних этапах разработки, когда иерархия классов построена и на её основе разработано большое количество кода, оказывается трудно или даже невозможно внести какие-либо изменения в код базовых классов иерархии (от которых порождены все или многие работающие в системе классы). Информационная система АТППеречень предметных областей20. Автотранспортное предприятиеОписание предметной областиВы являетесь руководителем автотранспортного предприятия. В предприятии имеются разные виды транспорта, а также работают разные специалисты. Каждый день автомобили направляются по разным маршрутам. Все они проходят обязательную регистрацию. Составить базы данных облегчающую работу руководителя автотранспортного предприятияРешениеАнализ предметной областиРазрабатываемая система базы данных «АТП» будет хранить информацию о транспорт АТП, водителях и маршрутах.2. Проектирование базы данных2.1. Схема данных и её описаниеОпределим сущности в нашей предметной области:СущностьАтрибуты сущностиАвтомобилиГосномер автомобиляМаркаГод изготовленияМарка топливаГрузоподъемностьВодителиКод водителяФИОДата рожденияСтажКатегория «А»Категория «В»Категория «C»Категория «D»Категория «E»ПробегиКод маршрутаИсходный пунктКонечный пунктРасстояниеАвтомобильВодительПри разработке базы данных создаем три таблицы:Главная таблица – «Пробеги» будет хранить данные по маршрутам движения. Таблица «Автомобили» будет хранить данные по имеющимся автомобилям. Таблица «Водители» будет хранить данные по водителям АТП. Таблица «Автомобили»:Госномер автомобиляТекстовый (112 символов)МаркаТекстовый (20 символов)Год изготовленияЦелое числоМарка топливаТекстовый (20 символов)ГрузоподъемностьЦелое числоТаблица «Водители»: Код водителясчетчикФИОТекстовый (100 символов)Дата рожденияДатаСтажЦелое числоКатегория «А»ЛогическоеКатегория «В»ЛогическоеКатегория «C»ЛогическоеКатегория «D»ЛогическоеКатегория «E»ЛогическоеТаблица «Пробеги»: Код маршрутасчетчикИсходный пунктТекстовый (100 символов)Конечный пунктТекстовый (100 символов)РасстояниеЦелое числоАвтомобильТекстовый (10 символов)ВодительЦелое число152019097155Госномер автомобиля148717097155Код маршрутаКод водителяМаркаИсходный пунктФИОГод изготовленияКонечный пунктДата рожденияМарка топливаРасстояниеСтажГрузоподъемностьАвтомобильКатегория «А»ВодительКатегория «В»Категория «C»Категория «D»Категория «E»Для каждой таблицы определим ключ. Ключ – это одно или группа полей, которые однозначно идентифицируют любую строку (запись) в таблице. Все значения ключа в таблице для каждой строки уникальны. Для таблицы «Пробеги» ключом будет поле «Код маршрута» с типом данных счетчик, который автоматически назначает для поля целые числовые значения 1, 2, 3 и т.д. У других таблиц ключи назначаются по аналогии с таблицей «Пробеги». 2.2. Доказательство того, что все отношения (таблицы) находятся в 1-ой, 2-ой и 3-ей нормальных формахДля того чтобы таблица считалась нормализованной к первой нормальной форме, каждое из ее полей должно быть неделимым (атомарным) и таблица не должна содержать никаких повторяющихся групп полей. Первой нормальной форме удовлетворяют все таблицыДля того чтобы привести таблицу ко второй нормальной форме, нужно, чтобы она удовлетворяла первой нормальной форме и, чтобы все неключевые поля полностью зависели от первичного ключа таблицы и от каждого поля в первичном ключе, если последний состоит из нескольких полей. Это значит, что каждое неключевое поле должно уникально определяться первичным ключом и полями, его составляющими.Второй нормальной форме удовлетворяют все таблицы.Для того чтобы таблица была приведена к третьей нормальной форме, нужно, чтобы она удовлетворяла второй нормальной форме и все неключевые поля полностью зависели от первичного ключа таблицы и не зависели друг от друга. Таким образом, к квалификации второй нормальной формы добавляется требование независимости каждого неключевого поля таблицы от других неключевых полей. Нужно исключить из таблицы также поля, которые можно вычислить по другим неключевым полям таблицы.В нашем случае третьей нормальной форме удовлетворяют все таблицы.2.3. Разработка базы данныхСоздаем новую базу данных «АТП».С помощью конструктора таблиц создаем таблицу «Автомобили»:С помощью конструктора таблиц создаем таблицу «Водители»:С помощью конструктора таблиц создаем таблицу «Пробеги»:Поля Автомобили, Водители таблицы «Пробеги» создаем с помощью Мастера подстановкиСоздаем связи между таблицами:Заполняем таблицы содержимым:АвтомобилиКод автомобиляГосномерМаркаГод изготовленияМарка топливаГрузоподъемность6А 134 ВН 99МАЗ2005ДТ207В 112 НМ 99Камаз2008ДТ108К 786 ОТ 99ГАЗ-532009АИ-9279Н 768 НМ 99КАМАЗ2002ДТ1010Р 627 МО 99Зил2006АИ-92711С 852 ХВ 99Газель2019АИ-925ВодителиКод водителяФИОДата рожденияСтажКатегория «A»Категория «B»Категория «C»Категория «D»Категория «E»21Волков Любовь Богуславович04.04.197922ИстинаИстинаИстинаИстинаИстина22Красильников Юстиниан Валерьянович13ЛожьИстинаИстинаЛожьЛожь23Пестов Мирослав Германович07.09.198017ЛожьИстинаИстинаИстинаИстина24Самсонов Адриан Давидович20.07.197228ИстинаИстинаИстинаЛожьИстина25Туров Лука Георгиевич27ЛожьИстинаИстинаЛожьЛожьПробегиКод маршрутаДатаИсходный пунктКонечный пунктРасстояниеАвтомобильВодитель3312.05.2021МоскваТула170К 786 ОТ 99Пестов Мирослав Германович3414.06.2021ЛюберцыМожайск120К 786 ОТ 99Самсонов Адриан Давидович3524.06.2021МоскваСаратов900А 134 ВН 99Волков Любовь Богуславович3627.06.2021МоскваСанкт-Петербург700С 852 ХВ 99Самсонов Адриан Давидович3729.06.2021ЗвенигородСанкт-Петербург750В 112 НМ 99Волков Любовь Богуславович3811.07.2021ЛюберцыОренбург1450Н 768 НМ 99Волков Любовь Богуславович3911.07.2021ЗеленодольскСмоленск400К 786 ОТ 99Красильников Юстиниан Валерьянович4012.07.2021ЗеленодольскСаратов850Н 768 НМ 99Туров Лука Георгиевич4118.07.2021ЗвенигородОренбург1400Н 768 НМ 99Самсонов Адриан Давидович4231.07.2021ЛюберцыОренбург1450А 134 ВН 99Самсонов Адриан Давидович4301.08.2021КрасногорскСамара1000А 134 ВН 99Туров Лука Георгиевич4414.08.2021ЛюберцыСмоленск450С 852 ХВ 99Пестов Мирослав Германович4515.08.2021ЗвенигородСамара950В 112 НМ 99Самсонов Адриан Давидович4625.08.2021ХимкиТула180С 852 ХВ 99Волков Любовь Богуславович4706.09.2021ЗеленодольскСаратов850В 112 НМ 99Пестов Мирослав Германович4806.09.2021КрасногорскОренбург1400В 112 НМ 99Туров Лука Георгиевич4907.09.2021ЗвенигородКиров950К 786 ОТ 99Туров Лука Георгиевич5011.09.2021МоскваКиров1000Н 768 НМ 99Красильников Юстиниан Валерьянович5111.09.2021КрасногорскСамара1000Р 627 МО 99Пестов Мирослав Германович5221.09.2021МоскваТула180Р 627 МО 99Красильников Юстиниан Валерьянович5325.09.2021ХимкиСанкт-Петербург650К 786 ОТ 99Волков Любовь Богуславович5428.09.2021МоскваКиров1000А 134 ВН 99Пестов Мирослав Германович5529.09.2021КрасногорскТула230С 852 ХВ 99Туров Лука Георгиевич5603.10.2021ХимкиКиров1000Н 768 НМ 99Пестов Мирослав Германович5703.10.2021ЗеленодольскТула230Р 627 МО 99Туров Лука Георгиевич5810.10.2021ЛюберцыСмоленск450К 786 ОТ 99Пестов Мирослав Германович5912.10.2021ХимкиСамара950А 134 ВН 99Красильников Юстиниан Валерьянович6028.10.2021КрасногорскСмоленск450В 112 НМ 99Красильников Юстиниан Валерьянович2.4. Создание запросов1) Определим стоимость маршрута исходя их стоимости 10 р за кмСоздадим запросы с помощью конструктора. Запускаем Конструктор запросов. Добавим таблицу «Пробеги», «Автомобили» Запускаем запрос и получим данные:СтоимостьМаркаГосномерИсходный пунктКонечный пунктРасстояниеСтоимостьМАЗА 134 ВН 99ХимкиСамара9509500МАЗА 134 ВН 99МоскваСаратов9009000МАЗА 134 ВН 99ЛюберцыОренбург145014500МАЗА 134 ВН 99КрасногорскСамара100010000МАЗА 134 ВН 99МоскваКиров100010000КамазВ 112 НМ 99КрасногорскСмоленск4504500КамазВ 112 НМ 99ЗвенигородСанкт-Петербург7507500КамазВ 112 НМ 99ЗвенигородСамара9509500КамазВ 112 НМ 99ЗеленодольскСаратов8508500КамазВ 112 НМ 99КрасногорскОренбург140014000ГАЗ-53К 786 ОТ 99ЛюберцыСмоленск4504500ГАЗ-53К 786 ОТ 99МоскваТула1701700ГАЗ-53К 786 ОТ 99ЛюберцыМожайск1201200ГАЗ-53К 786 ОТ 99ЗеленодольскСмоленск4004000ГАЗ-53К 786 ОТ 99ЗвенигородКиров9509500ГАЗ-53К 786 ОТ 99ХимкиСанкт-Петербург6506500КАМАЗН 768 НМ 99ХимкиКиров100010000КАМАЗН 768 НМ 99ЛюберцыОренбург145014500КАМАЗН 768 НМ 99ЗеленодольскСаратов8508500КАМАЗН 768 НМ 99ЗвенигородОренбург140014000КАМАЗН 768 НМ 99МоскваКиров100010000ЗилР 627 МО 99ЗеленодольскТула2302300ЗилР 627 МО 99КрасногорскСамара100010000ЗилР 627 МО 99МоскваТула1801800ГазельС 852 ХВ 99КрасногорскТула2302300ГазельС 852 ХВ 99МоскваСанкт-Петербург7007000ГазельС 852 ХВ 99ЛюберцыСмоленск4504500ГазельС 852 ХВ 99ХимкиТула18018002) Определим сумму оплаты на каждого водителя, исходя из того, что водителя выплачивается 15% от стоимости перевозки;Создадим запросы с помощью конструктора. Запускаем Конструктор запросов. Добавим таблицу «Водитель», «Автомобили», «Пробеги».Запускаем запрос и получаем результатОплата водителямФИОРасстояниеОплатаВолков Любовь Богуславович180270,00р.Волков Любовь Богуславович650975,00р.Волков Любовь Богуславович7501 125,00р.Волков Любовь Богуславович9001 350,00р.Волков Любовь Богуславович14502 175,00р.Красильников Юстиниан Валерьянович180270,00р.Красильников Юстиниан Валерьянович400600,00р.Красильников Юстиниан Валерьянович450675,00р.Красильников Юстиниан Валерьянович9501 425,00р.Красильников Юстиниан Валерьянович10001 500,00р.Пестов Мирослав Германович170255,00р.Пестов Мирослав Германович4501 350,00р.Пестов Мирослав Германович8501 275,00р.Пестов Мирослав Германович10004 500,00р.Самсонов Адриан Давидович120180,00р.Самсонов Адриан Давидович7001 050,00р.Самсонов Адриан Давидович9501 425,00р.Самсонов Адриан Давидович14002 100,00р.Самсонов Адриан Давидович14502 175,00р.Туров Лука Георгиевич230690,00р.Туров Лука Георгиевич8501 275,00р.Туров Лука Георгиевич9501 425,00р.Туров Лука Георгиевич10001 500,00р.Туров Лука Георгиевич14002 100,00р.2.5. Создание отчетовОтчет — это гибкое и эффективное средство для организации данных при выводе на печать. С помощью отчета имеется возможность вывести необходимые сведения в том виде, в котором требуется.Основные сведения в отчете берется из базовой таблицы, запроса или инструкции SQL, являющихся источниками данных для отчета. Другие сведения вводятся при разработке отчета. Для создания связи между отчетом и его источником данных применяются элементы управления (так же, как в формах). Такими элементами могут быть поля, надписи, линии или другие графические объекты.Создаем отчет «Прием» с помощью мастера для запроса отчетов.Переходим в окне базы данных на закладку «Отчеты» и нажимаем кнопку «Создание отчета с помощью мастера». Указываем – какие поля таблицы будут использованы в отчете:Создаем отчет по приему:Получаем нужный отчет2.6. Создание форм.Формы – объекты в виде диалоговых окон, которые используются для различных целей:ввод данных в таблицу;специальные диалоговые окна с различными элементами управления для выбора пользователем различных режимов работы;кнопочная форма – для запуска других форм, отчетов, макросов, программ и т.д.Формы создаются пользователем для нужд конкретной БД по своему усмотрению. При этом можно использовать как «Мастер форм» (предпочтительно) или «Конструктор форм» (только для профессионалов). Рациональная стратегия создания форм состоит в следующем: с помощью «Мастера форм» создается типовая по дизайну форма, а затем в «Конструкторе форм» вручную улучшается.Форму для таблицы «Склад» создаём с помощью «Мастера форм»:В окне БД переходим на закладку «Формы»Нажмем кнопку «Создание формы в режиме мастера»Получаем формуСоздаем формы и для других таблицС помощью надстройки «Диспетчер кнопочных форм» автоматически создается удобная и функциональная форма, для выполнения основных действий с БД. На кнопочную панель помещаются кнопки, при нажатии которых открываются формы или отчеты (или открываются другие кнопочные формы, с помощью которых открываются другие формы или отчеты), осуществляется выход из Microsoft Access или изменяется сама кнопочная форма. Создаем управляющую форму.Открываем вкладку Формы. Нажимаем кнопку «Создание формы с помощью конструктора».В открывшейся форме устанавливаем кнопку, привязываем к кнопке макрос открытия формы по вводу сведений о рабочих. Аналогично устанавливаем кнопки открытия форм для ввода сведений по другим таблицам. Создаем кнопки и привязываем к кнопкам макросы открытия отчетов.Создаем последнюю кнопку и привязываем к ней макрос закрытия текущей формы.Теперь настроим параметры запуска базы данных. Параметры запуска – MS Access имеет возможность управления запуском базы данных. Пользователь может указать, какую форму следует открыть при запуске, разрешается ли изменять панели инструментов, а также являются ли доступными контекстные меню.Выбираем в меню «Файл» команду «Параметры» и вводим требуемые значения.Для того чтобы обойти настройки параметров запуска, следует открывать базу данных, удерживая нажатой клавишу Shift.Мы настроили свою БД таким образом, чтобы при ее запуске сразу же стартовала, созданная нами кнопочная форма.ЗаключениеОбъектно-ориентированное программирование является в настоящее время основой всей индустрии прикладного программирования благодаря выигрышу в конкурентной борьбе с альтернативными технологиями программирования. Нельзя считать, что объектно-ориентированное программирование во всех случаях является наилучшей из методик программирования. Процедурное программирование лучше подходит для случаев, когда важны быстродействие и потребляемые ресурсы, объектное – когда важна управляемость проекта и его модифицируемость, а также безопасность программ. Процедурное программирование обычно лучше подходит для небольших проектов, объектное – для больших. Список литературыАнтони Синтес Освой самостоятельно объектно-ориентированное программирование за 21 день = Sams Teach Yourself Object-Oriented Programming in 21 Days. — М.: «Вильямс», 2002. — С. 672. — ISBN 0-672-32109-2Грэди Буч Объектно-ориентированный анализ и проектирование с примерами приложений на С++ = Object-Oriented Analysis and Design with Applications / Пер. И.Романовский, Ф.Андреев. — 2-е изд. — М., СПб.: «Бином», «Невский диалект», 1998. — С. 276—278. — 560 с. — 6000 экз. — ISBN 5-7989-0067-3Иан Грэхем Объектно-ориентированные методы. Принципы и практика = Object-Oriented Methods: Principles & Practice. — 3-е изд. — М.: «Вильямс», 2004. — С. 880. — ISBN 0-201-61913-XТимоти Бадд Объектно-ориентированное программирование в действии = An Introduction to Object-Oriented Programming. — СПб.: «Питер», 1997. — 464 с. — (В действии). — 6000 экз. — ISBN 5-88782-270-8


Нет нужной работы в каталоге?

Сделайте индивидуальный заказ на нашем сервисе. Там эксперты помогают с учебой без посредников Разместите задание – сайт бесплатно отправит его исполнителя, и они предложат цены.

Цены ниже, чем в агентствах и у конкурентов

Вы работаете с экспертами напрямую. Поэтому стоимость работ приятно вас удивит

Бесплатные доработки и консультации

Исполнитель внесет нужные правки в работу по вашему требованию без доплат. Корректировки в максимально короткие сроки

Гарантируем возврат

Если работа вас не устроит – мы вернем 100% суммы заказа

Техподдержка 7 дней в неделю

Наши менеджеры всегда на связи и оперативно решат любую проблему

Строгий отбор экспертов

К работе допускаются только проверенные специалисты с высшим образованием. Проверяем диплом на оценки «хорошо» и «отлично»

1 000 +
Новых работ ежедневно
computer

Требуются доработки?
Они включены в стоимость работы

Работы выполняют эксперты в своём деле. Они ценят свою репутацию, поэтому результат выполненной работы гарантирован

avatar
Математика
История
Экономика
icon
159599
рейтинг
icon
3275
работ сдано
icon
1404
отзывов
avatar
Математика
Физика
История
icon
156450
рейтинг
icon
6068
работ сдано
icon
2737
отзывов
avatar
Химия
Экономика
Биология
icon
105734
рейтинг
icon
2110
работ сдано
icon
1318
отзывов
avatar
Высшая математика
Информатика
Геодезия
icon
62710
рейтинг
icon
1046
работ сдано
icon
598
отзывов
Отзывы студентов о нашей работе
54 132 оценки star star star star star
среднее 4.9 из 5
ТюмГУ
Спасибо большое за курсовую работу!! Оригинальность 75%, оценка отлично
star star star star star
СПбГУ
Очень грамотное написание курсовой, видно, что исполнитель разбирается в теме работы и пиш...
star star star star star
РЭУ им.Плеханова
Благодарю Евгению за выполнение работы,оценка-отлично.Сделано -все как положено,грамотно и...
star star star star star

Последние размещённые задания

Ежедневно эксперты готовы работать над 1000 заданиями. Контролируйте процесс написания работы в режиме онлайн

Подогнать готовую курсовую под СТО

Курсовая, не знаю

Срок сдачи к 7 дек.

только что
только что

Выполнить задания

Другое, Товароведение

Срок сдачи к 6 дек.

1 минуту назад

Архитектура и организация конфигурации памяти вычислительной системы

Лабораторная, Архитектура средств вычислительной техники

Срок сдачи к 12 дек.

1 минуту назад

Организации профилактики травматизма в спортивных секциях в общеобразовательной школе

Курсовая, профилактики травматизма, медицина

Срок сдачи к 5 дек.

2 минуты назад

краткая характеристика сбербанка анализ тарифов РКО

Отчет по практике, дистанционное банковское обслуживание

Срок сдачи к 5 дек.

2 минуты назад

Исследование методов получения случайных чисел с заданным законом распределения

Лабораторная, Моделирование, математика

Срок сдачи к 10 дек.

4 минуты назад

Проектирование заготовок, получаемых литьем в песчано-глинистые формы

Лабораторная, основы технологии машиностроения

Срок сдачи к 14 дек.

4 минуты назад

2504

Презентация, ММУ одна

Срок сдачи к 7 дек.

6 минут назад

выполнить 3 задачи

Контрольная, Сопротивление материалов

Срок сдачи к 11 дек.

6 минут назад

Вам необходимо выбрать модель медиастратегии

Другое, Медиапланирование, реклама, маркетинг

Срок сдачи к 7 дек.

7 минут назад

Ответить на задания

Решение задач, Цифровизация процессов управления, информатика, программирование

Срок сдачи к 20 дек.

7 минут назад
8 минут назад

Все на фото

Курсовая, Землеустройство

Срок сдачи к 12 дек.

9 минут назад

Разработка веб-информационной системы для автоматизации складских операций компании Hoff

Диплом, Логистические системы, логистика, информатика, программирование, теория автоматического управления

Срок сдачи к 1 мар.

10 минут назад
11 минут назад

перевод текста, выполнение упражнений

Перевод с ин. языка, Немецкий язык

Срок сдачи к 7 дек.

11 минут назад
planes planes
Закажи индивидуальную работу за 1 минуту!

Размещенные на сайт контрольные, курсовые и иные категории работ (далее — Работы) и их содержимое предназначены исключительно для ознакомления, без целей коммерческого использования. Все права в отношении Работ и их содержимого принадлежат их законным правообладателям. Любое их использование возможно лишь с согласия законных правообладателей. Администрация сайта не несет ответственности за возможный вред и/или убытки, возникшие в связи с использованием Работ и их содержимого.

«Всё сдал!» — безопасный онлайн-сервис с проверенными экспертами

Используя «Свежую базу РГСР», вы принимаете пользовательское соглашение
и политику обработки персональных данных
Сайт работает по московскому времени:

Вход
Регистрация или
Не нашли, что искали?

Заполните форму и узнайте цену на индивидуальную работу!

Файлы (при наличии)

    это быстро и бесплатно
    Введите ваш e-mail
    Файл с работой придёт вам на почту после оплаты заказа
    Успешно!
    Работа доступна для скачивания 🤗.