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

Вот мы и добрались до ООП где я тебе расскажу о принципиально новых понятиях технологии программирования. Дело в том, что Visual FoxPro представляет собой гибридный язык программирования, который позволяет создавать приложения как с использованием старой технологии модульного программирования, так и применяя современную технологию объектно-ориентированного программирования. В чем их отличие?

Модульное, или процедурное программирование — это то, чем мы с тобой занимались, изучая первую часть нашей книги. Наше приложение состояло из набора отдельных модулей (экранных форм, процедур, программ), которые в совокупности и решали поставленную задачу. Именно такая технология использовалась в FoxPro for DOS, в FoxPro for Windows и других языках программирования. Как мы уже видели, ее же можно успешно применять и при создании приложений в Visual FoxPro.

А зачем, спросишь ты, от нее отказываться? Да никто и не заставляет от нее отказываться — огромное количество программистов (особенно те, кто “перешел” в Visual со старых версий FoxPro) до сих пор так и создают свои приложения. Но… Представь такую ситуацию: мы разработали некое приложение, которое успешно работает в какой-то компании. И оно настолько всем нравится, что к нам приходит представитель другой компании и говорит: “Окей, ребята, мы хотим то же самое.

Правда, требования у нас немного другие…” А мы что, мы не против. Мы с тобой берем кучу дискет, компакт-дисков и двигаемся в эту фирму. Там мы устанавливаем свое приложение, но, т.к. у них “требования немного другие”, мы корректируем программный код наших модулей, подгоняя его под условия данного заказчика. А потом к нам приходит еще один клиент и… все повторяется. Естественно, на все эти манипуляции уходит время, деньги и нервы.

Принципиально другой подход к обновлению и адаптации приложений к различным условиям предлагает технология объектно-ориентированного программирования. Применяя данную технологию, можно создавать приложение не столько как набор отдельных программных модулей, сколько как совокупность объектов. Допустим, нам нужно смоделировать, т.е. программно разработать объект “Организация”.

А для этого нам необходимо знать, что же такое организация? И не конкретная фирма, а организация вообще. Что она “знает” о себе, что “умеет” делать? Очевидно, что любая организация “знает” свое наименование, юридический адрес и т.д. Любая организация имеет счет в банке, у любой организации есть руководитель и т.д.

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

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

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

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

Вы можете следить за любыми ответами на эту запись через RSS 2.0 ленту. Вы можете оставить ответ, или trackback с вашего собственного сайта.

Оставьте отзыв

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

 
Rambler's Top100