Модульное и объектно-ориентированное программирование

Эволюция языков программирования. Модульное программирование. Понятие "модуль". Языки объектно-ориентированными программирования Visual Basic, Visual Basic for Application (VBA), Delphi. Инкапсуляция. Иерархия объектов приложения Word. Полиморфизм.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 20.11.2008
Размер файла 16,0 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

9

ВСЕРОССИЙСКИЙ ЗАОЧНЫЙ ФИНАНСОВО-ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

КАФЕДРА МАТЕМАТИКИ И ИНФОРМАТИКИ

КУРСОВАЯ РАБОТА

по дисциплине «Информатика»

На тему: «Модульное и объектно-ориентированное программирование»

Выполнил:

специальность

группа

№ зачётной книжки

Проверил:

Барнаул - 2008

ОГЛАВЛЕНИЕ

Введение…………………………………………………………………...…3

1.Теоретическая часть.

1.1. Эволюция языков программирования…………………………………4

1.2. Модульное программирование………………………………..…...…6

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

Литература …………………………………………………………………10

2. Практическая часть

2.1. Задача №1

2.2. Дополнительная задача

ВВЕДЕНИЕ

В настоящее время большинство рабочих мест являются компьютеризированными. Поэтому умение пользоваться компьютером становится одним из необходимых условий для трудоустройства в любую организацию. Причем, чем опытнее пользователь, тем проще и успешнее будет складываться его работа. Поэтому возникает необходимость более глубоких знаний программ, устройства компьютера, языков программирования. Этим обусловлена актуальность данной работы.

Объектом исследования являются технологии программирования, предметом - модульное и объектно-ориентированное программирование.

Целью данной работы является рассмотрение принципов модульного и объектно-ориентированного программирования. Для достижения поставленной цели необходимо решить следующие задачи:

· Рассмотреть эволюцию языков программирования

· Изучить принципы модульного и объектно-ориентированного программирования

· Сравнить эти технологии

· Сделать вывод о возможности использования данных исследования в работе финансиста

Основным методом работы является анализ литературы по данной теме.

Работа состоит из введения и двух частей - теоретической и практической. Теоретическая часть делится на три пункта. В конце работы приводятся выводы и список использованной литературы.

1.1.Эволюция языков программирования

Принцип программного управления компьютером состоит в том, что человек подаёт команды на логические схемы, которые управляют различными подсистемами компьютера. В настоящее время существуют сотни языков программирования, несколько операционных систем, - с целью обеспечения эффективной работы компьютеров. Но машинный язык, который воспринимается компьютером, должен представлять собой структурированную информацию, в виде строго организованных последовательностей нулей и единиц. Поэтому, по сути, любое программирование основано на языке машинных команд.

С 50-х годов программисты стали использовать для программирования символический аналог машинного языка, который назвали языком ассемблера. Этот язык точно отражает все особенности машинного языка. Именно поэтому язык ассемблера для каждого типа компьютера свой.

Язык программирования - это специальный язык, на котором пишут команды для управления компьютером [3,С.52]. Языки программирования созданы для того, чтобы людям было проще читать и писать для компьютера, но они затем должны транслироваться (транслятором или интерпретатором) в машинный код, который только и может исполняться компьютером. Языки программирования можно разделить на языки высокого уровня и языки низкого уровня.

Язык низкого уровня - это язык программирования, предназначенный для определенного типа компьютера и отражающий его внутренний машинный код[3,С.52].; языки низкого уровня часто называют машинно-ориентированными языками. Их сложно конвертировать  для использования на компьютерах с разными центральными процессорами, а также довольно сложно изучать, поскольку для этого требуется хорошо знать принципы внутренней работы компьютера.

Язык высокого уровня - это язык программирования, предназначенный для удовлетворения требований программиста; он не зависит от внутренних машинных кодов компьютера любого типа. Языки высокого уровня используют для решения проблем и поэтому их часто называют проблемно-ориентированными языками. Каждая команда языка высокого уровня эквивалентна нескольким командам в машинных кодах, поэтому программы, написанные на языках высокого уровня, более компактны, чем аналогичные программы в машинных кодах.

 В основе того или иного языка программирования лежит некоторая руководящая идея, оказывающая существенное влияние на стиль соответствующих программ - технология программирования. Одна из технологий, называемая структурным программированием, возникла в 70-е годы. Она и сейчас является основой для множества проектов.

Впоследствии возникли новые технологии, например, модульного программирования. Затем появилось объектно-ориентированное программирование, которое считается одним из основных направлений совре-мен-ного программирования. Ниже приведены примеры наиболее популярных на сегодняшний день языков программирования:

Таблица 1

Языки программирования

Язык

Основное использование

Описание

Ада

В обороне

Высокого уровня

Ассемблер

Работы, требующие детального контроля за аппаратным обеспечением, быстрого исполнения и программ малого размера

