В вычислениях, стек решений или программный стек - это набор программных подсистем или компонентов, необходимых для создания полной платформы, так что дополнительное программное обеспечение не требуется для поддержки приложений. Говорят, что приложения «запускаются» или «работают поверх» полученной платформы.
Например, для разработки веб-приложения архитектор определяет стек как целевую операционную систему, веб-сервер, базу данных и язык программирования. Другая версия программного стека - это операционная система, промежуточное ПО, база данных и приложения. Обычно компоненты программного стека разрабатываются разными разработчиками независимо друг от друга.
Некоторые компоненты / подсистемы общей системы выбираются вместе достаточно часто, чтобы конкретный набор упоминался по имени, представляющему целое, а не по именам частей. Обычно имя представляет собой аббревиатуру, обозначающую отдельные компоненты.
Термин «стек решения» исторически иногда включал аппаратные компоненты как часть конечного продукта, смешивая как аппаратное обеспечение, так и программное обеспечение на уровнях поддержки.
A разработчик полного стека, как ожидается, сможет работать на всех уровнях стека.