Green-sell.info

Новые технологии
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

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

Технологии программирования (модульное, структурное, объектно-ориентированное)

Дата добавления: 2014-11-27 ; просмотров: 1814 ; Нарушение авторских прав

Технологии прграммирования реализуются с помощью систем программирования, под которыми понимается комплекс средств, предназначенный для создания и эксплуатации программ на конкретном языке программирования. Система программирования включает:

· входной язык программирования;

· редактор для написания и модификации текстов программ на алгоритмическом языке;

· транслятор с входного языка на язык машины;

· библиотеку стандартных подпрограмм;

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

d). Case – технологии (Computer-aided software engineering).

g). Интернет-программирование (web-программирование).

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

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

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

Разработка программы ведётся пошагово, методом «сверху вниз». Сначала пишется текст основной программы, в котором, вместо каждого связного логического фрагмента текста, вставляется вызов подпрограммы, которая будет выполнять этот фрагмент.

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

Если будет получена правильная последовательность вызова программных модулей, то это означает, что общая структура программы верна. После этого, подпрограммы-заглушки последовательно заменяются на реально работающие подпрограммы. Разработка каждой из них ведётся тем же методом, что при создании основной программы. Разработка заканчивается тогда, когда не останется ни одной «заглушки», которая не была бы удалена, что представляется следующим текстом:

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

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

Структурное программирование иначе называют еще программированием без операторов безусловного перехода (GOTO). Неправильное, необдуманное, произвольное использование которых приводит к получению запутанных, плохо структурированных программ, которые практически невозможно понять.

Структурное программирование сделало тексты программ читабельными. Облегчилось их понимание, стало возможным разработка программ в промышленном режиме, когда программу может без особых затруднений понять не только её автор, но и другие программисты. Это позволяет разрабатывать и сопровождать крупные программные комплексы силами больших коллективов разработчиков, даже в условиях изменений в составе персонала. Следует отметить, что многие языки, например Pascal, специально ориентированы на структурное программирование.

Структурное, модульное, объектно-ориентированное программирование, облачные технологии

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

Система программирования включает:

• входной язык программирования;
• редактор для написания и модификации текстов программ
на алгоритмическом языке;
• транслятор с входного языка на язык машины;
• редактор связи;
• библиотеку стандартных подпрограмм;
• средства отладки.

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

1. Структурное.
2. Модульное.
3. Объектно-ориентированное.
4. Case – технологии (Computer-aided software engineering).
5. Функциональное.
6. Логическое.
7. Интернет-программирование (web-программирование).

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

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

Объектно-ориентированное программирование
Объединение специфических понятий языков
программирования высокого уровня, таких как — тип данных,
процедура, функция, запись и относящихся к одному
определенному объекту алгоритма, заложило основу для
возникновения объектно-ориентированного программирования.
Его специфика заключается в рассмотрении данных в
неразрывной связи с методами их обработки, что позволяет
условно записать следующее:
Объект = Данные + Операции

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

Объектно-ориентированное программирование представляет следующие
преимущества:

• удобный и простой способ введения новых понятий, наиболее близких к
понятиям реального мира;
• простая разработка компонент многократного применения;
• легкая модифицируемость (адаптируемость) программ;
• локализация свойств и поведения объектов в одном месте.

Каждый объект характеризуется состоянием (свойства объекта) и
возможностью выполнять некоторые действия (методы объекта).
Объектно – ориентированное программирование обычно используется при
разработке крупных программных комплексов коллективом программистов.
Языками, поддерживающими данную технологию являются: C++, Java, Delphi и
многие другие.

Объектно-ориентированное программирование. Процедурное, модульное программирование

Процедурное, модульное программирование

Процедурное программирование основано на использовании следующих методов (приёмов) программирования.

Метод декомпозиции (нисходящего проектирования) – это разделение программы на подпрограммы простейшей структуры и представление программы в виде иерархии подпрограмм.

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

Метод структурного программирования подпрограмм, заключается в следующем:

— разделение подпрограммы на вложенные блоки, что позволяет локализовать переменные и операторы их обработки, структурировать подпрограмму;

Читать еще:  Программирование com порта в windows

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

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

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

Объектный подход к программированию использован в новых версиях языков программирования Pascal, C++, Modula, Java.

Основные методы объектно-ориентированного программирования это инкапсуляция, наследование, полиморфизм.

Инкапсуляция — это объединение данных и функций для работы с этими данными в абстрактные типы данных — классы. Переменные типа класс называются объектами.

Преимущества инкапсуляции проявляются в следующем:

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

