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

Объектно-ориентированное программирование (ООП) основная методология программирования 90-х годов

ВНИМАНИЕ! Работа на этой странице представлена для Вашего ознакомления в текстовом (сокращенном) виде. Для того, чтобы получить полностью оформленную работу в формате Word, со всеми сносками, таблицами, рисунками (вместо pic), графиками, приложениями, списком литературы и т.д., необходимо скачать работу.

ВВЕДЕНИЕ

Объектно-ориентированное программирование (ООП) основная методология программирования 90-х годов. Она является продуктом 25 летней практики и включает ряд языков: Simula 67, Smalltalk, Lisp, Clu, Actor, Eiffel, Objective C, C++. Это стиль программирования, который фиксирует поведение реального мира таким способом, при котором детали его реализации скрыты.
Почему ООП так популярно:
• надежда, что ООП может просто и быстро привести к росту продуктивности и улучшению надежности программ, помогая тем самым разрешить кризис в программном обеспечении;
• желание перейти от существующих языков программирования к новой технологии;
• вдохновляющее сходство с идеями, родившимися в других об-ластях.
ООП является лишь последним звеном в длиной цепи решений, которые были предложены для разрешения "кризиса программного обеспечения". Кризис программного обеспечения означает, что те задачи, которые мы хотим решить, опережают наши возможности.
Несмотря на то, что ООП действительно помогает в проектирова-нии сложных и больших программ, ООП не панацея. Чтобы стать профес-сионалом в программировании, необходим талант, способность к творчеству, интеллект, знания, логика, умение строить и использовать абстракции и опыт, даже, если используются лучшие средства разработки. ООП является новым понимание того, что называется вычислениями. Чтобы стать профессионалом в ООП, недостаточно просто добавить новые знания, необходимо полная переоценка привычных методов разработки программ.

ГЛАВА 1 ОБЪЕКТНО – ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ

1.1 Язык и мышление

Язык, на котором мы говорим, непосредственно влияет на способ восприятия мира. Это касается не только естественных языков, но и для ис-кусственных языков - языков программирования. Чтобы эффективно использовать ООП требуется глядеть на мир иным способом, не как с точки зрения структурных языков. Само по себе использование С++ не делает программу ООП. "Программа фортрановского типа " может быть написана на любом языке".
Гипотеза Сапиро-Ворфа утверждает, что индивидуум, использую-щий некоторый язык, в состоянии вообразить или придумать нечто, что не может быть переведенным или даже понятым индивидуумом из другой языковой среды. Существует и прямо противоположная концепция: принцип Черча:
Любое вычисление, для которого существует эффективная процедура, может быть реализовано на машине Тьюринга.
Это утверждение не доказуемо, поскольку не имеется строго опре-деления "эффективная процедура". Но не найдено опровержения этого принципа.
В 1960-х годах было показано, что машина Тьюринга может быть смоделирована на любом языке, где есть условный оператор и оператор циклов. (Отсюда создалось утверждение, что оператор goto не нужен). Принцип Черча утверждает, что по своей сути все языки программирования идентичны. Но объектно-ориентированный подход решает проблему проще, приближая решение к естественному восприятию.

1.2 Новая парадигма

