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

Автор работы: Пользователь скрыл имя, 20 Января 2015 в 14:32, курсовая работа

Описание работы

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

Файлы: 1 файл

обьектно-ориентированное программирование.docx

— 1.15 Мб (Скачать файл)

Caption – Заголовок объекта (текст, который на нём располагается);  

Visible – определяет видимость/невидимость элемента при работе приложения;

StartUpPosition – свойство формы, которое задаёт её положение на экране при запуске приложения.

Код. Заключительным этапом в создании интерфейса является написание программного кода для его обработки. Редактирование программы осуществляется при помощи окна кода для создаваемой формы, которое можно открыть несколькими способами:

  1. выбрать пункт Соde в меню View (аналогичным образом можно вернуться к редактированию формы – пункт Object в меню View);
  2. в Проводнике проектов выделить название создаваемой формы и выбрать для него в контекстном меню пункт View Сode (таким же образом можно вернуться к форме – пункт View Object в контекстном меню формы);
  3. Выполнить двойной щелчок на соответствующем элементе формы, которого необходимо предусмотреть обработку каких-либо действий. В частности, при нажатии на кнопку Текст необходимо выполнить содержимое метки. Метод для обработки этого события можно создать, дважды щёлкнув на элементе CmdWork, после чего появится заготовка для процедуры, обрабатывающей нажатие данной кнопки пользователем:

Private Sub cmdWork_Click()

End Sub

Для каждого объекта существует набор стандартных событий, которые могут возникнуть при работе приложения, и для любого может быть написана процедура, которая обрабатывает то или иное событие. В данном случае для кнопок Текст и выход будут созданы процедуры, обрабатывающие событие Click.

Если необходимо обрабатывать другие события, то в окне кода из списка всех возможных событий для данного объекта следует выбрать нужное название, после чего появится заготовка для процедуры.    

 

 

      

При написании кода для обработки событий, имена создаваемых процедур формируются следующим образом: вначале – имя объекта, для которого в данный момент пишется программный код, затем символ «_» и в самом конце – название события. В рассматриваемом примере название создаваемой процедуры выглядит так: cmdWork_Click.

 Алгоритм процедуры  обработки события Сlick для управляющей кнопки    cmdWork будет заключаться в следующем: если объект lblText является видимым, то необходимо сделать его невидимым, и наоборот.

Программный код выглядит следующим образом:

 

 Private Sub cmdWork_Click()

If lblText.Visible = False Then

lblText.Visible = True

Else

lblText.Visible = False

End If

End Sub

 

Аналогично создаётся заготовка процедуры обработки события Click для объекта cmdExit. Её содержимым будет одна команда: End, при выполнении которой работа приложения завершается:

       Private Sub cmdExit_Click()

         End

       End Sub

В среде разработки Visual Basic существует возможность автоматизации редактирования программного кода при использовании которой для текущей команды или слова отображается список возможных вариантов её написания. Данная возможность применяется также в том случае, когда для какого-либо элемента управления необходимо просмотреть полный список его свойств. Выбор требуемого элемента из списка осуществляется стрелками управления курсора, после чего нажатием клавиши Таb он добавляется в текст.               

 

 

Запуск приложения. Запустить данную программу на выполнение можно несколькими способами:

  1. нажать кнопку start на стандартной панели инструментов;
  2. выбрать пункт start в меню run;
  3. нажать клавишу F5

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

 

 

 

3.4 Сравнительная  характеристика объектно-ориентированных  сред Delphi и Visual Basic.

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

В данной работе предпринимается попытка провести сравнительный анализ конкретных реализаций этих новых подходов к программированию.

Анализ языка программирования Delphi

Последняя на сегодняшний день версия - 2009. Delphi является мощным и универсальным средством разработки приложений, RAD-оболочкой. Ее вместе с библиотекой VCL, на которой оболочка основана и написана, можно назвать действительно революционной. Сравнение с C++ Builder 4 показывает, что производительность Pascal-кода, сгенерированного Delphi, всего на 4-5% меньше, чем кода C++.

