Программирование >>  Программирование на языке c++ 

1 [ 2 ] 3 4 5 ... 159


ries. Непосредственным предшественником языка С++ был язык С с классами (С with classes) [1]. Причины появления языка С++ детально оговорены в видеофильме Bjarne Stroustrup The Design of С++ (University Video Cormnunications, March, 2, 1994). Главное влияние на этот процесс оказал язык Simula, а также стремление улучшить один из наиболее популярных ЯЗЫКОВ программирования С. В основе языка С++ лежат три базовых принципа [1]:

он должен быть лучше, чем язык С;

-♦ он должен поддерживать абстрактные типы данных;

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

Сегодня разработано несколько версий этого языка (l.xx, 2.XX, З.хх, 4.хх). Версия l.xx добавляет в язык С базовые конструкции объектно-ориентированного программирования, такие как классы, простое наследование (single inheritance) и полиморфизм. Версия 2.0, которая появилась в 1989 году, добавляет множественное наследование (multiple inheritance). Версия 3.0 (1990 год) вводит понятие шаблона (template) или параметризированного класса и механизм обработки исключений (exception handling). С начала 90-х годов появились компиляторы языка С++ для персональных компьютеров, среди которых, в первую очередь, следует назвать Turbo С++ и Borland С++ кампании Borland International Inc. и Visual С++ фирмы Microsoft. Сегодня трансляторы языка С++ доступны практически на всех современных компьютерах. Бесспорная эффективность, распространенность и популярность этого объектно-ориентированного языка программирования послужили причиной того, что он выбран за основу в данной книге.

Говоря об объектно-ориентированной технологии нельзя не упомянуть о другом направлении, которое появилось много раньше, мало связано с программированием, но воплощает в себе многие идеи объектно-ориентированного подхода. Речь идет о теории и проектировании цифровых (дискретных) систем и, в первую очередь, о теории конечных автоматов. При этом можно рассмотреть много аналогий. Более того, родоначальник объектно-ориентированного программирования ЯЗЫК Simula, вообще говоря, является специализированным ЯЗЫКОМ для описания задач имитационного модели-



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



1. ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ

1.1. Основные этапы

проектирования программ

Проектирование и последующая поддержка программного обеспечения включает несколько этапов [3, с. 4] (эти этапы называются жизненным циклом программного продукта - softwares life cycle):

1) разработка спецификации (specification);

2) проектирование или конструирование программы (design);

3) доказательство правильности проекта (verification);

4) кодирование, т. е. описание программ на языке программирования (coding);

5) отладка и проверка правильности программ (debugging and testing);

6) доработка и улучшение программ (refining);

7) производство окончательного программного продукта (production);

8) поддержка программного продукта в процессе его использования (maintenance).

Рассмотрим перечисленные этапы более подробно.

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



1 [ 2 ] 3 4 5 ... 159

© 2006 - 2024 pmbk.ru. Генерация страницы: 0.001
При копировании материалов приветствуются ссылки.
Яндекс.Метрика