ООП часто называют новой парадигмой программирования. Другие парадигмы: директивная (структурное программирование - Pascal, C), логическая - Prolog, функциональное - Lisp, Effel. Парадигмы в программировании определяют как проводить вычисления, как работа, выполняемая компьютером должна быть структурирована и организована.
Новички в информатике часто могут освоить парадигму лучше, чем опытные профессионалы, так как этот способ решения задач ближе к естественному восприятию.
Рассмотрим ситуацию из обыденной жизни. Например, Вам надо сообщить поздравить своего родственника, живущего в другом городе с днем рождения. Для это Вы идете на почту и посылаете телеграмму. Вы сообщаете оператору, что хотите переслать данный текст по некоторому адресу. И Вы можете быть уверены, что ваше поздравление попадет по нужному адресу.
Итак, для решения своей проблемы Вы нашли агента (почту) и передали ему сообщение, содержащее запрос. Обязанностью почты (или работников почты) будет удовлетворить Ваш запрос любым известным только им способом. Вас совершенно не интересует каким именно. Имеется некий метод - т.е. алгоритм, или последовательность операций, которые используют почтовые работники для выполнения запроса. Вам не надо знать какой конкретно метод используется.
Итак, первым принципом ОО подхода к решению задачи является способ задания действий.
Действие в ООП инициируется посредством передачи сообщений агенту (объекту), ответственному за действия. Сообщение содержит запрос на осуществление действия и сопровождается дополнительной ин-формацией (аргументами), необходимой для его выполнения. Получатель - это агент, посылается сообщение. Если он принимает сообщение, то на него автоматически возлагается ответственность за выполнение указанного действия. В качестве реакции на сообщение получатель запустит некоторый метод, чтобы удовлетворить принятый запрос.
Скрытие информации является важным принципом и в традицион-ных языках программирования. Чем же пересылка сообщения отличается в ООП и в традиционных подходах.
Первое отличие состоит в том, что имеется вполне определенный получатель - агент, которому послано сообщение. При вызове процедуры нет столь явно выделенного получателя.
Второе отличие состоит в том, что интерпретация сообщения (а именно метод, вызываемый после приема сообщения) зависит от получателя и является различной для различных получателей. Вы можете попросить своего товарища, летящего в город, где живут ваши родственники, поздравить их, и метод, который он изберет для решения этого запроса будет отличаться от того, который использовали на почте. Хотя родственники будут поздравлены. Если же Вы попросите коменданта общежития поздравить Ваших родственников, то у нее вероятно вообще не найдется метода для решения этой задачи, а если она и примет сообщение, то выдаст диагностическое сообщение об ошибке.
Таким образом, различие между вызовом процедуры и пересылкой сообщения состоит в том, что в последнем случае существует определенный получатель и интерпретация (т.е. выбор подходящего метода, который запускается в ответ на сообщение) может быть различной для различных получателей. Обычно конкретный получатель неизвестен вплоть до выполнения программы, и , следовательно, не известен какой метод будет вызван. В таком случае говорят, что имеет место позднее связывание между сообщением и методом, который вызывается в ответ на это сообщение. Эта ситуация противопоставляется раннему связыванию на стадиях компоновки, присущих традиционному программированию.
Фундаментальной концепцией в ООП является понятие обязанно-сти или ответственности за выполнение действий. Ваш запрос на поздрав-ление родственников выражает лишь желаемый результат. Почта вольна сама выбирать средство для удовлетворения этого запроса. Полный набор обязанностей, связанных с определенным объектом называют протоколом.
Различие между взглядом структурного подхода и ООП можно выразить как
Мы можем рассматривать почту как некоторое средство связи. Объединим в средства связи все, что позволяет связываться. Эта операция является вторым принципом ООП:
Все объекты являются представителями, или экземплярами, клас-сов. Метод активизируемый объектом в ответ на сообщение, определяется классом, к которому принадлежит получатель сообщения. Все объекты одного класса используют одни и те же методы в ответ на одинаковые сообщения.

Рис.1 Весь мир - это объекты, которые передают друг другу сообщения

О почте Вы знаете, больше, чем-то, что нужно, чтобы сделать за-прос. Вы знаете, что у Вас попросят деньги, что Вам выдадут квитанцию. Все это справедливо и для магазинов, ресторанов. Поскольку категория Post более узкая, чем Service , то любое знание, которым Вы обладаете для категории Service будет справедливо и для Post.
Работников почты можно представить в виде, например, такой ие-рархии категорий. Работник почты - это продавец услуг, продавец услуг - это просто продавец, продавец - это человек, человек - это млекопитающее, млекопитающее - это животное, животное - это материальные объекты.
Принцип, в соответствии с которым знание о более общей категории разре-шается использовать для более узкой категории, называется наследованием.
Классы могут быть организованы в иерархическую структуру с на-следованием свойств. Дочерний класс (или подкласс) наследует атрибуты родительского класса (или надкласса), расположенного выше в иерархиче-ском дереве.

