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

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

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

Инструментальные средства могут представлять собой или набор отдельных программ (Software tools) для выполнения специальных задач проектирования программного обеспечения, или интегрированную среду разработки (IDE — Integrated development environment) с графическим интерфейсом со встроенными инструментами проектирования.

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

Установка такого SDK на компьютер позволяет программисту использовать дополнительные возможности для написания программного обеспечения. Существуют SDK, ориентированные на разработку целевого программного обеспечения – например, для написания графических программ или программ для игровых приставок и т.п.

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

Стандартный набор инструментальных средств

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

  1. Специализированные редакторы текстов предназначены для ввода и редактирования исходного текста программы. Обладают такими возможностями как подсветка синтаксиса языка различными цветами, подсвечивание текстовых ошибок, поддержка оформления структуры текста и генерации части текста в соответствии с правилами языка. Редакторы могут быть как моноязычными, поддерживающими только лексику одного языка программирования, так и мультиязычными, могут поставляться в виде отдельного приложения или встраиваться в интегрированную среду разработки (IDE).
  2. Программы-компиляторы транслируют текст программы с языка программирования в машинный код (исполняемый файл) без её выполнения. Компилятор может в процессе преобразования оптимизировать код программы с учетом версии языка программирования и особенностей аппаратной платформы, для которой производится трансляция.
  3. Программы-компоновщики производят компоновку программы из нескольких модулей, подключают нужные библиотеки, определяют ссылки между модулями (то есть общие функции, переменные, данные) и связывают модули между собой по этим ссылкам. В результате компоновщик выдаёт исполняемый файл.
  4. Программы-отладчики предназначены для анализа выполнения и выявления ошибок в работе программы. Они предоставляют возможность или пошагового отслеживания работы программы, или в заранее заданных точках остановки с проверкой значений всех переменных, состояний регистров, стеков, ячеек памяти и других параметров.
  5. Программы для создания инсталляторов требуются для разработки дистрибутивов программ. Причём для разных платформ и операционных систем используются разные дистрибутивы, учитывающие особенности этих платформ. Обычно дистрибутивы программ создаются с интерфейсом “мастера”, то есть пошагового диалога с пользователем.
  6. Программы создания справочной системы позволяют организовывать файлы помощи с нужной структурой, содержанием, возможностью поиска, контекстными подсказками, перекрёстными ссылками.
  7. Также можно выделить специализированный набор инструментальных средств, которые используются при разработке только некоторых программ или для изучения структуры построения кода программ сторонних производителей. К этому набору программ относятся дизассемблеры, декомпиляторы, редакторы ресурсов, hex-редакторы.
Читайте также:  Метод математического программирования пример

Большинство вышеперечисленных инструментальных средств обычно объединяются в одну оболочку – интегрированную среду разработки (IDE) имеющую графический интерфейс. Такое решение позволяет увеличить производительность программистов за счёт унификации инструментальных средств и отсутствия необходимости переключения между отдельными компонентами.

Известно множество IDE, например, Microsoft Visual Studio, Visual Basic, Borland Delphi, Borland C++ Builder, Embarcadero RAD Studio, NetBeans, Eclipse, Xcode, DrPython, IntelliJ IDEA и другие.

Дополнительные инструменты для эффективной разработки ПО

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

Ещё в настоящее время получили широкое распространение CASE-технологии компьютерных систем программной инженерии (CASE – Computer-Aided System Engineering) – это программные комплексы, автоматизирующие весь технологический процесс жизненного цикла программного обеспечения.

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

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

По своему функциональному назначению CASE-средства можно разделить на следующие категории:

  • средства анализа и проектирования (BPwin, CASE.Аналитик, Silverrun, DESIGNER/2000, Vantage Team Builder);
  • средства проектирования баз данных и файлов (ERwin, S-Designor, PRO-IV, CASE.Синтез++);
  • средства программирования (SQL Windows, Power Builder, Delphi);
  • средства сопровождения и реинжиниринга (PRO-IV, Rational Rose, Object Team);
  • средства окружения (PVCS, SoDA);
  • средства управления проектом (MS Project, SE Companion).

Источник

6.2. Инструментальные средства программирования

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

К средствам для создания приложений можно отнести:

1. Языки, системы программирования(например, C, Pascal, Basic) иинструментальные среды для разработки приложений(например, C++, Delphi, Visual Basic, Java), которые включают средства визуального программирования.

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

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

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

Язык программирования— это формализованный язык, предназначенный для записи алгоритмов решения задач на ЭВМ.

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

машинные коды(наборы двоичных данных) — воспринимаются аппаратной частью компьютера;

машинно-ориентированные(ассемблеры) — отражают структуру конкретного типа компьютеров;

алгоритмические языки(Fortran, Basic, Pascal, C и др.) — отражают структуру алгоритма и не зависят от архитектуры компьютера;

процедурно-ориентированные языки— используются для описания программы как совокупности процедур (подпрограмм);

проблемно-ориентированные языка(Lisp, Prolog и др.) — используются для решения задач определенного класса.

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

линейные языки(набор операторов);

процедурные языки(Fortran,Cobol,Algol,Basic,Pascal,Cи др.);

логические языки(Prolog и др.);

объектно-ориентированные языки(C++, JAVA, Delphi, Visual Basic и др.);

языки запросов к базам данных(стандарт всех языков — SQL 92);

языки сценариев (скриптов) (Visual Basic Script, JAVA Script и др.);

языки макропрограммирования (Visual Basic for Application).

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

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

Компилятор(англ. compiler — составитель, собиратель) читает всю программу целиком, делает ее перевод и создает объектный модуль на машинном языке (из него потом создается законченный вариант программы).

Интерпретатор(англ.interpreter— истолкователь, устный переводчик) переводит и выполняет программу построчно. Программа, обрабатываемая интерпретатором, должна заново переводиться на машинный язык при каждом очередном ее запуске.

Откомпилированные программы работают быстрее, но интерпретируемые проще исправлять и изменять.

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

Источник

Оцените статью