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

Автор работы: Пользователь скрыл имя, 18 Февраля 2015 в 10:23, курсовая работа

Краткое описание

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

Содержание

Введение
3
1 Разработка программ для ЭВМ
5
2 Средства, используемые для создания программ
16
Заключение
27
Глоссарий
29
Список использованных источников

Прикрепленные файлы: 1 файл

Программировапние 55.doc

— 297.50 Кб (Скачать документ)
  • Семейство универсальных языков (см. разд. 4.5.1.1).
  • Семейство уникальных языков (см. разд. 4,5.1.2).
  • Семейство языков параллельного программирования (см. разд. 4.5.1.3).
  • С-семейство языков (см. разд. 4.5.1.4).
  • Pascal-семейство языков (см. разд. 4.5.1.5).
  • Ada-семейство языков (см. разд. 4.5.1.6).
  • Simula-семейство языков (см. разд. 4.5.1.7).
  • Lisp-семейство языков (см. разд. 4.5.1.8).
  • Prolog-семейство языков (см. разд. 4.5.1.9).

Классификация по ориентации на предметные области

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

  • Языки форматирования текстов (см. разд. 4.5.2.1).
  • Языки разметки (см. разд. 4.5.2.2).
  • Языки скриптов (см. разд. 4.5.2.3).
  • Промежуточные языки программирования (см. разд. 4.5.2.4).
  • Языки программирования агентов (см. разд. 4.5.2.5).
  • Языки создания графики (см. разд. 4.5.2.6).
  • Языки описания аппаратуры (см. разд. 4.5.2.7).
  • Языки описания виртуальной реальности (см. разд. 4.5.2.8).
  • Языки конфигурирования (см. разд. 4.5.2.9).

Классификация по степени абстракции от аппаратуры

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

  • Языки низкого уровня. Такие языки имеют простые машиноподобные команды и осуществляют прямой доступ к памяти. Пример - ассемблер для любой архитектуры.
  • Языки высокого уровня. Языки предоставляют возможность определять сложные структуры данных, доступ к памяти осуществляется через операции. Примерами языков этого уровня являются Pascal, С и Ada.
  • Языки сверхвысокого уровня. Команды исполняются на полностью абстрактной машине, полностью скрыт доступ к памяти. Пример таких языков - Prolog, SETL, APL, Miranda.

 В последние годы развивается объектно-ориентированный подход к программированию. Наиболее полно он реализован в языках Форт и СМОЛТОК. Форт сочетает в себе свойства операционной системы, интерпретатора и компилятора одновременно. Основной чертой языка является его открытость. Программист может легко добавлять новые операции, типы данных и определения основного языка. Форт позволяет поддерживать многозадачный режим работы, использует принцип одновременного доступа программ. К объектно-ориентированным средам разработки программ можно отнести Delphi, Visual Basic, Visual FoxPro.

К функциональным языкам программирования можно отнести языки Лиеп, Пролог И Снобол. Лиеп является инструментальным средством для построения программ с использованием методов искусственного интеллекта. Особенность этого языка заключается в удобстве динамического создания новых объектов. В качестве объектов могут выступать и сами исходные объекты. В настоящее время для Лиепа определились две сферы активного применения: проектирование систем искусственного интеллекта и анализ текстов на естественном языке.

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

  1. назначение разрабатываемой программы;
  2. время выполнения программы;
  3. ожидаемый размер программы – хватит ли объема памяти?
  4. необходимость сопряжения программ с другими пакетами или программами;
  5. возможность и необходимость переноса программы на другие типы компьютеров;
  6. основные типы данных, с которыми будет работать программа;
  7. характер и уровень использования в программе аппаратных средств (дисплея, клавиатуры, НМД и др.);
  8. возможность и целесообразность использования стандартных библиотек программ.

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

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

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

При создании процедур или функций пытаются достичь целей:

1. разделения некоторой большой  общей задачи на несколько  меньших по объему и сложности частных задач;

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

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

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

Структура процедуры, функции приведены в Приложении А.

Непосредственно текст процедуры располагается в разделе объявлений и соглашений основной программы перед оператором BEGIN основной программы. Завершается описание процедуры оператором END;. Начинается блок описания процедуры (функции) оператором BEGIN.

Процедура может содержать также при необходимости и вложенные процедуры, описанные согласно структуре.

Все переменные, метки, константы, типы, описанные внутри процедуры (функции), называемые локальными, доступны только внутри ее, но не в основной программе. Глобальные переменные, типы, константы, метки можно использовать внутри процедуры (функции).

