к оглавлению   к алгоритмизации   СУБД   ЯиМП   3GL   4GL   5GL   технологии прогр.

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

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

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

Первый объектно-ориентированный язык программирования Simula 67 был разработан в конце 60-х годов в Норвегии. Авторы этого языка очень точно угадали перспективы развития программирования: их язык намного опередил свое время. Однако современники (программисты 60-х годов) оказались не готовы воспринять ценности языка Simula 67, и он не выдержал конкуренции с другими языками программирования (прежде всего, с языком Fortran). Прохладному отношению к языку Simula 67 способствовало и то обстоятельство, что он был реализован как интерпретируемый (а не компилируемый) язык, что было совершенно неприемлемым в 60-е годы, так как интерпретация связана со снижением эффективности (скорости выполнения) программ.

Но достоинства языка Simula 67 были замечены некоторыми программистами, и в 70-е годы было разработано большое число экспериментальных объектно-ориентированных языков программирования: например, языки CLU, Alphard, Concurrent Pascal и др. Эти языки так и остались экспериментальными, но в результате их исследования были разработаны современные объектно-ориентированные языки программирования.

Обзор некоторых современных объектно-ориентированных языков приводится ниже.

Smalltalk

Язык Smalltalk был разработан командой Xerox Palo Alto Research Center Learning Research Group как программная часть Dynabook - фантастического проекта Алана Кея. В основу были положены идеи Simula.. Smalltalk является одновременно и языком программирования, и средой разработки программ. Это чисто объектно-ориентированный язык, в котором абсолютно все рассматривается как объекты; даже целые числа - это классы. Вслед за Simula, Smalltalk является важнейшим объектно-ориентированным языком, поскольку он не только оказал влияние на последующие поколения языков программирования, но и заложил основы современного графического интерфейса пользователя, на которых непосредственно базируются интерфейсы Macintosh, Windows и Motif.

Известны пять выпусков языка Smalltalk, обозначаемых по году их появления:

Smalltalk-72, -74. -76, -78, -80. Реализации 1972 и 1974 годов заложили основу языка, в частности идею передачи сообщений и полиморфизм, хотя механизм наследования еще не появился. В последующих версиях полноправное гражданство получили классы; этим достигла завершения точка зрения, что все состоит из объектов. Smalltalk-80 был перенесен на многие компьютерные платформы.

В основу языка положены две простые идеи:

- все является объектами;

- объекты взаимодействуют, обмениваясь сообщениями.

В табл.1 приведены характеристики языка Smalltalk с точки зрения семи основных элементов объектного подхода.

Табл. 1

Абстракции

Переменные экземпляра

Методы экземпляра

Переменные класса

Методы класса

Да

Да

Да

Да

Инкапсуляция

Переменных

Методов

Закрытые

Открытые

Модульность

Разновидности модулей

Нет

Иерархии

Наследование

Шаблоны

Метаклассы

Одиночное

Нет

Да

Типизация

Сильная типизация

Полиморфизм

Нет

Да (одиночный)

Параллельность

Многозадачность

Непрямая (посредством классов)

Сохраняемость

Долгоживущие объекты

Нет

Большим недостатком Smalltalk являются большие требования к памяти и низкая производительность полученных программ. Это связано с не очень удачной реализацией объектно-ориентированных особенностей.

C++ (си-плас-плас)

Язык программирования C++ был разработан Бьерном Страустрапом, сотрудником AT&T Bell Laboratories. Непосредственным предшественником C++ является С with Classes, созданный тем же автором в 1980 году. Язык С with Classes, в свою очередь, был создан под сильным влиянием С и Simula. C++ - это в значительной степени надстройка над С. В определенном смысле можно назвать C++ улучшенным С, тем С, который обеспечивает контроль типов, перегрузку функций и ряд других удобств. Но главное в том, что C++ добавляет к С объектную ориентированность.