Рис. 2. Иерархическое дерево.
Утконос представляет проблему для структуры на рис. 2. Утконос млекопитающее, но откладывает яйца, следовательно, необходимо переопределить способ рождения. Таким образом, необходимо разрешать переопределять информацию, наследуемую из родительских классов. Для поиска метода, подходящего для обработки сообщения, используется следующее правило.
Поиск метода, который вызывается в ответ на определенное со-общение, начинается с методов, принадлежащих классу получателя. Если подходящий метод не найден, то поиск продолжается для родительского класса. Поиск продвигается вверх по цепочке родительских классов до тех пор, пока не будет найден нужный метод или пока не будет исчерпана по-следовательность родительских классов. В первом случае выполняется найденный метод, во втором - выдается сообщение об ошибке. Если выше в иерархии классов существуют методы с тем же именем, что и текущий, то говорят, что данный метод переопределяет наследуемое поведение.
Тот факт, что Ваш друг студент и оператор почты будет реагиро-вать по разному на просьбу поздравить родственников, является признаком полиморфизма.

1.3 Характеристики ООП

1. Все является объектом.
2. Вычисления осуществляются путем взаимодействия (обмена данными) между объектами, при котором один объект требует, чтобы другой объект выполнил некое действие. Объекты взаимодействуют, посылая и получая сообщения. Сообщения - это запрос на выполнение действия, дополненный набором аргументов, которые могут понадобиться при выполнении действия.
3. Каждый объект имеет независимую память, которая состоит из других объектов.
4. Каждый объект является представителем класса, который выра-жает общие свойства объектов.
5. В классе задается поведение (функциональность) объекта. Тем самым все объекты, которые являются экземплярами одного класса, могут выполнять одни и те же действия.
6. Классы организованы в единую древовидную структуру с общим корнем, называемую иерархией наследования. Память и поведение, связанное с экземплярами определенного класса, автоматически доступны любому классу, расположенному ниже в иерархическом дереве.
Вычисление и моделирование
Традиционная модель, описывающая выполнение программы на компьютере, базируется на дуализме - процесс-состояние. С этой точки зре-ния компьютер является администратором данных, следующим некоторому набору инструкций. В рамках ООП мы никогда не поминаем адреса ячеек памяти, переменные, присваивания.
Вместо процессора, который перемалывает биты и шарит по карманам структур данных, мы получаем вселенную благовоспитанных объектов, которые любезно просят друг друга о выполнении тех или иных своих желаний. При ООП мы считаем, что вычисление есть моделирование.
Конечно, объекты не могут во всех случаях реагировать на сообщение только тем, что вежливо обращаются друг к другу с просьбой выполнить некоторое действие. Это приведет к бесконечному циклу запросов, аналогично тому, как два джентльмена так и не вошли в дверь, уступая друг другу дорогу. На некоторой стадии объекты должны выполнять некоторые действия перед пересылкой запросов другим объектам.
Сложность
На заре информатики большинство программ писалось на ассемб-лере, затем с увеличением сложности задач стало невозможным помнить обо всех состояниях регистров, стеков и т.д. Появились такие языки как Fortran, Cobol. По мере дальнейшего развития методов программирования было замечено, что ту задачу, которую программист решает за один месяц, два программиста не решают за 1 месяц. "Рождение ребенка занимает 9 месяцев независимо, сколько женщин занято этим".
При традиционном подходе сложность программы усложняется большим числом перекрестных ссылок. Перекрестные ссылки обозначают зависимость одного фрагмента кода от другого. Даже самый независимый фрагмент кода часто невозможно понять в изоляции от других.
Главный механизм борьбы со сложностью - это абстрагирование, т.е. спо-собность отделить логический смысл фрагмента программы от проблемы его реализации. От процедур к модулям, далее к абстрактным данным и, наконец, к объектам.
Процедуры и функции были первыми механизмами абстрагирова-ния, примененными в языках программирования. Процедуры позволяют сконцентрировать в одном месте работу, которая выполняется многократно, а затем многократно использовать этот код. Кроме того, процедуры обеспечили возможность маскировки информации. Программист мог написать процедуру, которое используют другие программисты, не вдаваясь в детали. Но они не решали всех проблем: нет эффективного механизма маскировки деталей организации данных.
Данные должны содержаться в глобальных переменных. Однако, если переменные глобальные нет способа ограничить доступ к ним или их видимость. Если имя переменной datastack, об этом должны знать все про-граммисты, чтобы не создать переменные с таким именем. Переменные с таким именем запрещены, даже если они больше нигде не используются.
Модули можно рассматривать как улучшенный метод создания и управления совокупности имен и связанными с ними значениями. Если рассматривать модуль как абстрактную концепцию, то ее суть состоит в разбиении пространства имен на две части. Открытая (public) часть является доступной извне модуля, закрытая (private) часть доступна только внутри модуля. Типы, данные и процедуры могут быть к любому из этих двух частей.
1. Пользователя, который намеривается использовать модуль, сле-дует снабдить всей информацией, необходимой, чтобы делать это корректно, и не более того.
2. Разработчика следует снабдить всей информацией, необходимой для создания модуля, и не более того.
Модули решают некоторые, но не все проблемы разработки про-граммного обеспечения. Например, если захочется иметь два экземпляра стека. Механизм модуля, позволяя маскировать данные, не позволяет размножать экземпляры.
Абстрактный тип данных задается программистом. С данными абстрактного типа можно манипулировать так же, как и сданными типов, встроенных в систему. Пользователю разрешается создавать переменные, которые принимают значения из допустимого множества, и манипулировать ими, использовать имеющиеся операции. Чтобы построить абстрактный тип данных, мы должны иметь:
1. Экспортировать определение типа данных
2. Делать доступным набор операций, использующихся для мани-пулирования экземплярами типа данных.
3. Защищать данные, связанные с типом данных, чтобы с ними можно было работать только через указанные подпрограммы.
4. Создавать несколько экземпляров абстрактного типа данных.
Объекты - это почти абстрактный тип данных, но дополненный не-которыми новшествами.
ООП добавляет идеи к абстрактному типу данных. Главная из них - пересылка сообщений. Действие инициируется по запросу, обращенному к конкретному объекту, а не через вызов функции. К пересылки сообщения добавляется переопределение имен и совместного/многократного использования кода.
Интерпретация сообщений меняется для различных объектов.
Добавляется механизмы наследования и полиморфизма. Наследование позволяет различным типам данных совместно использовать один и тот же код, приводя к уменьшению его размера и повышению функциональности. Полиморфизм обеспечивает, чтобы общий код удовлетворял конкретным особенностям отдельных типов данных. Люди строят дома, машины, самолеты, собирая из отдельных деталей, не изготовляя заново для каждого отдельного случая. Можно ли сконструировать ПО таким же образом? Многократное использование - это цель, к которой все стремятся, но редко достигают. ООП обеспечивает механизм для отделения существенной информации от специализированной (например, конкретный формат данных).
ЗАКЛЮЧЕНИЕ