— Управление доступом к элементам класса. Атрибуты доступа private, protected, public объявляют элементы класса соответственно закрытыми, защищенными и открытыми для доступа.

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

Наследование (inheritance) — это порождение новых абстрактных типов данных (производных классов) на основе существующих абстрактных типов данных (базовых классов), причём производный класс наследует данные и функции базового класса, а также имеет собственные данные и функции.

Преимущества наследования проявляются в следующем:

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

— упрощение программирования, т.к. наследуемые и собственные элементы класса находятся в одной иерархии классов и не разбросаны по всей программе;

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

Полиморфизм (polymorphism) означает способность объектов классов, связанных наследованием, реагировать различным образом на одно и то же сообщение.

Полиморфизм имеет следующие виды.

Перегрузка операций — это переопределение действий операций применительно к объектам конкретных классов.

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

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

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

Параметрический полиморфизм — это механизм использования обобщенного определения функции или класса (шаблона) для автоматической генерации новых функций или классов для различных типов данных.

Структурное, модульное, объектно-ориентированное программирование, облачные технологии

Как организовать дистанционное обучение во время карантина?

Помогает проект «Инфоурок»

Выбранный для просмотра документ поурочный план.docx

Тема : Структурное, модульное, объектно-ориентированное программирование, облачные технологии

Цель урока. Познакомить учащихся с базовыми понятиями объектно-ориентированного программирования

Сформировать общее представление об объектно-ориентированном программировании

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

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

Объяснение нового материала

В течение долгого времени основным методом программирования было структурное программирование, в котором основой программ являлись функции и процедуры, т.е. действия. Как вы имели возможность убедиться в 9 классе, программист определял, какие действия и вычисления нужны для решения поставленной задачи, затем описывал эти действия в виде процедур и функций и объединял их в программу. Созданная таким образом компьютерная программа отличалась четким алгоритмом работы — последовательностью действий по достижению поставленной цели.

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

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

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

Как уже говорилось выше, при использовании ООП основными действующими лицами являются не переменные, а объекты. Рассмотрим пример для пояснения этого термина ( Слайд 1).

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

R — радиус круга:

X, Y — координаты центра крута;

Color — цвет круга.

Для того чтобы нарисовать этот круг на экране, нужна процедура, которую можно назвать Draw. Она будет изображать круг с заданными параметрами R, X. Y, Color.

Недостаток стандартного метода заключается в том, что данные в этом случае не являются взаимосвязанными. Предположим, что нужно нарисовать не один, а три круга (например, снеговика) ( Слайд 2). При использовании стандартного метода программирования придется выбирать между двумя способами реализации этого примера. Первый способ (Слайд 3) завести для каждого круга свой набор параметров R, X, Y, Color, а затем вызывать процедуру Draw с каждым из этих наборов. Недостаток данного способа очевиден: если нужно рисовать много кругов, то понадобится большое количество переменных. Это приведет к тому, что программа станет очень громоздкой.

Второй способ (Слайд 4) заключается в том, чтобы для каждого нового круга задавать в программе свои значения параметров R, X, Y, Color, но при этом значения параметров для предыдущего круга будут теряться. Недостаток способа состоит в потере значений параметров всех кругов, за исключением последнего.

Если в этой программе ограничиться изображением снеговика, то недостаток второго способа не будет иметь значения. Но когда создается значительное по размеру приложение, то программисту желательно представлять себе возможные изменения и дополнения, которые необходимо будет реализовать в будущем. В рассматриваемом примере со снеговиком возможно несколько изменений. (Слайд 5)

Читать еще:  Языки системного программирования

Предусмотреть возможность перемещения снеговика — процедура Move и сделать возможным изменение цвета для всех кругов, из которых состоит снеговик — процедура ChangeColor. Задача усложняется, соответственно добавляются новые переменные.

Теперь данный пример рассмотрим с точки зрения ООП (Слайд 6) . В этом случае вместо огромного количества переменных будет несколько объектов. Вначале все круги можно представить в виде самостоятельных объектов с одинаковой структурой, которые отличаются друг от друга лишь значениями параметров. Действие процедур Draw, Move и ChangeColor, применительно к каждому их них, также является идентичным. Иначе говоря, в данном случае все круги являются объектами, которые имеют одинаковую структуру (радиус, координаты центра, цвет) и ведут себя схожим образом при выполнении любого действия (рисование, перемещение, изменение цвета), т.е. все они принадлежат одному и тому же семейству. Далее приведенные рассуждения будут рассмотрены в терминах ООП.

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

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

Класс — описание множества объектов и выполняемых над ними действий.

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