Известны несколько версий C++. В версии 1.0 реализованы основные механизмы объектно-ориентированного программирования, такие как одиночное наследование и полиморфизм, проверка типов и перегрузка функций. В созданной в 1989 году версии 2.0 нашли отражение многие дополнительные свойства, возникшие на базе широкого опыта применения языка многочисленным сообществом пользователей. В версии 3.0 (1990) появились шаблоны и обработка исключений. C++ продолжает совершенствоваться и в настоящее время, так в 1998 году вышла новая версия стандарта, содержащая в себе некоторые довольно существенные изменения. Язык стал основой для разработки современных больших и сложных проектов.

Характеристики C++ приведены в табл. 3.

Таблица 3. C++

Абстракции

Переменные экземпляра

Методы экземпляра

Переменные класса

Методы класса

Да

Да

Да

Да

Инкапсуляция

Переменных

Методов

Открытые, защищенные, закрытые

Открытые, защищенные, закрытые

Модульность

Разновидности модулей

Файл

Иерархии

Наследование

Шаблоны

Метаклассы

Множественное

Да

Нет

Типизация

Сильная типизация

Полиморфизм

Да

Да (одиночный)

Параллельность

Многозадачность

Непрямая (посредством классов)

Сохраняемость

Долгоживущие объекты

Нет

C# (си-шарп)

C# (произносится «си шарп») — объектно-ориентированный язык программирования. Разработан в 1998—2001 годах группой инженеров под руководством Андерса Хейлсберга в компании Microsoft как язык разработки приложений для платформы Microsoft .NET Framework и впоследствии был стандартизирован как ECMA-334 и ISO/IEC 23270.

C# относится к семье языков с C-подобным синтаксисом, из них его синтаксис наиболее близок к C++ и Java. Язык имеет статическую типизацию, поддерживает полиморфизм, перегрузку операторов (в том числе операторов явного и неявного приведения типа), делегаты, атрибуты, события, свойства, обобщённые типы и методы, итераторы, анонимные функции с поддержкой замыканий, LINQ, исключения, комментарии в формате XML.

Переняв многое от своих предшественников — языков C++, Pascal, Модула, Smalltalk и в особенности Java — С#, опираясь на практику их использования, исключает некоторые модели, зарекомендовавшие себя как проблематичные при разработке программных систем, например, C# в отличие от C++ не поддерживает множественное наследование классов (между тем допускается множественное наследование интерфейсов).

C# разрабатывался как язык программирования прикладного уровня для CLR и, как таковой, зависит, прежде всего, от возможностей самой CLR. Это касается, прежде всего, системы типов C#, которая отражает BCL. Присутствие или отсутствие тех или иных выразительных особенностей языка диктуется тем, может ли конкретная языковая особенность быть транслирована в соответствующие конструкции CLR. Так, с развитием CLR от версии 1.1 к 2.0 значительно обогатился и сам C#; подобного взаимодействия следует ожидать и в дальнейшем (однако, эта закономерность была нарушена с выходом C# 3.0, представляющего собой расширения языка, не опирающиеся на расширения платформы .NET). CLR предоставляет C#, как и всем другим .NET-ориентированным языкам, многие возможности, которых лишены «классические» языки программирования. Например, сборка мусора не реализована в самом C#, а производится CLR для программ, написанных на C# точно так же, как это делается для программ на VB.NET, J# и др.

Common Lisp Object System (CLOS)

В начале 80-х годов под воздействием идей объектно-ориентированного программирования возникла серия новых диалектов Lisp, многие из которых были ориентированы на представление знаний. Успех в стандартизации Common Lisp стимулировал попытки стандартизировать объектно-ориентированные диалекты в 1986 году.

Поскольку новый диалект должен был стать надстройкой над Common Lisp, он получил название Common Lisp Object System (Объектная система Common Lisp) или, сокращенно, - CLOS. Серьезное влияние на проект CLOS оказали языки NewFlavors и CommonLoops. После двухлетней работы, в 1988 году была опубликована полная спецификация CLOS.

CLOS должен:

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

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

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

Обзор характеристик CLOS можно найти в табл. 4.

Не поддерживая непосредственно механизм долгоживущих объектов, CLOS имеет расширения с протоколом метаобъектов, реализующих этот механизм .