ООП - это не просто набор некоторых свойств, добавленных в уже существующие языки. Это новый шаг в осмыслении задач и разработки ПО.
Программы - это совокупность взаимодействующих объектов. Каждый объ-ект отвечает за конкретную задачу. Вычисление осуществляется посредством взаимодействия объектов. Объект получается в результате инкапсуляции состояния (данных) и поведения (операций), во многом аналогично абстрактному типу данных - АТД. Поведение объекта диктуется классом. Данные и поведение представлены в виде классов, экземпляры которых - объекты. Все экземпляры одного класса будут вести себя одинаковым образом в ответ на одинаковые запросы.
Объект проявляет свое поведение путем вызова метода в ответ на сообщение. Интерпретация сообщения зависит от объекта и может быть различной для различных классов объектов.
Для удобства создания нового типа из уже существующих типов, определенных пользователем используется механизм наследования. Классы могут быть организованы в виде иерархического дерева наследования.
С помощью уменьшения взаимозависимости ООП позволяет разрабатывать системы, пригодные для многократного использования.
ООП - это взгляд на программирование, сосредоточенный на дан-ных; в котором данные и поведение жестко связаны. Для этого необходимо, чтобы объекты определялись вместе с сообщениями, на которые они могут реагировать.
Объектно-ориентированная парадигма предлагает новый подход к разработке программного обеспечения. Фундаментальная концепция объектно-ориентированной парадигмы состоит в передаче сообщений объектам.
Таким образом, Объектно-ориентированный язык должен обладать свойст-вами абстракции, инкапсуляции, наследования и полиморфизма.
1. Инкапсуляция с сокрытием данных - способность отличать внут-реннее состояние объекта и поведение от его внешнего состояния и поведе-ния
2. Абстракция - расширяемость типов - способность добавлять ти-пы, определяемые пользователем для того, чтобы дополнить ими встроенные типы. Один из принципов ООП заключается в том, чтобы типы, определяемые пользователем, должны обладать теми же привилегиями, что и встроенные типы.
3. Наследование - способность создавать новые типы, повторно ис-пользуя, описание существующих типов.
4. Полиморфизм с динамическим (поздним) связыванием - способ-ность объектов быть ответственными за интерпретацию вызова функции
Принципы Объектно-ориентированного подхода:
1. Действие в объектно-ориентированном программировании ини-циируется посредством передачи сообщений объекту. Сообщение содержит запрос на осуществление действия. В качестве реакции на сообщение полу-чатель запустит некоторый метод, чтобы удовлетворить принятый запрос.
2. Все объекты являются экземплярами, классов. Все объекты одного класса используют одни и те же методы в ответ на одинаковые сообщения.
3. Принцип наследования. Классы могут быть организованы в ие-рархическую структуру с наследованием свойств. Дочерний класс наследует атрибуты родительского класса.
4. Принцип полиморфизма. Объекты реагируют на одно и тоже со-общение строго специфичным для них образом.