Возможности языка практически не ограничены. Конечно, Object Pascal накладывает определенные ограничения, но для тех вещей, для которых ее писали, Delphi подходит практически оптимально. Из понравившихся (но, разумеется, нестандартных) "улучшений", внесенных Borland в Object Pascal, хотелось бы выделить свойства (properties) и перегружаемость процедур и функций (overloading). Определенные неудобства при работе с низкоуровневыми функциями API может вызвать то, что стандартным языком для API все же является С, и именно на нем пишутся все новые Software Development Kit (SDK) и заголовочные файлы к ним. Это ни в коем случае не означает, что вы не сможете работать с новыми SDK, просто вам придется написать несложный (но, возможно, объемный) код на Pascal, в котором определить интерфейсы данного SDK. Не поленитесь, однако, поискать на серверах, посвященных Delphi. Очень может быть, что эту работу кто-то уже сделал.

Достоинства языка программирования

Простота, скорость и эффективность Delphi объясняют ее популярность. Delphi имеет один из самых быстрых компиляторов, порождающий, тем не менее, весьма и весьма неплохой объектный код. Есть и другие достоинства: простота изучения Object Pascal; облегчающие жизнь нововведения - вроде свойств (properties); программы, написанные на Delphi, не требуется снабжать дополнительными библиотеками (в отличие от связки C++/MFC). В самом деле, VCL предоставляет удобный, легко расширяемый объектно-ориентированный интерфейс к Windows, что ни в коей мере не мешает программисту опускаться в самые глубины Windows API. Создателям оригинальных компонентов это приходится делать довольно часто, в отличие от "просто программистов". Как было сказано выше, модель программирования в Delphi - компонентная, что позволяет пользоваться компонентами, написанными другими разработчиками, даже не имея их исходного кода и уж подавно не изучая его. В Интернете есть огромное количество компонентов, значительная часть которых распространяется бесплатно. Применение компонентной модели приводит к тому, что довольно многое в поведении объектов программировать не нужно вообще, и многое, на что в других средах ушли бы недели, можно сделать за часы или даже минуты. Оно и понятно - это ведь RAD-среда. К достоинствам можно отнести очень быстрый браузер классов и мгновенный вывод подсказки автозавершения кода (code completion). Если кратко - может все. Конечно, Object Pascal накладывает определенные ограничения, но для тех вещей, для которых ее писали, Delphi подходит практически оптимально. Из понравившихся (но, разумеется, нестандартных) "улучшений", внесенных Borland в Object Pascal, хотелось бы выделить свойства (properties) и перегружаемость процедур и функций (overloading). Определенные неудобства при работе с низкоуровневыми функциями API может вызвать то, что стандартным языком для API все же является С, и именно на нем пишутся все новые Software Development Kit (SDK) и заголовочные файлы к ним. Это ни в коем случае не означает, что вы не сможете работать с новыми SDK, просто вам придется написать несложный (но, возможно, объемный) код на Pascal, в котором определить интерфейсы данного SDK. Не поленитесь, однако, поискать на серверах, посвященных Delphi. Очень может быть, что эту работу кто-то уже сделал.

Недостатки языка программирования

