Во время создания прикладных систем большую часть программных модулей составляют на языках высокого уровня. Существует несколько способов организации их взаимодействия, которые базируются, как на свойствах данных языков высокого уровня, так и на особенностях, присущих операционным системам. Довольно часто возникает необходимость в программировании машинно-зависимых частей на таком языке программирования, как ассемблер или макроассемблер, поэтому возникает проблема организации взаимодействия программ, созданных на языках высокого уровня с программами на ассемблере.
Проектирование большой прикладной системы с самого начала требует решения нескольких принципиальных вопросов, относящихся к общей структуре системы и способам взаимодействия отдельных компонентов. Как, например, при создании многопользовательских игр. Последними разработками в этой области является включение в геймплеерскую систему Non target MMORPG, которая заключается в отсутствии автонаведения.
В разработках были учтены следующие характеристики:
- структура исходного текста программ и их состав;
- единый текст на одном из языков программирования;
- отдельные текстовые модули на различных языках, которые составляются, возможно, даже разными программистами;
- единый модуль, который полностью загружается в оперативную память при запуске системы.