Быстрый и эффективный, но требующий определенных усилий и навыков

Бейсик

В образовании, бизнесе, дома

Прост в изучении

С

Системное программирование, универсальное программирование

Быстрый и эффективный, широко используется как универсальный язык

С++

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

Основан на языке С

Кобол

Программирование в бизнесе

Жестко ориентирован на коммерческие задачи, легко научиться, но очень много операторов

Форт

Управление приложениями

Использует инверсную польскую запись

Фортран

Научная работа и вычисления

Основан на математических формулах

Лисп

Искусственный интеллект

Язык символов с репутацией трудно изучаемого

Модула-2

Системное программирование и программирование в режиме реального времени, универсальное программирование

Высоко структурирован, предназначен заменить Паскаль для приложений "реального мира"

Оберон

Универсальное программирование

Небольшой, компактный язык, соединяющий многие черты Паскаля и Модула-2

Паскаль

Универсальный язык

Высоко структурирован

Пролог

Искусственный интеллект

Символьно-логическая система программирования, в начале предназначенная для решения теорем, но сейчас использующаяся чаще для решения задач, связанных с искусственным интеллектом

1.2. Модульное программирование

Модульное программирование - это организация программы как совокупности небольших независимых блоков, называемых модулями, структура и поведение которых подчиняется определенным правилам[6,С.124]. Модуль - это автономно компилируемая программная единица,  включающая в себя различные компоненты раздела описаний (типы, константы, переменные, процедуры, функции) и, возможно, некоторые исполняемые операторы инициирующей части[6, С.126]. Использование модулей - прекрасный инструмент для разработки библиотек прикладных программ  и мощное средство модульного программирования.

Концепцию модульного программирования можно сформулировать в виде нескольких понятий и положений:

· Функциональная декомпозиция задачи - разбиение большой задачи на ряд более мелких, функционально самостоятельных подзадач - модулей. Модули связаны между собой только по входным и выходным данным.

· Модуль - основа концепции модульного программирования. Каждый модуль в функциональной декомпозиции представляет собой "черный ящик" с одним входом и одним выходам. Модульный подход позволяет безболезненно производить модернизацию программы в процессе ее эксплуатации и облегчает ее сопровождение. Дополнительно модульный подход позволяет разрабатывать части программ одного проекта на разных языках программирования, после чего с помощью компоновочных средств объединять их в единый загрузочный модуль.

· Реализуемые решения должны быть простыми и ясными. Если назначение модуля непонятно, то это говорит о том, что декомпозиция начальной или промежуточной задачи была проведена недостаточно качественно. В этом случае необходимо еще раз проанализировать задачу и, возможно, провести дополнительное разбиение на подзадачи. При наличии сложных мест в проекте их нужно подробнее документировать с помощью продуманной системы комментариев. Этот процесс нужно продолжать до тех пор, пока вы действительно не добьетесь ясного понимания назначения всех модулей задачи и их оптимального сочетания.

· Назначение всех переменных модуля должно быть описано с помощью комментариев по мере их определения.

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

Объектно-ориентированное программирование является в настоящее время наиболее популярной технологией программирования. Объектно-ориентированными языками программирования являются Visual Basic, Visual Basic for Application (VBA), Delphi и др. Идея ООП заключается в стремлении связать данные с обрабатывающими эти данные процедурами в единое целое - объект. ООП основано на трех важнейших принципах, придающих объектам новые свойства. Этими принципами являются инкапсуляция, наследование и полиморфизм.

Инкапсуляция - объединение в единое целое данных и алгоритмов обработки этих данных[5, С.204].

Основной единицей в объектно-ориентированном программировании является объект, который заключает в себе, инкапсулирует, как описывающие его данные (свойства), так и средства обработки этих данных (методы). В рамках ООП данные называются полями объекта, а алгоритмы - объектными методами. Классы объектов и экземпляры класса, объекты, инкапсулирующие одинаковый перечень свойств и методов, объединяются в классы. Каждый отдельный объект является экземпляром класса. Экземпляры класса могут иметь отличающиеся значения свойств. Например, в среде Windows&Office в приложении word существует класс объектов документ, который обозначается следующим образом: Documents ( )

