2012-12-14 2 views
4

UI가 아닌 응용 프로그램에 Qt를 사용하려고합니다. 어플라이언스에서 실행될 가능성은 있지만 데스크탑에서 시작됩니다. UI 부분 (나는 UI가 아닌 것으로 알고있다)은 HTML (5)/AJAX가있는 웹 서버가 될 것이라고 말했다.비 UI 응용 프로그램을위한 Qt?

정말에만 스레드, 동기화, 직렬화, 자원 (문자열, 아마도 이미지), 국제화 등의 기본 크로스 플랫폼 물건 Qt는을 사용

등이 같은 더 나은 것

, Qt는 또는 부스트 그리고 크로스 플랫폼 계층을 직접 만들 수 있습니까?

Qt는 내가 필요로하는 것에 조금 무거워 보이지만 다른 사람들의 경험을 듣고 싶습니다.

+0

사람들은이 질문을 비 건설적으로 끝내기를 원합니다. "왜?" – UmNyobe

+0

OP가 토론을 요구하거나 논증, 폴링 등을 유도 할 가능성이있어 건설적인 것이 아닌 의견을 묻는 질문이 많으므로 –

+0

질문을받을 가능성이 큰 부분을 편집하려고 시도했습니다. 그래도 여전히 높은 가능성이 있습니다. –

답변

1

당신이 제안하는 것이 완전히 합리적입니다. 플랫폼간에 여러 기능 (스레딩 등)을 사용하려고합니다. 기본적으로 다음과 같은 여러 가지 옵션이 있습니다.

옵션 1 (잘못된) : 사용자 자신의 크로스 플랫폼 래퍼를 작성하십시오. 당신은 바퀴를 재발 명하고있을 것이고, 아마도 Qt가 이미 많은 크로스 플랫폼 케이스와 기능들을 다루지 못할 것입니다. 이 옵션은 또한 코드를 상속받은 사람이라면 쉽게 지원되고 잘 문서화 된 쉽게 액세스 할 수있는 라이브러리 대신 사용자 정의 라이브러리를 처리해야 함을 의미합니다.

옵션 2 (권장하지 않음) : 스레딩, 네트워킹 등과 같이 원하는 모든 기능에 대해 개별적인 크로스 플랫폼 솔루션을 사용하십시오. 이는 사용자 (및 후임 사용자)가 많은 라이브러리와의 호환성을 유지해야 함을 의미합니다. 미래에.

옵션 3 (권장) : 사용자의 모든 필요를 충족시키기 위해 쉽게 문서화되고 쉽게 액세스 할 수있는 단일 라이브러리를 사용하십시오. Qt는 청구서에 부합합니다.

2

예, QtCore (및 기타 비 GUI 모듈)를 사용하면 필요한 것을 수행해야합니다. Boost와 QtCore 중 하나를 선택하면 좋은 일을하고 때로는 끼어들 수도 있습니다. 하지만 항상 그런 것은 아닙니다.

Qt (코어)는 주로 기능을 제공합니다. 부스트 기능은 주로 기능을 구현하는 도구를 제공합니다. 예를 들어 Qt가 아닌 Boost에 템플릿과 펑터가 있습니다. OTOH, 메시지 펌프 등이 필요하다면 Qt에서만 찾을 수 있습니다.

정말 달성하고자하는 대상에 달려 있습니다.

2

예, 내 의견으로는 완벽하게 괜찮습니다. Qt가 Java와 비교하여 무겁다 고 말하지는 않겠지 만, 예를 들어, 이러한 작업에 매우 많이 사용됩니다. Qt는 매우 강력하고 깨끗하며 쉽고 빠릅니다. 나는 그것을 많이 사용하는데, 나는 그것의 큰 단점을 모른다.

관련 문제