Вернемся к рассматриваемому примеру с рисованием снеговиков (Слайд 8). Пусть необходимо нарисовать снеговика с глазами, которые должны время от времени мигать. Все остальные свойства и методы у объектов-глаз должны быть такими же, как и у объектов-кругов, принадлежащих классу Round. Иначе говоря, глаза снеговика тоже нужно перемещать вместе с остальными кругами, а также должна оставаться возможность изменения их цвета. Для реализации этого дополнения можно создать еще один класс — Eyes (глаза), в котором будут те же свойства и методы, что и в Round, но еще будет добавлен метод Blink (мигание). Однако при этом придется для класса Eyes заново создавать все свойства и методы, которые уже были описаны для Round.

Чтобы не выполнять подобную двойную работу, в ООП существует механизм наследования. Этот механизм реализуется путем создания иерархической структуры классов. Вначале создается класс Round, для которого описываются все свойства и методы. Он располагается в основании иерархической структуры. Затем создается еще один класс под названием Eyes, в котором описывается новый метод Blink, а все остальные свойства и методы остаются без изменений, т.е. класс Eyes наследует все свойства и методы Round и. в то же время, включает в себя дополнительный метод Blink. В иерархической структуре Eyes следует за классом Round, и в этом случае говорят, что Round является предком ( родительским классом ) для Eyes. В свою очередь. Eyes является потомком (или дочерним классом) для Round.

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

Таким образом, применение наследования в ООП ведет к значительному уменьшению объема программы и повышению ее функциональности.

Следующее основное понятие — полиморфизм (Слайд 9) . Термин полиморфизм своим происхождением обязан двум греческим словам: poly (много) и morphos (форма). Таким образом «полиморфизм» переводится как «множество форм».

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

Для реализации приведенных требований следует создать класс Rect (rectangle — прямоугольник), являющийся потомком Round, и применительно к нему X и Y — это координаты выбранной вершины прямоугольника, a R — его длина (или ширина). Но в этом случае придется описать еще одно свойство для обозначения ширины (или длины) Очевидно, что при работе с подобными классами легко может возникнуть путаница в использовании свойств, и причина этого — узкая направленность класса Round, который ориентирован на работу только с определенной геометрической фигурой.

Чтобы сделать Round более универсальным, т.е. пригодным для изображения большего числа геометрических фигур, следует изменить его свойства следующим образом (Слайд 10) . Вместо радиуса и координат центра нужно описать такие свойства:

Тор — координата верхний границы фигуры;

Left — координата левой границы фигуры;

Height — высота фигуры;

Width — ширина фигуры.

По этим свойствам легко можно определить недостающие координаты для любой фигуры (Слайд 11).

Теперь на основе предка Round с описанным выше новым набором свойств можно создать потомка Rect для изображения прямоугольников. Однако методика рисования в этом случае должна отличаться от той, которая использовалась при работе с кругами. Т.е. необходимо, чтобы для Rect содержимое унаследованного метода Draw отличалось от родительского, в противном случае, если вызывать Draw для объекта, принадлежащего классу Rect, то на экране все равно будет нарисован круг, а не прямоугольник (Слайд 12).

Чтобы этого избежать, необходимо для Rect описать свой метод Draw. Тогда для объекта, принадлежащего классу Round, вызов Draw будет означать изображение на экране круга, а для объекта из Rect — прямоугольника. Т.е. методы с одним и тем же именем Draw отвечают за разные действия в зависимости от того, объекту какого класса необходимо выполнить рисование. Подобная ситуация в ООП носит название полиморфизма. Полиморфизм (polymorphism, дословно — «многообразие форм») — свойство классов решать схожие задачи различными способами или, иначе говоря, возможность использовать одно имя для нескольких методов, имеющих сходное назначение.

1. Базовым понятием объектно-ориентированного программирования является

2. Объектно-ориентированное программирование — это :

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

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

3. Каждый объект является экземпляром определенного класса

4. Класс может использоваться для создания

Читать еще:  Назначение систем программирования

более пяти экземпляров

5. Инкапсуляция — это :

контролируемое сокрытие информации о внутренней структуре класса

заключение объекта в оболочку (капсулу)

это совокупность объектов с определенными свойствами и поведением

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

инструкции по применению объектов в программе

действия, которые можно выполнить над объектом или которые сам объект может выполнить

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

8. Наследование — это :

преемственность программ, создание программ с использованием стандартных подпрограмм

порождение класса от другого класса с наследованием полей, методов и свойств своего родителя

модернизация программы для новой операционной системы с сохранением возможностей и свойств

