Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

,

Всероссийский научно-исследовательский институт

автоматизации управления в непромышленной сфере, Москва

Создание современных средств разработки приложений для Linux-систем

Данная работа посвящена проблеме создания средств разработки приложений.

Исторически сложился подход к созданию средств разработки для Unix-подобных систем, подразумевающий ориентацию на консольные утилиты, соответствующие принципу «одна утилита - одна задача» [1]. Примером могут являться отладчики, профайлеры, компиляторы, отладочные библиотеки.

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

Основная сложность сегодня – «сложность объема». Большой размер достаточно простого исходного кода сложно управляем, и контролируем, только если имеет достаточно регулярные принципы построения. А это – необходимое условие для обработки кода без участия человека.

С другой стороны, появляется «сложность предметной области». Универсальные средства разработки для покрытия все более и более широкого спектра задач реализуют все более и более абстрактный подход к построению программы. Однако это существенно увеличивает сложность самого средства разработки. Начиная с некоторого времени, наметилась тенденция уменьшения скорости роста сложности и размера средств разработки, переход с экстенсивного пути на интенсивный путь.

НЕ нашли? Не то? Что вы ищете?

Современные Linux-подобные операционные системы испытывает на себе все описанные проблемы. Являясь, с одной стороны, универсальными операционными системами, они используется на каждой конкретной машине с узкоспециализированными целями.

Начатые в 2003 году работы по созданию средства разработки привели к созданию RAD среды, пригодной для разработки широкого круга приложений. Особое внимание уделялось приоритетным направлениям – созданию ГИП и взаимодействию с базами данных.

При планировании дальнейшего развития был учтен полученный опыт. Решением, которое позволяет преодолеть возрастание сложности среды разработки вместе с сохранением возможности настройки среды на решение узкоспециализированных проблем, является микроядерный подход к построению средства разработки. Каждая возможность среды реализуется в виде отдельного независимого модуля, который подключается, при необходимости, к другим модулям, в строго определенных точках подключения. Это упорядочивает внутренние взаимосвязи и уменьшает связность программы. С другой стороны, это позволяет «собирать» на каждом рабочем месте необходимый набор компонентов для решения конкретной задачи.

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

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

Основная проблема пользователей – для понимания и использования современных средств разработки приложений требуются представления о процессе создания программного обеспечения с концептуальной точки зрения, а не с технологической. Современные средства разработки все больше сосредотачиваются на решение «проблемы объема», чем на алгоритмической сложности, и требуют от пользователей все большей квалификации.

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

Список литературы

1. . Программное окружение Unix. Издательство Prentice Hall, 2003.

2. . GCC. Издательство Diasoft, 2004.