Класс объектов может содержать множество различных документов, каждый из которых имеет свое имя. Например, один из документов может иметь имя Проба.doc. Documents ("Проба.doc.)

Объекты в приложениях образуют некоторую иерархию. На вершине иерархии объектов находится приложение. Так, иерархия объектов приложения Word включает в себя следующие объекты: приложение ( Aplication), документ (Documents), фрагмент документа (Selection), символ (Character) и др. Полная ссылка на объект состоит из ряда имен вложенных последовательно друг в друга объектов. Разделителями имен объектов в этом ряду являются точки, ряд начинается с объекта наиболее высокого уровня и заканчивается именем интересующего нас объекта. Например, ссылка на документ Проба.doc в приложении Word будет выглядеть следующим образом: Application. Documents ("Проба. doc")

· Наследование - свойство объектов порождать своих потомков. Объект - потомок автоматически наследует от родителей все поля и методы, может дополнять объекты новыми полями и заменять (перекрывать) методы родителя или дополнять их[5,С. 48].

· Полиморфизм - свойство родственных объектов (т.е. объектов, имеющих одного общего родителя) решать схожие по смыслу проблемы разными способами[5,С.48].

Все полученные данные могут быть использованы в работе финансиста, поскольку все рабочие места в рамках этой профессии уже давно компьютеризированы. И многие специальные программы, например 1С(1С - бухгалтерия, 1С - кадры), или С++, которые очень востребованы в настоящее время, являются примерами языков высокого уровня, модульными или объектно-ориентированными.

Литература

1. Джоунс Р. Теория передачи данных. - М.: Наука и техника, 1993.

2. Каган Б.М. Электронные вычислительные машины и системы. - М.: Энергоатомиздат, 1991.

3. Карманный словарь "Computing & Multimedia" - М.: Внешсигма, 1996.

4. Курносов А.П. Практикум по информатике/Под ред. Курносова А.П. Воронеж: ВГАУ, 2001.

5. Макарова Н.В. Информатика /под ред. Проф. Н.В. Макаровой. -- М.: Финансы и статистика, 1997.

6. Симонович С.В.Информатика. Базовый курс/Симонович С.В. и др. -- СПб.: Питер, 2000. 

7. Фаронов В.В TurboPascal 7.0:начальный курс.- М.: Нолидж, 1998.

8. Цифровая и вычислительная техника /под ред. Э.В.Евреинова. - М.: РиС,1991.

9. Юров В.И., Хорошенко С.А. Assembler:учебный курс. - СПб.: Питер, 1999.


Подобные документы

  • Понятие объектно-ориентированного программирования, общая характеристика языков высокого уровня. Разработка программного обеспечения для реализации компьютерной игры "пинбол" с помощью императивного программирования в среде Microsoft Visual Basic.

    курсовая работа [428,9 K], добавлен 19.09.2012

  • Почему C++. Возникновение и эволюция языка C++. Сравнение языков С++ и С. Эффективность и структура. Процедурное программирование. Модульное программирование. Абстракция данных. Объектно-ориентированное программирование. Улучшенный С.

    реферат [26,4 K], добавлен 03.06.2004

  • Изучение принципов объектно-ориентированного программирования, в котором основными концепциями являются понятия классов и объектов. Свойства этого вида программирования: инкапсуляция, полиморфизм, наследование. Описание класса. Конструкторы и деструкторы.

    презентация [74,8 K], добавлен 14.10.2013

  • Язык программирования Visual Basic: краткая история возникновения, значение и общая характеристика. Изучение основных свойств Visual Basic, синтаксис языка. Обзор ключевых операторов Visual Basic, пользовательские процедуры и функции данного языка.

    контрольная работа [36,4 K], добавлен 23.07.2014

  • Рождение и развитие Basic. Краткое описание Visual Basic for Applications. Новые возможности Visual Basic 5.0. Пример взаимодействия Excel и Visual Basic. Программирование табличных функций. Встраивание, применение функций. Формы, средства управления OLE.

    реферат [20,7 K], добавлен 11.03.2010

  • Анализ объектно-ориентированного программирования, имитирующего способы выполнения предметов. Основные принципы объектно-ориентированного программирования: инкапсуляция, наследование, полиморфизм. Понятие классов, полей, методов, сообщений, событий.

    контрольная работа [51,7 K], добавлен 22.01.2013

  • Свойства объектно-ориентированного языка программирования. Понятия инкапсуляции и наследования. Виртуальные функции и полиморфизм. Инициализация экземпляра объекта с помощью конструктора. Динамическое создание объектов. Совместимость объектных типов.

    реферат [17,0 K], добавлен 15.04.2015

  • Основные этапы развития языков программирования. Характеристика машинно-ориентированной, проблемно-ориентированной и процедурно-ориентированной систем программирования. Ознакомление с системами программирования Delphi, Visual Basic и Visual C++.

    курсовая работа [102,4 K], добавлен 21.07.2012

  • Объектно-ориентированное программирование как методология программирования, опирающаяся на инкапсуляции, полиморфизме и наследовании. Общая форма класса. Наследование как процесс, посредством которого один объект получает свойства другого объекта.

    презентация [214,9 K], добавлен 26.10.2013

  • Характеристики и свойства языков программирования. Исследование эволюции объектно-ориентированных языков программирования. Построение эволюционной карты механизмов ООП. Разработка концептуальной модели функционирования пользовательского интерфейса.

    курсовая работа [2,6 M], добавлен 17.11.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.