Объявление процедуры:

PROCEDURE <Имя процедуры> (Список  параметров);

Список параметров может отсутствовать.

Объявление функции:

FUNCTION <имя функции>(Список параметров):<Тип  возвращаемого результата>;

Список параметров может отсутствовать.

Вызов процедуры (функции) в основной программе выполняется командой:

<Имя процедуры>(Список параметров);

<Имя функции>(Список параметров);

Если в описании процедуры (функции) список параметров отсутствует, то вызов последней выполняется просто командой:

<Имя процедуры>;

<Имя функции>;

Пример: PROCEDURE INPUT(VAR P1:Integer; P2,P3:Byte);

Здесь: P1 – параметр-переменная ,P2,P3 – параметры-значения, INPUT – имя процедуры.

Перед параметром-переменной всегда ставится VAR. Это значит, что при выполнении процедуры параметр P1 может изменяться в отличие от параметров P2,P3, поглощаемых процедурой.

Рассмотрим пример задачи: сложение двух целых чисел.

1 вариант решения задачи

Program Summa;

Uses Crt;

Var A,B,S: LongInt;

Procedure SSS(Var SUM:LongInt; A,B:LongInt);

Begin

SUM:=A+B;

End;

Begin {Основной блок программы}

ClrScr;

Write(‘Введите числа а и b=’);

ReadLn(A,B);

{Вызов процедуры SSS для поиска  суммы}

SSS(S,A,B); {В глобальную переменную S считывается значение локальной  переменной Sum вызываемой процедуры, значения А и В «поглощаются»  процедурой для суммирования}

WriteLn(‘Сумма А+В=’,S);

ReadKey;

End.

2 вариант решения задачи

Program Summa;

Uses Crt;

Var A,B,S: LongInt;

Function SSS(A,B:LongInt):LongInt;

Begin

SSS:=A+B;

End;

Begin {Основной блок программы}

ClrScr;

Write(‘Введите числа а и b=’);

ReadLn(A,B);

{Вызов функции SSS для поиска  суммы}

S:=SSS(A,B); {В переменную S считывается значение функции SSS, переменные A,B – параметры, необходимые для суммирования}

WriteLn(‘Сумма А+В=’,S);

ReadKey;

End.

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

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

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

В основе ООП лежат три основных понятия:

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

- инкапсуляция: объединение данных  и методов (процедур и функций) в одно целое – объект;

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

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

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

Данные типа объект в программе описываются в разделе описания типов TYPE:

TYPE

{Описание полей объекта}

<Имя>=OBJECT

<поле 1>:<Тип 1>;

<поле 2>:<Тип 2>;

………………..

<поле N>:<Тип N>;

{Описание методов объекта}

PROCEDURE <Имя метода 1>[(параметры)];

……………………..

FUNCTION <Имя метода N>[(параметры)]:<Тип>;

END;

Требования, предъявляемые к полям и методам объекта:

1) Необязательное: поля объекта обрабатываются только с помощью его методов.

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

Описание методов объектов производится по составному имени:

имя объекта. имя метода:

<имя объекта>.<имя метода> [(параметры)];

Begin

<список команд>;

End;

Переменная типа объект называется экземпляром объекта.

Переменная типа объект описывается в разделе описания переменных VAR:

VAR <имя экземпляра>:<имя объекта>;

В основной программе доступ к полям и методам экземпляра объекта производится по составному имени:

<имя экземпляра>:<имя метода>; - обращение к методу экземпляра,

<имя экземпляра>:<имя поля>; - обращение к полю (переменной) экземпляра.

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

Онлайн месседжер

Онлайн месседжер – это программа, которая позволяет обмениваться  текстовыми сообщениями, смайлами и файлами с другими людьми, через интернет. Лучшим примером такой программы является QIP 2012. Кроме общеизвестного и популярного протокола ICQ, QIP имеет поддержку большого количества других протоколов, что делает его универсальным и функциональным месседжером. Удобная программа чтобы переписываться с друзьями в режиме онлайн.

Голосовая и видеосвязь

Чтобы ощутить все преимущества интернета, вам поможет голосовая и видеосвязь. Наверняка вы уже слышали про такую программу как Skype. Благодаря ей вы сможете совершать бесплатные голосовые и видеозвонки своим друзьям, знакомым и родственникам, у которых также установлена эта программа.

Автоматический переключатель раскладки клавиатуры

Информация о работе Средства создания программных продуктов