Таблица 4. CLOS

Абстракции

Переменные экземпляра

Методы экземпляра

Переменные класса

Методы класса

Да

Да

Да

Да

Инкапсуляция

Переменных

Методов

Чтение, запись, доступ

Открытые

Модульность

Разновидности модулей

Пакет

Иерархии

Наследование

Шаблоны

Метаклассы

Множественное

Нет

Да

Типизация

Сильная типизация

Полиморфизм

Возможна

Да (множественный)

Параллельность

Многозадачность

Да

Сохраняемость

Долгоживущие объекты

Нет

Ada

В 1983 году под эгидой Министерства Обороны США был создан язык Ada. Язык замечателен тем, что очень много ошибок может быть выявлено на этапе компиляции. Кроме того, поддерживаются многие аспекты программирования, которые часто отдаются на откуп операционной системе (параллелизм, обработка исключений). В 1995 году был принят стандарт языка Ada 95, который развивает предыдущую версию, добавляя в нее объекно-ориентированность и исправляя некоторые неточности. Оба этих языка не получили широкого распространения вне военных и прочих крупномасштабных проектов (авиация, железнодорожные перевозки). Основной причиной является сложность освоения языка и достаточно громоздкий синтаксис.

Непосредственными предшественниками Ada являются Pascal и его производные, включая Euclid, Lis, Mesa, Modula и Sue. Были использованы некоторые концепции ALGOL-68, Simula, CLU и Alphard.

Разработчики Ada прежде всего беспокоились о:

- надежности и эксплуатационных качествах программ;

- программировании как разновидности человеческой деятельности;

- эффективности.

В табл. 5 приведены основные характеристики языка Ada с точки зрения объектного подхода.

Таблица 5. Ada

Абстракции

Переменные экземпляра

Методы экземпляра

Переменные класса

Методы класса

Да

Да

Нет

Нет

Инкапсуляция

Переменных

Методов

Открытые, закрытые

Открытые, закрытые

Модульность

Разновидности модулей

Пакет

Иерархии

Наследование

Шаблоны

Метаклассы

Нет (входит в Ada9x)

Да

Нет

Типизация

Сильная типизация

Полиморфизм

Да

Нет (входит в Ada9x)

Параллельность

Многозадачность

Да

Сохраняемость

Долгоживущие объекты

Нет

Eiffel

Автор Eiffel Бертран Мейер (Bertrand Meyer) создавал не только язык объектно-ориентированного программирование, но и инструмент проектирования программ.

Несмотря на сильное влияние Simula, Eiffel - вполне самостоятельный объектно-ориентированный язык со своей собственной средой разработки.

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

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

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

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

Свойства языка показаны в табл. 6.

Таблица 6. Eiffel

 Абстракции

Переменные экземпляра

Методы экземпляра

Переменные класса

Методы класса

Да

Да

Нет

Нет

Инкапсуляция

Переменных

Методов

Закрытые

Открытые, закрытые

Модульность

Разновидности модулей

Блок (unit)

Иерархии

Наследование

Шаблоны

Метаклассы

Множественное

Да

Нет

Типизация

Сильная типизация

Полиморфизм

Да

Да

Параллельность

Многозадачность

Нет

Сохраняемость

Долгоживущие объекты

Нет

Java

С 1995 года стал широко распространяться новый объектно-ориентированный язык программирования Java, ориентированный на сети компьютеров и, прежде всего, на Internet. Синтаксис этого языка напоминает синтаксис языка C++, однако эти языки имеют мало общего. Java - интерпретируемый на конечной стадии язык: для него определены внутреннее представление (прекомпиляция в байткод - bytecode) и постинтерпретатор этого представления на целевой машине, которые уже сейчас реализованы на большинстве платформ. Постинтерпретатор (виртуальная Java-машина) упрощает отладку программ, написанных на языке Java, обеспечивает их переносимость на новые платформы и адаптируемость к новым окружениям. Он позволяет исключить влияние программ, написанных на языке Java, на другие программы и файлы, имеющиеся на новой платформе, и тем самым обеспечить безопасность выполнения этих программ для операционной среды (не нарушать ее работоспособность, что совершенно не определяет безопасности на прагматическом, человеческом уровне, которая как раз страдает от возможности внедрения чужеродных Java-кодов в ОС: троянов, червей и пр.). Положительные свойства технологии Java позволяют использовать ее для программ, распространяемых по сетям (в частности, по сети Internet).

