Партнерка на США и Канаду по недвижимости, выплаты в крипто
- 30% recurring commission
- Выплаты в USDT
- Вывод каждую неделю
- Комиссия до 5 лет за каждого referral
,
Всероссийский научно-исследовательский институт
автоматизации управления в непромышленной сфере, Москва
Создание современных средств разработки приложений для Linux-систем
Данная работа посвящена проблеме создания средств разработки приложений.
Исторически сложился подход к созданию средств разработки для Unix-подобных систем, подразумевающий ориентацию на консольные утилиты, соответствующие принципу «одна утилита - одна задача» [1]. Примером могут являться отладчики, профайлеры, компиляторы, отладочные библиотеки.
С ростом объема, а не сложности, задач, делаются первые попытки автоматизации части рутинных операций, появляющихся у разработчика. С появлением моды на графический интерфейс долгое время господствовал подход, пропагандирующий реализацию путем разделения программного средства на консольную и графическую. При наличии определенных преимуществ у графического интерфейса, он не решал и не решает существенную часть проблем.
Основная сложность сегодня – «сложность объема». Большой размер достаточно простого исходного кода сложно управляем, и контролируем, только если имеет достаточно регулярные принципы построения. А это – необходимое условие для обработки кода без участия человека.
С другой стороны, появляется «сложность предметной области». Универсальные средства разработки для покрытия все более и более широкого спектра задач реализуют все более и более абстрактный подход к построению программы. Однако это существенно увеличивает сложность самого средства разработки. Начиная с некоторого времени, наметилась тенденция уменьшения скорости роста сложности и размера средств разработки, переход с экстенсивного пути на интенсивный путь.
Современные Linux-подобные операционные системы испытывает на себе все описанные проблемы. Являясь, с одной стороны, универсальными операционными системами, они используется на каждой конкретной машине с узкоспециализированными целями.
Начатые в 2003 году работы по созданию средства разработки привели к созданию RAD среды, пригодной для разработки широкого круга приложений. Особое внимание уделялось приоритетным направлениям – созданию ГИП и взаимодействию с базами данных.
При планировании дальнейшего развития был учтен полученный опыт. Решением, которое позволяет преодолеть возрастание сложности среды разработки вместе с сохранением возможности настройки среды на решение узкоспециализированных проблем, является микроядерный подход к построению средства разработки. Каждая возможность среды реализуется в виде отдельного независимого модуля, который подключается, при необходимости, к другим модулям, в строго определенных точках подключения. Это упорядочивает внутренние взаимосвязи и уменьшает связность программы. С другой стороны, это позволяет «собирать» на каждом рабочем месте необходимый набор компонентов для решения конкретной задачи.
Использование микроядерного подхода к построению средства разработки позволяет решить проблему сохранения данных пользователя при аварийном завершении работы программы за счет введения отдельного модуля, работающего в параллельном процессе и наблюдающего за функционированием основной среды разработки. При возникновении сбоев в работе «наблюдатель» способен восстановить работоспособность среды, или, по крайней мере, предотвратить потерю данных пользователя.
Интересные результаты были получены автором при общении с пользователями, а также при чтении курсов по разработке программного обеспечения.
Основная проблема пользователей – для понимания и использования современных средств разработки приложений требуются представления о процессе создания программного обеспечения с концептуальной точки зрения, а не с технологической. Современные средства разработки все больше сосредотачиваются на решение «проблемы объема», чем на алгоритмической сложности, и требуют от пользователей все большей квалификации.
Наличие качественного средства разработки – ключевой элемент успеха той или иной операционной системы [2]. Поэтому задача создания подобных средств не теряет свою актуальность, особенно в части обеспечения интеграции среды разработки с возможностями операционной системы, относящимися к защите информации.
Список литературы
1. . Программное окружение Unix. Издательство Prentice Hall, 2003.
2. . GCC. Издательство Diasoft, 2004.


