Qt State Machine 개요
상태 머신 프레임워크는 상태 그래프를 생성하고 실행하기 위한 클래스를 제공합니다. 이 프레임워크의 개념과 표기법은 하렐(Harel)의 『 Statecharts: A visual formalism for complex systems』에 기반을 두고 있으며, 이는 UML 상태 다이어그램의 기초이기도 합니다. 상태 머신 실행의 의미론은 SCXML(State Chart XML)을 기반으로 합니다.
상태 차트는 시스템이 자극에 어떻게 반응하는지를 그래픽 방식으로 모델링하는 방법을 제공합니다. 이는 시스템이 취할 수 있는 가능한 상태와, 시스템이 한 상태에서 다른 상태로 이동하는 방법(상태 간전환 )을 정의함으로써 이루어집니다. 이벤트 주도형 시스템(예: Qt 애플리케이션)의 주요 특징은 동작이 종종 마지막 또는 현재 이벤트뿐만 아니라 그 이전의 이벤트에도 의존한다는 점입니다. 스테이트 차트를 사용하면 이러한 정보를 쉽게 표현할 수 있습니다.
Qt State Machine 프레임워크는 Qt 애플리케이션에 상태 차트의 요소와 의미를 효과적으로 통합하는 데 사용할 수 있는 API와 실행 모델을 제공합니다. 이 프레임워크는 Qt의 메타 객체 시스템과 긴밀하게 통합되어 있습니다. 예를 들어, 신호(signal)를 통해 상태 간 전환을 트리거할 수 있으며, {QObject}의 속성을 설정하거나 메서드를 호출하도록 상태를 구성할 수 있습니다. Qt의 이벤트 시스템은 상태 머신을 구동하는 데 사용됩니다.
State Machine 프레임워크의 상태 그래프는 계층적 구조를 가집니다. 상태는 다른 상태 안에 중첩될 수 있으며, 상태 머신의 현재 구성은 현재 활성화된 상태들의 집합으로 이루어집니다. 상태 머신의 유효한 구성에 포함된 모든 상태는 공통된 조상을 갖게 됩니다.
Qt State Machine C++ 가이드, Qt State Machine QML 가이드, Qt SCXML 개요도참조하십시오 .
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.