ГЛАВА 2 ПРАКТИЧЕСКАЯ ЧАСТЬ

2.1. Общая характеристика задачи

Используя ППП на ПК, необходимо построить таблицы по приве-денным ниже формам. Для получения значений итоговых граф в таблицах на рис. №1 и №2 используйте расчетную формулу: гр.5 = гр.3-гр.4.
Заполните таблицу рис. №3 числовыми данными, выполнив консолидацию по расположению.
Введите текущее значение между таблицей и ее названием.
По данным таблицы на рис. №3 постройте гистограмму с заголов-ком, названием осей координат и легендой.
2. Проектирование форм выходных документов и графическое представ-ление данных по выбранной задаче:


лицево-го счета Ф.И.О.
Сумма при-читающ.
премии, руб. Удержания по испол.
докумен-там, руб. выплаче-но пен-
сионеру, руб.
1 2 3 4 5
И1212 Иванов А.А. 900 125
А1245 Антонов С.С. 1200 200
П1268 Петров И.И. 560 25
Д1378 Дубровицкий И.С. 456
С1577 Сидорчук А.В. 304 100

Рисунок №1.Свод лицевых счетов пенсионеров за январь.


лицевого счета Ф.И.О.
Сумма при-читающ.
премии, руб. Удержания по испол.
документам, руб. выплачено пен-
сионеру, руб.
1 2 3 4 5
И1212 Иванов А.А. 950 130
А1245 Антонов С.С. 1250 210
П1268 Петров И.И. 610 30
Д1378 Дубровицкий И.С. 506 5
С1577 Сидорчук А.В. 374 100
Рисунок №2. Свод лицевых счетов пенсионеров за февраль.