9. Полиморфизм — это :

возможность объектов принимать различные формы

свойство классов решать схожие задачи различными способами

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

• Алгоритмическое или процедурное

а) Алгоритмическое программирование

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

b ) Структурное программирование

При создании средних по размеру приложений (несколько тысяч строк исходного кода) используется структурное программирование. Его идея заключается в том, что структура программы должна содержать структуру решаемой задачи, чтобы алгоритм решения был явно виден из исходного текста. В качестве средства создания программы используется подпрограмма – набор операторов, выполняющих нужное действие и не зависящих от других частей исходного кода. Программа разбивается на множество мелких подпрограмм (занимающих до 50 операторов – критический порог для быстрого понимания цели программы), каждая из которых выполняет одно из действий, предусмотренных исходным заданием. Комбинируя эти программы, удается формировать итоговый алгоритм уже не из простых операторов, а из законченных блоков кода, имеющих определенную смысловую нагрузку, причем обращаться к таким блокам можно по названиям. Получается, что подпрограммы – это новые операторы или операции языка, определяемые программистом. Подпрограммы бывают двух видов процедуры и функции. Процедура просто выполняет группу операторов. Функция — выполняет группу операторов, вычисляет некоторое значение и передает его обратно в главную программу. При этом значение имеет определенный тип.

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

Наличие подпрограмм позволяет вести проектирование и разработку приложения сверху вниз – такой подход называется нисходящим проектированием . При этом задача разбивается на большое число мелких подзадач, каждая из которых решается своей процедурой или функцией (декомпозиция задачи). При этом проектирование программы идет по принципу сверху вниз: сначала определяются необходимые для решения про­ граммы модули, их входы и выходы, а затем уже эти модули разрабатываются. Такой под ход вместе с локальными именами переменных позволяет разрабатывать проект силами большого числа программистов.

Подпрограммы могут быть вложенными , если она вызывается не только из главной программы, но и из любых подпрограмм. Допускается вызов подпрограммы из самой себя – такой прием называется рекурсией .

Структура подпрограммы: заголовок с параметрами, тело подпрограммы (операторы, которые будут выполняться при ее вызове), завершение подпрограммы.

Параметры, которые указываются в заголовке программы, могут быть

• формальными , которые нужны только для описания тела программы;

• фактическими — конкретные значения, которые указываются в момент вызова подпрограммы.

как доказал Э. Дейкстра, любой алгоритм можно реализовать, используя лишь три управ ляющие конструкции:

Не должно быть безусловных переходов!

Правила композиции, используемые при структурном подходе к составлению алгоритмов:

а) альтернативный выбор

с) Объектно-ориентированный подход к программированию — это подход к разра­ ботке программного обеспечения, основанный на объектах.

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

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

Важнейшая характеристика класса – возможность создания на его основе новых классов с наследованием всех свойств и методов добавления собственных. Класс, не имеющий предшественника, называют базовым. Например, класс «животные» имеет свойства «название», «размер», методы «идти», «размножаться». Созданный на его основе класс «кошка» наследует все его свойства и методы, к которым дополнительно добавляется свойство «окраска» и метод «пить».

Свойство объектов переопределять методы наследуемого класса называется полиморфизмом . Например, в большинстве случаев методы базового класса у классов-наследников приходится переопределять – объект класса «кошка» выполняет метод «идти» совсем не так как «амеба». Все переопределяемые методы по названию (написанию) будут совпадать с методами базового объекта. Компилятор по типу объекта (его классу) распознает, какой конкретный метод надо использовать. И не вызовет для класса «амеба» метод «идти» класса «кошка».

Система программирования — это система для разработки новых программ на конкретном языке программирования.

Современные системы программирования обычно предоставляют пользователям мощные и удобные средства разработки программ. В них входят:

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

Популярные системы программирования — Turbo Basic , Quick Basic , Turbo Pascal , Turbo C .

В последнее время получили распространение системы программирования, ориентированные на создание Windows-приложений :

  • пакет Borland Delphi (Дельфи) — блестящий наследник семейства компиляторов Borland Pascal, предоставляющий качественные и очень удобные средства визуальной разработки. Его исключительно быстрый компилятор позволяет эффективно и быстро решать практически любые задачи прикладного программирования.
    • пакет Microsoft Visual Basic — удобный и популярный инструмент для создания Windows-программ с использованием визуальных средств. Содержит инструментарий для создания диаграмм и презентаций .
  • пакет Borland C++ — одно из самых распространённых средств для разработки DOS и Windows приложений.
Ссылка на основную публикацию
Adblock
detector