Исполнимый код - это законченная программа, которую можно запустить на любом компьютере, где установлена операционная система, для которой эта программа создавалась. Как правило, итоговый файл имеет расширение .ЕХЕ или .СОМ.
В последнее время получили распространение визуальный методы программирования (с помощью языков описания сценариев), ориентированные на создание Windows-приложений. Этот процесс автоматизирован в средах быстрого проектирования. При этом используются готовые визуальные компоненты, которые настраиваются с помощью специальных редакторов.
Наиболее популярные редакторы (системы программирования программ с использованием визуальных средств) визуального проектирования:
1) Borland Delphi - предназначен для решения практически любых задачи прикладного программирования.
2) Borland C++ Builder - это отличное средство для разработки DOS и Windows приложений.
3) Microsoft Visual Basic - это популярный инструмент для создания Windows-программ.
4) Microsoft Visual C++ - это средство позволяет разрабатывать любые приложения, выполняющиеся в среде ОС типа Microsoft Windows
Таким образом, сущность инструментального программного обеспечения заключается в создании любой исполняемой программы , путем преобразования формально логических выражений в исполняемый машинный код, а также его контроль и корректировка.
Для инструментального программного обеспечения, как особой разновидности программного обеспечения, характерны общие и частные
функции, как и для всего программного обеспечении в целом. Общие функции рассмотрены нами выше, а специализированными функциями, присущими только данному типу программ, являются:
1. Создание текста разрабатываемой программы с использованием специально установленных кодовых слов (языка программирования), а также определенного набора символов и их расположения в созданном файле - синтаксис программы.
2. Перевод текста создаваемой программы в машинно-ориентированный код, доступный для распознавания ЭВМ. В случае значительного объема создаваемой программы, она разбивается на отдельные модули и каждый из модулей переводится отдельно.
3. Соединение отдельных модулей в единый исполняемый код, с соблюдением необходимой структуры, обеспечение координации взаимодействия отдельных частей между собой.
4. Тестирование и контроль созданной программы, выявление и устранение формальных, логических и синтаксических ошибок, проверка программ на наличие запрещенных кодов, а также оценка работоспособности и потенциала созданной программы.
Исходя из задач, поставленных перед инструментальным программным обеспечением, можно выделить большое количество различных по назначению видов инструментального программного обеспечения:
1) Текстовые редакторы
2) Интегрированные среды разработки
3) SDK
4) Компиляторы
5) Интерпретаторы
6) Линковщики
7) Парсеры и генераторы парсеров (см. Javacc)
8) Ассемблеры
9) Отладчики
10) Профилировщики
11) Генераторы документации
12) Средства анализа покрытия кода
13) Средства непрерывной интеграции
14) Средства автоматизированного тестирования
15) Системы управления версиями и др.
Следует отметить, что оболочки для создания прикладных программ создаются также инструментальными программами и поэтому могут быть отнесены к прикладным программам. Рассмотрим кратко назначения некоторых инструментальных программ.
Текстовые редакторы.
Текстовый редактор — компьютерная программа, предназначенная для обработки текстовых файлов, такой как создание и внесение изменений.
Условно выделяют два типа редакторов: потоковые текстовые редакторы и интерактивные.
1) Потоковые текстовые редакторы
Потоковые текстовые редакторы представляют собой компьютерные программы, которые предназначены для автоматизированной обработки входных текстовых данных, полученных из текстового файла, в соответствии с заранее заданными пользователями правилами. Чаще всего правила представляют собой регулярные выражения, на специфичном для данного конкретного текстового редактора диалекте. Примером такого текстового редактора может служить редактор Sed.
2) Интерактивные текстовые редакторы
Интерактивные текстовые редакторы - это семейство компьютерных программ предназначенных для внесения изменений в текстовый файл в интерактивном режиме. Такие программы позволяют отображать текущее состояние текстовых данных в файле и производить над ними различные действия.
Часто интерактивные текстовые редакторы содержат значительную дополнительную функциональность, призванную автоматизировать часть действий по редактированию, или внести изменение в отображение текстовых данных, в зависимости от их семантики. Примером функциональности последнего рода может служить подсветка синтаксиса.
Текстовые редакторы предназначены для создания и редактирования текстовых документов. Наиболее распространенными являются MS WORD, Лексикон. Основными функциями текстовых редакторов являются:
1) работа с фрагментами документа,
2) вставка объектов созданных в других программах
3) разбивка текста документа на страницы
4) ввод и редактирование таблиц
5) ввод и редактирование формул
6) форматирование абзаца
7) автоматическое создание списков
8) автоматическое создание оглавления.
Известны десятки текстовых редакторов. Наиболее доступными являются NOTEPAD(блокнот), WORDPAD, WORD. Работа конкретного редактора текста определяется обычно функциями, назначение которых отражено в пунктах меню и в справочной системе.
Интегрированная среда разработки
Интегрированная среда разработки, ИСР— система программных средств, используемая программистами для разработки программного обеспечения (ПО). Обычно среда разработки включает в себя:
1) текстовый редактор
2) компилятор и/или интерпретатор
3) средства автоматизации сборки
4) отладчик.
Иногда содержит также средства для интеграции с системами управления версиями и разнообразные инструменты для упрощения конструирования графического интерфейса пользователя. Многие современные среды разработки также включают браузер классов, инспектор объектов и диаграмму иерархии классов — для использования при объектно-ориентированной разработке ПО. Хотя, и существуют среды разработки, предназначенные для нескольких языков программирования — такие, как Eclipse, NetBeans, Embarcadero RAD Studio, Qt Creator или Microsoft Visual Studio, обычно среда разработки предназначается для одного определённого языка программирования - как, например, Visual Basic, Delphi, Dev-C++.
Частный случай ИСР — среды визуальной разработки, которые включают в себя возможность визуального редактирования интерфейса программы.
SDK (от англ. SoftwareDevelopmentKit) или «devkit» — комплект средств разработки, который позволяет специалистам по программному обеспечению создавать приложения для определённого пакета программ, программного обеспечения базовых средств разработки, аппаратной платформы, компьютерной системы, видеоигровых консолей, операционных систем и прочих платформ.
Программист, как правило, получает SDK непосредственно от разработчика целевой технологии или системы. Часто SDK распространяется через Интернет. Многие SDK распространяются бесплатно для того, чтобы поощрить разработчиков использовать данную технологию или платформу.
Поставщики SDK иногда подменяют термин Software в словосочетании Software Development Kit на более точное слово. Например, «Microsoft» и «Apple» предоставляют Driver Development Kits (DDK) для разработки драйверов устройств, а «PalmSource» называет свой инструментарий для разработки «PalmOS Development Kit (PDK)».
1) Adobe Flex
2) DirectX
3) Eclipse
4) iPhone SDK
5) Java Development Kit
6) Opera Devices SDK
7) Source SDK
Компиляторы.
Компилятор —
1) Программа или техническое средство, выполняющее компиляцию.
2) Машинная программа, используемая для компиляции.
3) Транслятор, выполняющий преобразование программы, составленной на исходном языке, в объектный модуль.
4) Программа, переводящая текст программы на языке высокого уровня в эквивалентную программу на машинном языке.
5) Программа, предназначенная для трансляции высокоуровневого языка в абсолютный код или, иногда, в язык ассемблера. Входной информацией для компилятора (исходный код) является описание алгоритма или программа на проблемно-ориентированном языке, а на выходе компилятора — эквивалентное описание алгоритма на машинно-ориентированном языке (объектный код).
Компиляция —
1) Трансляция программы на язык, близкий к машинному.
2) Трансляция программы, составленной на исходном языке, в объектный модуль. Осуществляется компилятором.
Компилировать — проводить трансляцию машинной программы с проблемно-ориентированного языка на машинно-ориентированный язык.
1) Векторизующий. Транслирует исходный код в машинный код компьютеров, оснащённых векторным процессором.
2) Гибкий. Составлен по модульному принципу, управляется таблицами и запрограммирован на языке высокого уровня или реализован с помощью компилятора компиляторов.