лицево-го счета Ф.И.О.
Сумма при-читающ.
премии, руб. Удержания по испол.
докумен-там, руб. выплаче-но пен-
сионеру, руб.
1 2 3 4 5
И1212 Иванов А.А.
А1245 Антонов С.С.
П1268 Петров И.И.
Д1378 Дубровицкий И.С.
С1577 Сидорчук А.В.

Рисунок №3. Свод лицевых счетов пенсионеров за январь и февраль.

2.2 Описание алгоритма решения задачи.


лицевого счета Ф.И.О.
Сумма при-читающ.
премии, руб. Удержания по испол.
документам, руб. выплачено пен-
сионеру, руб.
1 2 3 4 5
И1212 Иванов А.А. 900 125 =C4-D4
А1245 Антонов С.С. 1200 200 =C5-D5
П1268 Петров И.И. 560 25 =C6-D6
Д1378 Дубровицкий И.С. 456 =C7-D7
С1577 Сидорчук А.В. 304 100 =C8-D8
Рисунок №1.Свод лицевых счетов пенсионеров за январь.


лицевого счета Ф.И.О.
Сумма при-читающ.
премии, руб. Удержания по испол.
документам, руб. выплачено пен-
сионеру, руб.
1 2 3 4 5
И1212 Иванов А.А. 950 130 =C13-D13
А1245 Антонов С.С. 1250 210 =C14-D14
П1268 Петров И.И. 610 30 =C15-D15
Д1378 Дубровицкий И.С. 506 5 =C16-D16
С1577 Сидорчук А.В. 374 100 =C17-D17

Рисунок №2. Свод лицевых счетов пенсионеров за февраль.


лицево-го счета Ф.И.О.
Сумма при-читающ.
премии, руб. Удержания по испол.
докумен-там, руб. выплаче-но пен-
сионеру, руб.
1 2 3 4 5
И1212 Иванов А.А. =C4+C13 =D4+D13 =C22-D22
А1245 Антонов С.С. =C5+C114 =D5+D14 =C23-D23
П1268 Петров И.И. =C6+C15 =D6+D15 =C24-D24
Д1378 Дубровицкий И.С. =C7+C16 =D7+D16 =C25-D25
С1577 Сидорчук А.В. =C8+C17 =D8+D17 C26-D26

Рисунок №3. Свод лицевых счетов пенсионеров за январь и февраль.


лицево-го счета Ф.И.О.
Сумма при-читающ.
премии, руб. Удержания по испол.
докумен-там, руб. выплаче-но пен-
сионеру, руб.
1 2 3 4 5
И1212 Иванов А.А. 900 125 775
А1245 Антонов С.С. 1200 200 1000
П1268 Петров И.И. 560 25 535
Д1378 Дубровицкий И.С. 456 456
С1577 Сидорчук А.В. 304 100 204
Рисунок №1.Свод лицевых счетов пенсионеров за январь.


лицевого счета Ф.И.О.
Сумма при-читающ.
премии, руб. Удержания по испол.
документам, руб. выплачено пен-
сионеру, руб.
1 2 3 4 5
И1212 Иванов А.А. 950 130 820
А1245 Антонов С.С. 1250 210 1040
П1268 Петров И.И. 610 30 580
Д1378 Дубровицкий И.С. 506 5 501
С1577 Сидорчук А.В. 374 100 274

Рисунок №2. Свод лицевых счетов пенсионеров за февраль.