Object Pascal

Object Pascal создавался сотрудниками компании Apple Computer (некоторые из которых были участниками проекта Smalltalk) совместно с Никлаусом Виртом (Niklaus Wirth), создателем языка Pascal. Object Pascal известен с 1986 года и является первым объектно-ориентированным языком программирования, который был включен в Macintosh Programmer's Workshop (MPW), среду разработки для компьютеров Macintosh фирмы Apple. В ранних версиях этого языка не было методов класса, переменных класса, множественного наследования и метаклассов. Эти механизмы исключены специально, чтобы сделать язык простым для изучения начинающими "объектными" программистами. В табл. 2 приведены общие характеристики Object Pascal.

Таблица 2. Object Pascal

Абстракции

Переменные экземпляра

Методы экземпляра

Переменные класса

Методы класса

Да

Да

Нет

Нет

Инкапсуляция

Переменных

Методов

Открытые

Открытые

Модульность

Разновидности модулей

Модуль (unit)

Иерархии

Наследование

Шаблоны

Метаклассы

Одиночное

Нет

Нет

Типизация

Сильная типизация

Полиморфизм

Да

Да (одиночный)

Параллельность

Многозадачность

Нет

Сохраняемость

Долгоживущие объекты

Нет

В последние годы этот язык стал очень популярен благодаря системе Delphi фирмы Borland.

Система визуального ООП Delphi

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

Система Delphi позволяет решать множество задач, в частности:

- Создавать законченные приложения для Windows самой различной направленности: от чисто вычислительных и логических, до графических и мультимедиа.

- Быстро создавать (даже начинающим программистам) профессионально выглядящий оконный интерфейс для любых приложений.

- Создавать мощные системы работы с локальными и удаленными базами данных

- Создавать справочные системы (файлы .hlp) для своих приложений и мн. др.

Delphi – чрезвычайно быстро развивающаяся система. Первая версия – Delphi 1.0 была выпущена в феврале 1995 г. А затем новые версии выпускались ежегодно. Каждая последующая версия Delphi дополняла предыдущую. Большинство версий Delphi выпускается в нескольких вариантах: Standart – стандартном, Professional – профессиональном, Client/Server – клиент/сервер, Enterprise – разработка баз данных предметных областей. Различаются варианты в основном разным уровнем доступа к системам управления базами данных. Последние варианты - Client/Server и Enterprise, в этом отношении наиболее мощные.

Delphi - это комбинация нескольких важнейших технологий:

- Высокопроизводительный компилятор в машинный код

- Объектно-ориентированная модель компонент

- Визуальное (а, следовательно, и скоростное) построение приложений из программных прототипов

- Масштабируемые средства для построения баз данных

Структура экрана в среде Delphi

После вызова Delphi в Windows появляются несколько окон (рис 1.):

- главное окно,

- окно формы,

- окно инспектора объектов,

- окно дерева объектов,

- окно кода программы.

Рис1. Структура экрана в среде Delphi

Рассмотрим расположенное в верхней части экрана графическое меню системы Delphi, составленное из пиктограмм.

В левой части графического меню находится панель инструментов. Инструменты выполняют некоторые команды главного меню - такое дублирование часто практикуется в инструментальных средах.

На этой панели есть, в частности, кнопка сохранения проекта на диске, кнопка открытия проекта, кнопка запуска программы на выполнение.

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

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

Окно Object Inspector - это окно, отображающее свойства либо формы, либо размещенного на форме объекта. В нашем случае текущим компонентом является форма, поэтому на рисунке окно свойств показывает свойства формы.