Их мало, но они есть. Главный, на мой взгляд, недостаток (и одновременно достоинство) - статическое присоединение (linking) библиотеки VCL и компонентов к исполняемому файлу. Справедливости ради надо сказать, что VCL можно линковать и динамически, но тогда с каждым своим приложением вам придется распространять еще и VCL, а это более 3 Мбайт. Однако если не увлекаться интерфейсными "наворотами" и использовать в программе минимально необходимое число компонентов, то исполняемый файл будет невелик. Другой недостаток (и опять же достоинство) состоит в том, что в используемой в Delphi парадигме форм (Forms) вся информация о форме, включая свойства, настройки компонентов, значения по умолчанию, хранится в exe-файле, причем не оптимальным образом. Анализ исходного кода VCL показывает, что при создании формы фактически происходит чуть ли не синтаксический разбор данных инициализации, что не может ее не замедлять. Третий недостаток, который кто-нибудь тоже может назвать достоинством, - это Object Pascal. Несмотря на простоту, эффективность и легкость в изучении, ему не хватает очень многих мощных средств C++. Мне, например, не достает шаблонов, перегрузки операторов и объектной модели, похожей на объектную модель C++ . Разочаровала Delphi и малым числом параметров оптимизации кода. Кроме того, заметна тенденция к "разрастанию" exe-файлов, генерируемых Delphi. Так, большинство небольших проектов, разработанных в Delphi 4, при перекомпиляции в Delphi 5 "растолстели" на 40-70 Кбайт, при этом, разумеется, не обретя новой функциональности.

Анализ языка программирования Visual Basic

В 1991 г. фирмой Microsoft был разработан и выпущен Visual Basic. Microsoft Visual Basic — средство разработки программного обеспечения, разрабатываемое корпорацией Microsoft и включающее язык программирования и среду разработки. Язык Visual Basic унаследовал дух, стиль и отчасти синтаксис своего предка — языка Бэйсик, у которого есть немало диалектов. В то же время Visual Basic сочетает в себе процедуры и элементы объектно-ориентированных и компонентно-ориентированных языков программирования. Среда разработки VB включает инструменты для визуального конструирования пользовательского интерфейса.

Visual Basic считается хорошим средством быстрой разработки прототипов программы, для разработки приложений баз данных и вообще для компонентного способа создания программ, работающих под управлением операционных систем семейства Microsoft Windows.

Первое признание серьёзными разработчиками Visual Basic получил после выхода версии 3 — VB3. Окончательное признание как полноценного средства программирования для Windows — при выходе версии 5 — VB5. Версию VB6, входящую в состав Microsoft Visual Studio 6. 0, стала по-настоящему зрелым и функционально богатым продуктом.

Достоинства языка программирования

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

Недостатки языка программирования

Поддержка операционных систем только семейства Windows (Исключение — VB1 for DOS). Отсутствие механизма наследования объектов. Существующие в языке наследование, позволяет наследовать только интерфейсы объектов, а не их самих. Таким образом, в унаследованом классе должны быть явно переписаны все функции базового класса. Также в унаследованном классе невозможно добавление каких-либо методов, присущих только даннному классу, то есть если абстрактный базовый класс содержит только два метода, то и производный класс содержит только два метода, не более и не менее того. Требует установленных DLL для работы программы.

Часто критике подвергаются такие аспекты Visual Basic, как возможность отключить средства слежения за объявленными переменными, возможность неявного преобразования переменных, наличие типа данных «Variant». По мнению критиков, это даёт возможность писать крайне плохой код. С другой стороны, это можно рассматривать как плюс, так как VB не навязывает «хороший стиль», а даёт больше свободы программисту.

Отсутствие указателей, низкоуровневого доступа к памяти, ASM-вставок. Несморя на то, что парадигма Visual Basic позволяет среднему VB-программисту обходиться без всего этого, перечисленные вещи также нередко становятся объектами критики. И хотя, используя недокументированные возможности и определённые ухищрения, всё это можно реализовать и на VB; пользоваться этими трюками гораздо сложнее, чем, например, на Delphi. 

И теперь я могу с уверенностью сказать, что для начального обучения программированию лучше всего подходит именно Delphi с базовым языком программирования Pasсal. В Delphi нет тех сложных конструкций, которые присутствуют, например, в языке С++, нопри этом Delphi не уступает по своим возможностям С++. Да и скорость работы созданных на Delphi программ не меньше, чем у программ, созданных на языке С++.

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

Информация о работе Основные понятия объектно-ориентированного программирования