лицево-го счета Ф.И.О.
Сумма при-читающ.
премии, руб. Удержания по испол.
докумен-там, руб. выплаче-но пен-
сионеру, руб.
1 2 3 4 5
И1212 Иванов А.А. 1850 255 1595
А1245 Антонов С.С. 2450 410 2040
П1268 Петров И.И. 1170 55 1115
Д1378 Дубровицкий И.С. 962 5 957
С1577 Сидорчук А.В. 678 200 478

Рисунок №3. Свод лицевых счетов пенсионеров за январь и февраль.

2.3. Инструкция пользователя

Включение ПК:
1. Нажмите на системном блоке кнопку POWER.
2. Включите монитор.
3. Подождите некоторое время, компьютер загрузится.
4. Введите пароль, если пароль не поставлен, для входа в систему нажмите кнопку Enter.
Работа в Microsoft Access:
5. Для запуска программы MS Access из главного меню Windows нажмите кнопку Пуск и выберите Microsoft Access в меню Программы.
6. В окне Microsoft Access выберите параметр Новая база данных.
7. В открывшемся окне «Файл новой базы данных» в поле Имя файла введите имя создаваемой базы данных.
8. Нажмите кнопку создать. На экране появится окно базы данных, состоящее из восьми вкладок.
9. Выберите вкладку Таблицы в окне База данных. Выберите Соз-дать таблицу в режиме конструктора. Создайте таблицы Таблица, Получа-тель, Основание, Вид оплаты. Используйте для этого данные из вспомога-тельных таблиц (рис.2,3,4,5). Задайте ключевые поля, сохраните таблиц.
10. Для заполнения данными переключитесь в режим таблицы: вы-берите Вид-Режим таблицы. Внесите данные из вспомогательных таблиц (рис. 6,7,8,9).
11. Соединение таблиц базы данных – создание логической связи между таблицами на основе полей, которые имеют общие значения. Связан-ные поля должны иметь одинаковые типы данных и одинаковые значения свойств. Чтобы установить связи необходимо:
- Закрыть все окна таблиц
- Выбрать команду Сервис-Схема данных.
- Выбрать команду Связи-Добавить таблицу. Выберите все табли-цы, нажимая кнопку Добавить. Для того, чтобы связать ,например, поле Получатель из таблицы Таблица с полем Счетчик_получатель из таблицы Получатель необходимо перетащить поле Счетчик_получатель в список полей Таблица на поле с именем Получатель. Аналогично создаются связи с другими таблицами. Структура связей представлена не Рисунке 10.
l) Для создания запроса откройте вкладку Запросы в окне базы данных. Чтобы создать Запрос необходимо:
- Выбрать Создание нового запроса с помощью мастера.
- В окне Создание простых запросов выберите таблицы, поля которых будут составлять запрос. Из таблицы Таблица выберите все поля, кроме поля Основание, Вид оплаты и Получатель. Эти поля выберите из соответствующих таблиц.
- Задайте имя запроса, нажмите кнопку Готово.
m) Для создания формы выберите вкладку Формы окна базы дан-ных.
- В появившемся окне Создание формы выберите созданный запрос, затем все поля этого запроса. Нажмите кнопку Далее.
- В окне Вид представления данных выберите Таблица. Нажмите кнопку Далее.
- Выберите внешний вид формы, нажмите Далее. Выберите стиль формы нажмите Далее.
- Задайте имя формы, нажмите Готово.
- Перед вами появится окно с итоговой формой.
n) Для создания отчетов откройте вкладку Отчеты.
- Аналогично созданию формы выберите необходимые поля для отчетов. В частности для Отчета по получателям необходимо выбрать поля Получатель, Дата, Вид оплаты, Основание, Документ, Сумма, для отчета по видам оплат выберите аналогичные поля.
- В окне добавить уровень группировки выберите для отчета по получателям Получатель, для отчета по видам оплат Вид оплаты.
- Далее задайте порядок сортировки, макет, стиль, имя отчета. На-жмите кнопку Готово. Перед вами появится бланк созданного отчета. Его можно отредактировать в режиме конструктора.
o) Работа в Microsoft Access выполнена.
Работа в Microsoft Excel:
p) Далее необходимо ввести текущее значение даты между табли-цей и ее названием. По данным таблицы построить гистограмму с заголов-ком, названием осей координат и легендой. Для этого необходимо:
- Таблицу Запрос скопировать в Microsoft Excel. Для этого выберите вкладку Запросы. Откройте ваш Запрос. В левом верхнем углу таблицы нажмите кнопку Выделить все. Нажмите Ctrl+Insert. Откройте Microsoft Excel так же, как открывали Microsoft Access. В меню выберите Файл-Создать-Чистая книга. Нажмите Shift+ Insert. Появится таблица запроса.
- в меню выберите Вставка-Диаграммы. Появится окно создания диаграмм. Выберите гистограмму, нажмите далее. Выберите ряды в столб-цах. Укажите диапазон данных, отображаемых на гистограмме. В данном случае это получатель и сумма. В столбце Сумма выделите первую ячейку с суммой, держа нажатой левую кнопку мыши выделите все остальные суммы. Нажмите Ctrl, удерживая его выделите аналогично весь столбец получатель. Нажмите Далее.
- Напишите название диаграммы, осей Y и X.
- поместите диаграмму на имеющемся листе.
- нажмите Готово.
q) Чтобы ввести текущее значение даты между таблицей и ее назва-нием нужно:
- Добавить строку над шапкой таблицы. Для этого выделить всю первую строку, нажать Ctrl+.
- Чтобы ввести текущее значение даты необходимо воспользоваться формулой ТДАТА. Чтобы воспользоваться формулой введите в ячейку знак «=», на панели инструментов нажмите кнопку Вставка функции, выберите функцию ТДАТА, нажмите OK.
Завершение работы:
r) Для завершения работы необходимо:
- Закрыть все окна текущих программ, нажав на крестик в правом верхнем углу экрана.
- При необходимости сохранить все созданные документы.
- Нажмите кнопку Пуск-Завершение работы-Выключить компью-тер.
- Подождать некоторое время пока на экране не появится надпись Теперь питание компьютера можно отключить.
- Нажать на системном блоке кнопку Power. Отключить монитор.

