7
votes

Le passage de MFC à Qt ou WTL (ou une autre boîte à outils GUI) est-il recommandé pour le développement de Windows CE?

Il y a de nombreuses questions concernant les outils Boîtiers de GUI C ++ pour Windows, mais ils s'appliquent principalement aux versions de bureau OS.

Je commence maintenant un projet C ++ pour Windows CE 5.0 VGA Dispositif à main et réfléchissez à la bibliothèque de l'interface graphique à choisir. J'ai une certaine expérience à l'aide de MFC dans des projets Windows CE, mais il existe des points faibles connus de MFC mentionnés ici. Pour les projets de bureau, ils recommandent QT et WTL surtout. Dans le même temps, le MFC a certaines caractéristiques d'être encore considérables pour le développement intégré.

Alors, comment pensez-vous, est-il raisonnable de passer certaines ressources à apprendre la nouvelle boîte à outils GUI pour passer de MFC et quelle boîte à outils recommanderiez-vous dans ce cas? Ou MFC est-il toujours le plus considérable pour le développement intégré de Windows CE?

Les caractéristiques les plus importantes d'une boîte à outils sont les suivantes: CPU modéré et charge de mémoire, petite taille d'exécution, bonne conception orientée objet, conformité aux bonnes pratiques C ++ modernes, courbe d'apprentissage escarpée, vitesse de développement, look commercial, outils de débogage et de conception pratique .

(ce qui est nécessaire dans le projet: communication de port série, threads, parcelles et diagrammes dessin, communication ActiveSync.)


2 commentaires

Je dis bâton avec MFC si vous le savez. QT et WTL sont agréables, mais des cadres d'interface graphique, toutes sont difficiles. Et il y a aussi une utilisation macro dans qt.


Heh, QT ne va pas vraiment vous aider dans le département "Overuse du préprocesseur C ++".


4 Réponses :


1
votes

Si vous apprenez QT, vous serez bien placé pour écrire du code pour toutes les autres plates-formes (Linux) qui sont poussées par les lignes de Nokia, Intel et Google. Qu'en elle en fait la technologie la plus appropriée pour moi!

Vous devrez peut-être toujours chercher à d'autres bibliothèques pour certains des autres aspects de votre code, mais utiliser QT pour l'interface graphique ne sera jamais un mauvais choix.


2 commentaires

Vous n'avez pas besoin de partager le code source par QT Commercial License. LGPL QT License ne vous obligea que de partager des modifications au code source QT.


Non seulement des plates-formes Linux, Symbian aussi.



2
votes

Le premier avantage est que Qt est une liberche de plate-forme transversale. Deuxièmement, le MFC est un mal de tête. Les activités les plus simples à faire avec MFC peuvent se tourner vers un gros problème. Donc, déplacez-vous de MFC au QT dès que possible.


0 commentaires

2
votes

Si vous savez que MFC, collez-le avec elle: cela fonctionne bien pour CE. Certaines restrictions sont bien sûr comparées à la MFC de bureau, mais elles ne sont généralement pas significatives. Je pense que le principal problème que nous avons trouvé est que l'impression n'est pas prise en charge dans MFC8 pour CE (VS2005).

D'autre part si vous avez une toile vierge, je recommanderais de partir pour .NET - C # ou VB, que vous sentez le plus à l'aise.


2 commentaires

Si vous n'avez pas de mémoire en contraintes, c # est votre TTM le plus rapide. Très facile pour les applications les plus embarquées, mais le framework compact est une mémoire de mémoire massive. Il y a aussi des omissions très gênantes dans le CF ESP si vous venez d'un arrière-plan C # -Desktop.


@WendOfinvention: convenu, provenant d'un environnement de bureau .NET, le framework compact a beaucoup plus manquant par rapport à Full .NET que MFC CE a relatif au bureau MFC.



8
votes

Nous avons Qt 4.5 sur le projet Windows CE 5.0 à la phase de finition, alors j'essaie de parler des avantages / inconvénients de QT Développer la comparaison à la MFC.
QT plus:

  • Nice OOP DESIGN
  • Les signaux / emplacements pris en charge de manière nativement prise en charge permettent de développer plus rapidement et facilement
  • QT prend en charge de nombreuses fonctionnalités diverses (interface graphique, système de fichiers, réseau de réseautage, filetage, etc.)
  • licence LGPL permet de développer une application commerciale gratuitement
  • Open Sourcecodes, exemples, excellente documentation rend une courbe d'apprentissage beaucoup, beaucoup pas à pas
  • Bibliothèque multiplateforme. Nous avons pu exécuter notre application sur le périphérique et le bureau avec Vista OS sans aucun problème. En version 4.6 Symbian Sympian a été ajouté

    qt minus:

    • jolis binaires (> 10 Mo pour le module Core et GUI avec toutes les fonctionnalités "ON", mais vous pouvez modifier le bâtiment de la bibliothèque et faire des libs plus petits)
    • GRAND MEMORE ET UTILISATION DE LA CPU Comparaison de MFC

      Je pense que cet avantage principal de la MFC comparant à la QT sa mémoire minimale et son empreinte de la CPU. Si ce n'est pas un problème - choisissez qt.
      P.s. COMMUNICATION DE PORT COMMUNICATION ET DE TRAITE DE TERRAIN DE NIVELIQUE INCLUS DE NATURELISÉ dans QT, mais il existe des bibliothèques LGPL QT, qui vous donnent de telles fonctionnalités (comme exemple «QWT» pour le tracé).


2 commentaires

"La licence LGPL permet de développer une application commerciale gratuitement" - est-ce correct? I Thibk pour une application commerciale, vous devez acheter une licence très coûteuse.


Non. La variante LGPL est exempte de tout frais, mais en tant que LGPL stipule, vous devez partager des modifications de code de bibliothèque QT. Si vous choisissez une variante commerciale, vous pouvez maintenir les modifications fermées. qt.nokia.com/products/licensing