Разработка прикладных программ
Создание любой прикладной программы разбивается на несколько этапов:
- создание исходного текста программы на каком-либо языке программирования;
- создание исполнимого кода программы;
- отладка программы.
На персональных компьютерах все этапы выполняются, как правило, с помощью какой-либо интегрированной среда разработки (например, Microsoft Visual Studio), в которую включены средства для выполнения всех этапов. Именно поэтому ониназываются интегрированными средами. Такие интегрированные среды имеются и в UNIX-подобных системах, например, NetBeans IDE. Однако использование таких сред сталкивается с рядом ограничений:
- удаленное рабочее место должно работать в графическом режиме;
- соединение с удаленным сервером должно быть достаточно скоростным;
- сетевой трафик не должен стоить слишком дорого.
Кроме того, интегрированные среды не ориентированы на разработку параллельных программ для систем с распределенной памятью. Поэтому на высокопроизводительных вычислительных системах каждый из этапов, чаще всего, выполняется независимо с привлечением наиболее подходящих, в каждой конкретной ситуации, средств.
Подготовка исходных текстов
Исходные тексты программ можно готовить, либо непосредственно на удаленной вычислительной системе, с использованием имеющихся на ней средств, либо на своем персональном компьютере, с последующей пересылкой файла с помощью транспортного протокола. Для написания текста программы можно воспользоваться любым текстовым редактором, установленным на управляющем сервере вычислительной системы. На UNIX-подобных системах имеется множество редакторов, которые делятся на два типа – терминальные редакторы, работающие в терминальных окнах (vi, fpted, mc), и высокоуровневые редакторы, работающие в графических оболочках (gedit, nedit). Многие редакторы в системах Unix изначально создавались как специализированные редакторы для написания программ и поэтому поддерживают, так называемую, подсветку синтаксиса. Когда в этом редакторе открывается текст программы, редактор автоматически распознает язык программирования и выделяет различные языковые конструкции и функции языка программирования разным цветом, что облегчает восприятие программы.