СПИСОК ЛИТЕРАТУРЫ

1. Фигурнов В.Э. IBM PC для пользователя. Изд.7-е, перераб. и доп. М.: ИНФРА-М, 1997. 640 с.
2. Экономическая информатика и вычислительная техника:Учебник / Г.А.Титоренко. М.: Финансы и статистика, 1996. - 336 с.
3. Курс компьютерной технологии / Ю.А.Шафрин. М.: АБФ, 1998. - 655с.
4. Основы информатики и вычислительной техники./ В.А.Каймин. М.: Про-свещение, 1989. - 272 с.
5. Информатика. Методические указания по выполнению и темы курсовых работ. Для студентов 2 курса всех специальностей. / ВЗФЭИ. М.: Финста-тинформ, 2001. 64с.

СОДЕРЖАНИЕ

ВВЕДЕНИЕ 3
ГЛАВА 1 ОБЪЕКТНО – ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ 4
1.1 Язык и мышление 4
1.2 Новая парадигма 5
1.3 Характеристики ООП 9
ЗАКЛЮЧЕНИЕ 13
ГЛАВА 2 ПРАКТИЧЕСКАЯ ЧАСТЬ 15
2.1. Общая характеристика задачи 15
2.2 Описание алгоритма решения задачи. 17
2.3. Инструкция пользователя 20
СПИСОК ЛИТЕРАТУРЫ 24


Скачиваний: 0
Просмотров: 0
Скачать реферат Заказать реферат