Окно свойств имеет две закладки - Properties и Еvents, с помощью которых можно получить в окне строки (поля) для задания, соответственно, свойств компонента (т. е. объекта или формы) и его реакции на различные события. Свойство определяет атрибут компонента, например, размер кнопки или шрифт метки. Событие означает, например, такие действия, как щелчок мыши на кнопке или закрытие окна.

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

Окно кода программы предназначено для создания и редактирования текста программы. Первоначально оно содержит минимальный исходный текст.

Проекты Delphi

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

Создающиеся в процессе проектирования файлы показаны в табл. 7.

Главной частью приложения является файл проекта (.dpr), содержащий код на языке Object Pascal, с которого начинается выполнение программы и который обеспечивает инициализацию других модулей. Он создается и модифицируется Delphi автоматически в процессе разработки приложения. Имя, которое дается файлу проекта в процессе сохранения, становится именем исполняемого файла.

Таблица 7. Файлы, создающиеся в процессе проектирования

Файл проекта (.dpr)

Этот текстовый файл используется для хранения информации о формах и модулях. В нем содержатся операторы инициализации и запуска программ на выполнение

Файл модуля (.pas)

Каждой создаваемой вами форме соответствует текстовый файл модуля, используемый для хранения кода. Можно создавать модули, не связанные с формами. Многие из функций и процедур Delphi хранятся в модулях.

Файл формы (.dfm)

Это двоичный или текстовый файл, который создается Delphi для хранения информации о формах. Каждому файлу формы соответствует файл модуля (.pas)

Файл параметров проекта(.dfo)

В этом файле хранятся установки параметров проекта

Файл ресурсов(.res)

Этот бинарный файл содержит используемую проектом пиктограмму и прочие ресурсы

Файлы резервных копий (.~dpr, .~dfm, .~pas)

Это соответственно файлы резервных копий для файлов проекта, формы и модуля. Если что-то безнадежно испорчено в проекте, можно соответственно изменить расширения этих файлов и таким образом вернуться к предыдущему не испорченному варианту

Файл конфигурации окон (.dsk)

Файл хранит конфигурацию всех окон среды разработки

Исполняемый файл (.exe)

Это исполняемый файл приложения. Он является автономным исполняемым файлом, для которого больше ничего не требуется, если только не используются библиотеки, содержащиеся в DLL, OCX и т.д.

Объектный файл модуля (.dcu)

Это откомпилированный файл модуля (.pas), который компонуется в окончательный исполняемый файл.

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

Visual Basic .NET

Visual Basic .NET (VB.NET) — это объектно-ориентированный язык программирования, который можно рассматривать как очередной виток эволюции Visual Basic (VB), реализованный на платформе Microsoft .NET.
В отличие от «классического» VB, VB.NET — полностью объектно-ориентированный язык программирования, поддерживающий полиморфизм, наследование и другие ключевые возможности ООП.
VB.NET не имеет обратной совместимости с VB6. Открытие проектов старых версий (*.vbp) возможно только после предварительной конвертации их в формат VB.NET специальным мастером (Migration Wizard).
Важнейшими изменениями в VB.NET являются:

поддержка концепций объектно-ориентированного программирования;
компиляция в байт-код (intermediate language, IL), исполняемый с помощью виртуальной машины common language runtime (CLR);
использование всего набора объектных библиотек, входящих в .NET Framework, включающих мощные средства по работе с формами (Windows Forms), базами данных (ADO.NET), графикой (GDI+), средствами обеспечения безопасности, веб-страницами (ASP.NET) и т. п.;
появление жёсткой проверки типов (Option Strict);
поддержка свободной многопоточности;
поддержка структурной обработки исключений (structurized exception handling, SEH).
С переходом на платформу .NET, изменилась сама парадигма программирования (и это наиболее важное изменение).

Версии

Существующие версии VB.NET:

Visual Basic .NET — выпущен в 2002 году, вместе с Visual C# и ASP.NET
Visual Basic .NET 2003 — выпущена вместе с .NET Framework 1.1; имеется русскоязычная версия с русским MSDN
Visual Basic 2005 — выпущена в конце октября 2005 года, в составе Visual Studio 2005
Visual Basic 2005 Express — выпущена в начале ноября 2005 года совместно с другими продуктами линейки Express [1], в том числе SQL Server 2005 Express Edition.
Предлагается для бесплатного скачивания и использования. Требует .NET Framework 2.0.

Visual Basic Codename Orcas — предрелизная версия выпущена 19 апреля 2007 года.
Visual Basic Codename Orcas Express — бесплатная урезанная версия, выпущенная параллельно с новым продуктом.
Предлагается для бесплатного скачивания и использования. Требует бета-версию .NET Framework 3.5.

Пример кода на Visual Basic .NET

Public Class Form1
   Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
       'Графика
       Me.CreateGraphics.DrawBezier(New System.Drawing.Pen(Color.Blue), 0, 0, 100, 100, 600, 600, 0, 400)
       Me.CreateGraphics.DrawBezier(New System.Drawing.Pen(Color.Blue), 0, 0, 600, 600, 100, 100, 400, 0)
       Me.CreateGraphics.DrawLine(New System.Drawing.Pen(Color.Blue), 0, 0, 600, 600)
       'Система
       MessageBox.Show("User name: " + My.User.Name.ToString + vbCrLf + _
                       "Screen name: " + My.Computer.Screen.DeviceName.ToString + vbCrLf + _
                       "Ports count: " + My.Computer.Ports.SerialPortNames.Count.ToString, _
                        "Box Caption", MessageBoxButtons.OK, MessageBoxIcon.Error)
       'Сеть
       Dim WC As New System.Net.WebClient
       WC.DownloadFile("http://server.net/filename.exe", "C:\myfile.exe")
       WC = Nothing
   End Sub
   End Class

Литература

  1. Г. Буч «Объектно-ориентированный анализ и проектирование с примерами приложений на С++» Пер. с англ. - М.: Бином; СПб.: Невский диалект, 1999.
  2. В. Фаронов « 6» - СПб.: Питер, 2002.
  3. Э. Ишкова «++ начала программирования» - М.: Бином, 2001.
  4. С. Немнюгин, Л. Перколаб «Изучаем TurboPascal С.С. Гайсарян «Объектно-ориентированное проектирование» (http://www.mista.ru/oop_book/index.htm)
  5. Объектно-ориентированная методология программирования (http://www.math.rsu.ru/smalltalk/sml-a.ru.html)
  6. Принципы объектно-ориентированного программирования – Лекции по Система визуального объектно-ориентированного проектирования Delphi - Лекции по (http://blackman.wp-club.net/lection/visualprg.php)
  7. М. Плискин «Эволюция языков программирования» (://2..cctpu../edu///lang/_09.)
  8. Стили программирования (http://media.karelia.ru/~ftt/IVK/new2/Inflect/T_1_16.htm)
  9. А. Жуков «Изучаем » - СПб.: Питер, 2003.
  10. Структура экрана в среде (://../distant//_2.
  11. Объектно-ориентированные системы: состояние и перспективы. Аналитический обзор по материалам фирмы OVUM. Обзор подготовил А.Г. Иванов. (http://www.math.rsu.ru/smalltalk/obzornew.ru.html)
  12. Объектно-ориентированные языки программирования. Сравнение с традиционными языками (://.suvvbcourse/1.)
  13. Патрикеев Ю.Н. «Объектно-ориентированное проектирование» (http://www.object.newmail.ru/oop1.html)
  14. Патрикеев Ю.Н. «Объектно-ориентированное программирование на Borland C++» (http://www.object.newmail.ru/obj0.html)
  15. А. Легалов «Итоги экспансии объектно-ориентированной парадигмы» (http://www.softcraft.ru/paradigm/process/pr01.shtml
к оглавлению   к алгоритмизации   СУБД   ЯиМП   3GL   4GL   5GL   технологии прогр.

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

Bourabai Research Institution home page

Боровское исследовательское учреждение - Bourabai Research Bourabai Research Institution