Qt 로드맵
|
저희Nokia 개발팀의 목표는, 최고의 크로스플랫폼 애플리케이션 및 UI 프레임워크를 개발 하는 것입니다. 그러나, 이러한 우리의 목표는 저희Qt Development Frameworks 개발팀 만으로는 이룰 수 없으며, 그걸 원하지도 않습니다. 여러분이 3D 시뮬레이션 소프트웨어를 개발하거나, 가전 기기용 UI를 개발하던지에 상관없이 – 혹은 둘다 – 우리는 여러분들의 요구 사항을 더욱 더 만족시키기 위해, 어떻게 Qt를 개선 시켜야 할 지, 귀중한 여러분들의 의견을 듣고 싶습니다. 여러분들에게 Qt가 어떻게 개선되어 나갈지 보여드리고, 여러분들께서 Qt의 변화를 주도 할 기회를 드리고자, 저희는 아래와 같이 Qt의 로드맵을 제공합니다. Qt를 조금 더 쉽고 자세히 배우시려는 방법이나, 혹은 원하시는 바를 제안하시거나, 심지어 Qt에 코드 공유하기위해 수정 코드를 제안하시더라도, 기꺼이 여러분이 제공해 주시는 모든 피드백에 귀 기울이고 있습니다. |
Qt 로드맵을 보는 방법
저희는 Qt로드맵을 통하여, 최신 Qt 릴리스에서 제공된 특징, 앞으로 Qt릴리스 버전에서 새롭게 추가될 특징, 그리고 현재 진행 중인 연구 프로젝트에 대한 간략한 개요를 제공합니다. 새로운 특징에 대한 설명을 원하신다면 Info
링크를 따라 클릭하시고 (만일 Link가 끊기지 않았다면), 프로젝트 정보나 블로그 게시물, 그리고 개발자들의 토론기록을 보시기 위해서는 Qt Lab
링크(있는 경우)를 따라가시면 됩니다. 새로 추가된 특징들에 대한 피드백을 추가하시고자 하신다면, Qt 메일링 리스트를 이용하여 포스팅 하시면 됩니다.
| 2009년출시 예정 |
2010년 이후출시 예정 |
활발한 연구 프로젝트 |
|---|---|---|
최첨단 UI 개발 실현 웹 및 이종 언어 통합개발 Qt 툴 New Qt platforms
|
최첨단 UI 개발 실현 API확장 툴 연구 New Qt platforms
|
프레임워크 연구 API확장
|
| 플랫폼 지원과 관련한 변동 사항은 Qt 문서를 참조하십시오. | ||
|
귀하가 직접 작성한 코드를 프레임워크나 Qt 툴에 공유함으로써 Qt의 미래를 향상 시킬수 있 도록 도와 주십시오. Qt와 Qt 툴 및 다양한 Qt 연구 프로젝트를 위한 오픈형 코드 저장소(repository)는 http://qt.gitorious.org 에 있으며, 해당 페이지에서는 다음과 같은 내용을 확인할 수 있습니다.
지금 코드 공유하기! |
주의 사항 |
기능 상세 정보
선언적(Declarative) UI
선언적 UI는 Qt Kinetic 프로젝트의 일부로서, 사용자 인터페이스를 구축하고 개발자-디자이너 간의 협업을 촉진하며, 활기 넘치고 유기적인 사용자 인터페이스 구축 및 신속한 프로토타이핑을 통한 TTM(time-to-market) 단축을 도모할 수 있는 훌륭한 방법을 제공합니다. 이것은 표현적인 선언 언어(expressive declaration language)를 사용하여, UI 구축 방법보다는 UI가 어떻게 보이고 동작하는지를 기술할 수 있습니다.
애니메이션API
Qt Kinetic 프로젝트의 일부인 애니메이션 API를 통해, 직관적인 상태 및 전이(states and transitions)를 사용하여 임의의 컴포넌트 세트에 대한 복잡한 애니메이션을 작성할 수 있으며, 이 때 더 적은 수의 LOC(lines of code)가 소요됩니다. 초기 버전의 경우 현재 Qt Solution으로 이용할 수 있습니다.
상태 및 전이(States and Transitions)
Qt Kinetic 프로젝트 중 상태 및 전이(States and Transitions) 프로젝트는 개발자들에게 Harel상태도표 기반의 스테이트차트(statecharts)를 편리하게 작성하도록 도와주거나, 복잡한 애플리케이션 시멘틱스(semantics)를 단순화 하는 SCXML를 통하여 코드의 양을 줄이고 쉽게 유지 보수 할 수 있도록 강력한 기능을 제공합니다.
멀티 터치 및 제스처(Multi-Touch & Gestures)
하나 이상의 손가락으로 사용자 상호 작용을 가능하게 하며 연속적인 터치 입력을 하나의 ‘제스처’로 결합시킵니다. 손가락을 통한 상호 작용을 UI 컴포넌트로 단순화하여, 의미론적으로 복합적인 멀티 터치 제스처뿐만 아니라 일반적인 기본 제스처, 확장 가능성도 제공합니다.
JavaScript 통합
Qt에는 현재 두 가지의 Java Script 구현 버전이 있습니다: (a) Qt에서의 QtScript (b) WebKit에서의 JavaScriptCore in WebKit. WebKit은 현재 SFX(SquirrelFishXtreme)를 지원하고 있으므로, QtScript를 WebKit으로 통합하여 SFX로 옮겨가는 것이 목표입니다.
jQuery-Inspired DOM 액세스
웹 페이지 및 XML은 모두 매우 복잡한 문서 객체 모델을 가지고 있습니다. jQuery 및 W3C 셀렉터 API는 대규모의 유지 보수나 풋프린트 페널티를 초래하지 않으면서 그러한 구조에 접근하고 조작할 수 있는 매우 간단한 방법을 제공합니다.
3D 인에이블러
OpenGL을 사용하여 3D 애플리케이션 작성을 단순화할 수 있는 API를 제공하며, 여기에는 행렬 곱셈, 벡터, 4원법(클라이언트 측)을 위한 수학적 프리미티브와 버텍스 및 프래그먼트 셰이더 용 API가 포함됩니다. 향후 연구는 스텐실, 버텍스 버퍼 및 배열, 텍스처 조작, 그리고 지오메트리 셰이더에 대해 수행될 예정입니다.
선언적 UI 구축을 위한 툴 지원
리팩토링 및 코드 생성을 위한 새로운 C++ 언어 툴의 추가뿐만 아니라 VS 디버거에 대한 확장 디버거 지원과 gdb 통합으로의 심화된 개선 사항의 도입을 통해 Qt Creator를 강화합니다. 선언적 UI 디자이너를 통해 프로그래머와 설계자들은 선언적 UI 기술을 활용하여 시각적으로 매력적인 최첨단 사용자 인터페이스를 작성할 수 있습니다.
Eclipse 및 Visual Studio 플러그인의 유지 및 강화
오픈 소스 라이센스 하에 Qt Eclipse Integration 을 공개함으로써 Qt 및
다른 Qt 툴과 협력할 수 있도록 하며 커뮤니티로부터의 공유를 위해 개방합니다. Qt Eclipse Integration은 각
Qt 릴리스에 대해 활발한 개발 및 업데이트가 계속되고 있으며 새로운 기능들을 통해 더욱 강화되고 있습니다.
Visual Studio 플러그인의 내부 아키텍처에 대한 주요 정밀 검사 및 재설계로, 서로 다른 Windows 플랫폼(예: 64비트)과 Windows CE에 대한 지원을 개선합니다. Visual Studio 2003에 대한 지원은 중단되었습니다.
미디어 서비스
낮은 지연 시간( low-latency)이 요구되는 디바이스용 하드웨어의 직접적인 액세스를 가능토록 도와주는 로우레벨 클래스 및 서로 다른 장치별 이식이 가능토록 하는 back-end 를 개발 하도록 지원 하는 Phonon 멀티 미디어 프레임 워크를 위한 로우 레벨 클래스를 개발 하는 프로젝트입니다.
메모리 및 리소스 처리
예외 안전성(exception safety) 및 메모리 부족(out-of-memory) 상황에 대한 연구와 함께 Qt 컴포넌트들의 메모리 사용에 대해 감사를 수행합니다.
XML 스키마 지원
스키마를 사용하여 XML의 검증을 가능하게 합니다.
Qt 3D 이식성 API
이식성 계층(Portability layer)을 추가 함으로써, 데스크탑 및 임베디드 플랫폼 상에서 OpenGL 및OpenGL/ES를 지원하는, 3D 애플리케이션 개발 시의 어려움을 줄여 줍니다.
차세대 아이템 뷰
새로운 모델/뷰 아키텍처로, 멋지고 쓰기 편리한 리스트, 테이블 및 트리를 더욱 쉽고 빠르게 생성할 수 있도록 해줍니다.
하이브리드 애플리케이션 개발
하이브리드 애플리케이션은 쉽게 접근할 수 있는 웹 기술과 강력하고 확장성 있는 C++를 조합하여 사용합니다. Qt에는 이미 QtWebKit 및QtScript 모듈, QNetworkAccessManager 및 XML 사용을 위한 라이브러리와 같이 웹 및 이종 개발을 위한 기능들을 포함하고 있습니다. 이종 개발 연구에서는 Qt와 Qt 툴의 이종 개발 능력 강화를 위한 연구를 수행하고 있습니다.
WebKit의 Javascript 환경을 위한 QtScript API
QtScript API를 이용해 Qt WebKit의 JavaScript 환경과 상호 작용하십시오. 개발자들이 WebKit에서 새로운 JavaScript API를 손쉽게 이용할 수 있습니다.
빌드 시스템
모바일/임베디드 및 데스크탑 플랫폼 상에서 크로스플랫폼 애플리케이션 개발을 위한 지원을 강화합니다.
커뮤니티 및 협업 툴
다중 사용자 및/또는 다중 사이트 프로젝트의 협업 강화를 위한 툴을 연구합니다. 이러한 툴에는 예를 들어, 버전 제어, 공유 게시판, 클립보드, 코멘트 및 To-do 리스트, 프로젝트 관련 통신, 애플리케이션의 실시간 공유 등의 항목들이 포함될 수 있습니다. 일부 툴의 경우 오픈 소스 커뮤니티 협업을 증진하는 데에도 사용될 수 있습니다.
베어러 관리 API
이용 가능한 네트워크 구성을 나열하고 네트워크 세션을 관리할 수 있습니다.
연락처 API
연락처 데이터로 작업을 합니다. 여기에는연락처 만들기, 읽기, 수정하기 또는 삭제하기 및이용 가능한 연락처 쿼리가 포함됩니다. 선택한 연락처 저장 기능이 제공되고 개발자들의 추가적인 연락처 저장도 지원할 수 있습니다. 동기식 및 비동기식 상호 작용을 지원합니다.
메시징 API
SMS, MMS, 이메일 메시지와 관련된 작업을 합니다. 메시지 전송 및 수신 기능과다양한검색 기능도 포함되어 있습니다.
위치 API
현재 위치를 쿼리하고 위치 변화를 통보받습니다. 플랫폼 특정적 위치 기술에 대한 이해 없이 손쉽게 위치 정보를 이용할 수 있습니다.
서비스 프레임워크
서비스 생성과 검색 및 이용을 위한Qt 기반 시스템. QtScript 같은 QObject와 작업이 가능한 네이티브 애플리케이션이나 런타임 환경에서 서비스를 이용할 수 있습니다.
데이터 게시 및 구독 API
계층형 데이터의 형태로 상황 정보를 공유할 수 있습니다. QVariant를 이용해 데이터를 표시합니다.
멀티미디어 API
다양한 백엔드를 지원하는 멀티미디어를 위한 새로운 플러그인 아키텍처. 음성이나 동영상을 재생 및 캡처하고, 재생 목록을 관리하며, 카메라나 라디오를 사용할 수 있습니다.
새로운 임베디드 리눅스 아키텍처(프로젝트 라이트하우스)
Qt를 새로운 플랫폼으로 손쉽게 포팅할 수 있게 해주는 새로운 임베디드 리눅스 아키텍처.
차세대 위젯
스타일링 및 주제 설정, Qt Kinetic 프로젝트의 새로운 선언적 UI 프로그래밍 기능과의 통합을 위한 다양한 지원을 제공하는 기본적인 위젯과 항목 뷰 및 특수한 용도의 위젯을 제공하는 새로운 그래픽 뷰 기반의 위젯에 대한 연구. QWidget 아키텍처의 발전 및 추후 개발 방안에 대해서도 연구합니다.
SOAP 지원
WSDL 인터페이스를 제공하는 웹 서비스와 손쉽게 상호 작용할 수 있게 해주는 새로운 SOAP 지원 시행(WSDL에서의 코드 생성 포함)

