QML 용어집
일반 용어
| 용어 | 정의 |
|---|---|
| QML | QML 애플리케이션을 작성하는 언어입니다. 이 언어의 아키텍처와 엔진은 Qt Qml 모듈에 의해 구현됩니다. |
| Qt Quick | QML 언어를 위한 표준 타입 및 기능 라이브러리로, Qt Quick 모듈에서 제공되며 "import QtQuick"을 통해 액세스할 수 있습니다. |
| 형 | QML에서 ‘타입’은 값 타입(Value Type ) 또는 QML 객체 타입(QML Object Type)을 의미할 수 있습니다. QML 언어는 여러 내장 값 유형을 제공하며, Qt Quick 모듈은 Qt Quick types 제공합니다. 또한 타입은 타사 개발자가 (모듈)을 통해 제공하거나, 애플리케이션 개발자가 QML 문서를 통해 애플리케이션 내에서 직접 제공할 수도 있습니다. 자세한 내용은 ‘QML 유형 시스템’을 참조하십시오. |
| 값 유형 | 값 유형은 int, string, bool 와 같은 단순 유형입니다. 객체 유형과 달리, 값 유형으로는 객체를 인스턴스화할 수 없습니다. 예를 들어, 속성, 메서드, 시그널 등을 가진 int 객체를 생성할 수는 없습니다.값 유형과 객체 유형은 대개 QML 모듈에 속합니다. 이를 사용하려면 해당 모듈을 임포트해야 합니다. int, bool, double, string과 같은 일부 유형은 언어에 내장되어 있으며, QtObject 및 Component도 마찬가지입니다. 자세한 내용은 ‘QML 유형 시스템’을 참조하십시오. |
| 객체 유형 | QML 객체 유형은 QML 엔진에 의해 인스턴스화될 수 있는 유형입니다. QML 타입은 .qml 파일 내의 대문자로 시작하는 문서나, QObject 기반의 C++ 클래스를 통해 정의할 수 있습니다. 자세한 내용은 ‘QML 유형 시스템’을 참조하십시오. |
| 객체 | QML 객체는 QML 객체 유형의 인스턴스입니다. 이러한 객체는 생성할 객체와 각 객체에 대해 정의할 속성을 지정하는 객체 선언을 엔진이 처리할 때 생성됩니다. 또한 Component.createObject() 및 Qt.createQmlObject()를 통해 런타임에 객체를 동적으로 생성할 수도 있습니다. '지연 인스턴스화' 항목도 참조하십시오. |
| Component | 컴포넌트는 QML 객체나 객체 트리를 생성하는 데 사용되는 템플릿입니다. 컴포넌트는 QML 엔진이 문서를 로드할 때 생성됩니다. 일단 로드되면, 컴포넌트가 나타내는 객체나 객체 트리를 인스턴스화하는 데 사용할 수 있습니다. 또한, ` Component ` 타입은 문서 내에서 인라인으로 컴포넌트를 선언하는 데 사용할 수 있는 특수한 타입입니다. 컴포넌트 객체는 `Qt.createComponent()`를 통해 동적으로 생성되어 QML 객체를 동적으로 생성할 수도 있습니다. |
| 문서 | QML 문서는 하나 이상의 import 문으로 시작하고 단일 최상위 객체 선언을 포함하는, 독립적인 QML 소스 코드 조각입니다. 문서는 .qml 파일이나 텍스트 문자열에 포함될 수 있습니다. 파일 이름이 대문자로 시작하는 .qml 파일에 저장된 경우, 엔진은 해당 파일을 QML 타입의 정의로 인식합니다. 최상위 객체 선언은 해당 타입에 의해 인스턴스화될 객체 트리를 캡슐화합니다. |
| 속성 | 속성은 이름과 연관된 값을 가진 객체 유형의 속성입니다. 이 값은 외부에서 읽을 수 있으며(대부분의 경우 쓰기도 가능합니다). 객체는 하나 이상의 속성을 가질 수 있습니다. 일부 속성은 캔버스와 관련이 있는 반면(예: x, y, width, height, opacity), 다른 속성은 해당 유형에 특정한 데이터일 수 있습니다(예: Text 유형의 "text" 속성). 자세한 내용은 QML 객체 속성을 참조하십시오. |
| 바인딩 | 바인딩은 속성에 “바인딩”된 JavaScript 표현식입니다. 특정 시점의 속성 값은 해당 표현식을 평가하여 반환된 값이 됩니다. 자세한 내용은 속성 바인딩을 참조하십시오. |
| 신호 | 신호는 QML 객체에서 발송되는 알림입니다. 객체가 신호를 발산하면 다른 객체들은 신호 핸들러를 통해 이 신호를 수신하고 처리할 수 있습니다. QML 객체의 대부분의 속성에는 변경 신호가 있으며, 클라이언트가 기능을 구현하기 위해 정의할 수 있는 관련 변경 신호 핸들러도 있습니다. 예를 들어, MouseArea 타입의 인스턴스에 대한 "onClicked()" 핸들러를 애플리케이션에서 정의하여 소리가 재생되도록 할 수 있습니다. 자세한 내용은 신호 및 핸들러 이벤트 시스템을 참조하십시오. |
| 신호 핸들러 | 신호 핸들러는 신호에 의해 트리거되는 표현식(또는 함수)입니다. C++에서는 “슬롯(slot)”이라고도 합니다. 자세한 내용은 ‘신호 및 핸들러 이벤트 시스템’을 참조하십시오. |
| 지연 인스턴스화 | 객체 인스턴스는 필요할 때까지 불필요한 작업을 수행하지 않도록 런타임에 “지연” 방식으로 생성될 수 있습니다. Qt Quick 는 지연 인스턴스화를 보다 편리하게 사용할 수 있도록 ` Loader ` 타입을 제공합니다. |
© 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.