novembre
2007
Je vous en avais parlé il y a quelques temps, Visual studio 2008 apporte son lot de nouveautés aux MFC .
Il sera possible de générer une application MFC avec le look office 2007 !, Barre d’outils, le fameux ribbon bar tout y est !
Et ce n’est pas fini, bien d’autres fonctionnalités ont été rajoutées :
Je vous livre ma traduction rapide des différents blogs que j’ai pu lire sur le sujet :
Il sera possible de créer des applications possédant le style des applications phares Microsoft comme : office, Internet exploreur , Visual studio.
Voici une liste partielle des possibilités … :
Look Office 2007 : barre ruban (ribbon bar) : avec ses différents éléments, statut bar etc…
Look Office 2003 (look XP): barre d’outils et de menus au style office, barre de raccourcis selon le style Outlook , aperçu d’impression ,sélectionneur de fontes et de couleurs etc.
Look Internet Explorer : Rebars and task panes.
Visual Studio look: fonctions d’attachements (docking), fenêtres escamotables (auto hide windows), grid de propriétés (property grids), onglets MDI ,onglets de groupes etc..
Support des thèmes vista : avec possibilité de passer d’un thème à l’autre
Personnalisation des menus et des barres d’outils par glisser déplacer (drag en drop )..
Nombres de classes ont été rajoutées pour le Shell …
Et encore bien d’autres fonctionnalités.
Enfin coté C++, un certain nombre de spécification en provenance du C++0x vont être implémentées, comme les pointeurs intelligents, le traitement des expressions régulières, de nouveaux conteneurs etc…
Vu la liste des nouveautés, c’est une vrai révolution qui a été effectuée, Herb Sutter nous avait prévenu !
J’ai maintenant hâte d’explorer tout cela.
Mon sentiment :
Microsoft s’est enfin aperçu que le développement Win 32 et les MFC n’étaient pas morts bien au contraire!.
La plateforme .net est certes très intéressante, mais tout le monde ne passera pas forcément au développement .Net, Microsoft l’a compris en établissant des passerelles entre les deux mondes : Je vous rappelle que l’on peut dors et déjà mélanger du .Net et des MFC. avec Visual Studio 2005 et utiliser du C++/CLI dans nos applications MFC.
Avec Visual 2008 un nouveau point de convergence semble être établi : l’interface (à suivre et à vérifier).
La question est maintenant de savoir si les 2 framework vont continuer à évoluer de leur côté ou si à terme on disposera d’une version MFC.net.
Quelques liens :
Quick Tour Of New MFC Functionality
Visual C++ Announcements in Barcelona: TR1 and MFC
14 Commentaires + Ajouter un commentaire
Articles récents
Commentaires récents
Archives
- septembre 2010
- mai 2010
- avril 2010
- février 2010
- août 2009
- juin 2009
- mai 2009
- février 2009
- décembre 2008
- novembre 2008
- octobre 2008
- septembre 2008
- juillet 2008
- juin 2008
- mai 2008
- avril 2008
- mars 2008
- février 2008
- janvier 2008
- décembre 2007
- novembre 2007
- septembre 2007
- août 2007
- juillet 2007
- juin 2007
- mai 2007
- avril 2007
- mars 2007
- février 2007
- janvier 2007
- décembre 2006
- novembre 2006
- octobre 2006
- septembre 2006
- août 2006
- juillet 2006
- juin 2006
- mai 2006
- mars 2006
- février 2006
@Kaji:
salut, non je ne crois pas que ce soit exagéré pour les utilisateurs des MFC.
quand au C++ pur, la TR1 ajoute sont lot de nouveautés.
Pour la STL plus lente il y a eu effectivement des échos sur le forum C++.
pour info le patch de mise à jour (beta) est arrivé : http://blog.developpez.com/index.php?blog=73&title=la_version_beta_des_mfc_est_disponible&more=1&c=1&tb=1&pb=1
[QUOTE]
• Currently VC++ has no IDE support in Visual Studio for programming these CLR technologies (why???):
• 1) ASP .NET
• 2) WPF
• 3) WCF
• 4) LINQ
while of course C# supports all of them. Clearly you, and Microsoft, could support all of these using C++/CLI in pure/safe mode modules.
If you are not interested in supporting .NET, and just ceding .NET development to C#, just drop C++/CLI and stop pretending that you are creating a level field for all .NET languages.
• What is the real reason of releasing the only Web library ATL Server on CodePlex.com? Is it to hard to ingrate some of sophisticated web components like in ASP. NET to make our only C++ Web library ATL Server web developpement easy to use?
• MFC will support BCG controls bar but it is only for desktop application and not for web application.
• Can we built 3-tiers application entirely in VC++?
You did an excellent job of creating a first class .NET language with C++/CLI and you have done a general good job in interoperating between C++/CLI and standard C++, but you have done a terrible job of bringing .NET technologies to C++/CLI.
• I would want to say that [url]www.hotmail.com[/url] still use *.srf web page to open connection in the mail box. And *.srf pages are built using ATL Server technology. It ‘s the same for .NET passeport web pages. Can you explain this?
• With Silverlight 1.1 we can build interaction web application using C# or VB .NET with the .NEt Framework and C++/CLI is not a .NET language?
• Is ASP .NET only for C# and VB.NET? But it is not all of .NET language?
• Can you explain the real Visual C++ Futures?
[/QUOTE]
Je remercie Microsoft et BCGSoft pour la mise à jour des bibliothèques de Visual C++ et en particulier des MFC (intégrant le ruban d’office 2007, le look and feel d’Office 2007 & 2003, les fenêtres auto-glissantes et auto hide de Visual Studio et les toolbars et rebars customisables d’Internet Explorer 7.0) vers cette nouvelle version 9.0 de Visual Studio 2008.
Mais j’ai une petite réclamation. Ce nouvel update des MFC en particulier et des libraires de Visual C++ en général ne cible que les applications de bureaux et non les applications Web.
Je ne vois aucune librairie dédiée de Visual C++ 2008 qui ciblerait le Web alors que le développement Web prend une ampleur telle qu’on ne peut s’en passer à l’heure actuelle vu qu’on peut réaliser des applications web à interfaces riches d’internet (RIA, SylverLight, Ajax, etc…).
Je sais que l’équipe de Visual C++ a abandonné la seule et unique bibliothèque ATL Server en la faisant passer en open source sur CodePlex.com.
Cette bibliothèque d’ATL Server était la seule qui soit purement orienté Web qui pouvait faire le bonheur des développeurs C++ qui n’avaient même pas besoin de regarder à ASP .NET ou à une quelconque technologie pour le Web tel que PHP ou les JSP.
Je sais que les MFC permettent également ce genre de développement d’application mais pas aussi autant que faisait cette libraire dédiée d’ATL Server.
Ainsi ma question serait de savoir est-ce qu’il n’y pas de développeurs Web au sein de l’équipe de Visual C++ de Microsoft qui tout en réfléchissant à son futur pourraient repenser cette bibliothèque d’ATL Server et de la refondre ou de l’améliorer afin d’intégrer tous les gadgets actuels tels qu’on les voit dans ASP .NET par exemple (Web Contrôles ou des Web Forms pour ne citer que ceux là).
Et si la reprise de ATL Server n’est pas envisageable pourquoi ne pas intégrer suffisamment le développement d’application ASP. NET avec C++/CLI comme code behind. Et fournir des outils pour WPF, WCF et LINQ comme en C# directement dans l’IDE Visual Studio 2008.
C’est quel Visual Studio 2008 Microsoft veut il nous pondre pour nous développeur C++? Sans ASP. NET avec C++/CLI code behind, sans outils pour WPF, WCF et LINQ utilisant C++/CLI, sans une réelle bibliothèque dédié au Web (ATL Server).
Et Silverlight 2.0 (le flash de M$) avec C++/CLI ça n’intéresse pas un développeur C++ avec des Rich Internet application (RIA). Je veux bien manipuler du XAML moi.
Pourquoi doit-on faire la conversion des tuto C# en C++/CLI pour mieux appréhender .NET.
La porte est-elle donc ouverte au seules applications Desktop Window? Que Visual C++ ne soit pas borné car il peut aller plus loin.
La dernière réponse que j’ai eu à mes questions n’ étaient pas satisfaisantes et non convaincantes de l’équipe de Visual C++ Microsoft France. C# et VB .NET permettent le développement d’application aussi Windows et que Web avec des plus nombreux outils que C++/CLI. De même Java le fait également avec ses pages JSP.
Il serait faux de croire que seul le C++ puisse s’intéresser à ce qui est sous le capot car Java tout comme C# entrent également sous le capot.
Et d’ailleurs les classes de .NET sont faites en C# et pas en C++.
Le langage C# ou Java pénètre toutes les couches du développement n-tiers tels que la couche d’accès au donnés, la couche métiers et la couche présentation. Pourquoi privé à un développeur C++ la couche présentation.
Si les bibliothèques de VC++ sont dédiées aux applications windows ou sont celles qui le sont uniquement pour les applications Web?
WHAT VISUAL C++ 2008 LIBRARY THAT TARGETS THE WEB?
WHAT VISUAL C++ 2008 TOOLS THAT TARGETS WPF?
WHAT VISUAL C++ 2008 TOOLS THAT TARGETS WCF?
WHAT VISUAL C++ 2008 TOOLS THAT TARGETS LINQ?
WHAT VISUAL C++ 2008 TOOLS THAT TARGETS ASP. NET?
WHAT VISUAL C++ 2008 TOOLS THAT TARGETS SILVERLIGHT?
WHAT ABOUT THE FUTUR OF VISUAL C++?
« de gros changements », c’est un peu exagéré, non ?
Saviez-vous qu’un même code C++ / STL compilé avec des compilateurs Microsoft est plus lent ?
J’ai codé des tests de parcours / suppression sur des tableaux avec ou sans STL. Mes programmes compilés avec Microsoft Visual C++ 8.0 sont de 11 à 20% plus lent que ceux compilés avec DevCpp et MingW32 !
Personnellement je reste plus que jamais au C++ et STL compilé avec MingW32 ou g++…
En fait, pourquoi uniquement BCG mais pas les autres frameworks comme Stingray, etc.
BCGSoft appartient-il donc totalement à Microsoft ??
Ca se voit que Microsoft a donc déja eu recours à BCG pour Office 2007 et Visual 2005 aussi.
Petit détail : Les nouveautés purement C++ que tu annonces ne sont pas liées au C++0x, mais au TR1 qui est déjà publié depuis pas mal de temps.
La dernière fois que j’ai posé la question à Herb Sutter, il semblait indiquer que Microsoft n’était pas pressé d’implémenter les nouveautés C++0x tant qu’elles n’auraient pas été figées par la norme. Le problème n’était pas tant lié au temps de développement associé, mais au fait qu’après il faudrait les maintenir même si la norme évolue autrement.
@sarapis:
la version VS2008 + la TR1 sortira en début d’année prochaine…
la version actuelle ne contient donc pas cette release majeure des MFC..
hier un collèque à télécharger VS 2008 sur msdn et aucune trace de des dialogues pour créer des applications style office 2007 ou même du taskbar
http://www.developpez.net/forums/showpost.php?p=2696113&postcount=4
@Mat.M :
il est possible de voir à quoi ressemblent les classes de la librairie BCGSoft en téléchargeant la version d’évaluation sur http://www.bcgsoft.com. Ces classes seront modifiées pour leur intégration dans les MFC, mais cela devrait quand même donner une idée de ce qui nous attend…
Il y aura aussi des nouvelles classes TR1 de C++0x. Pour avoir une idée de ce qu’est TR1 : http://arb.developpez.com/c++/boost/install/vc++/
voui en tout cas merci pour l’info.
Mais j’arrive pas à trouver question classes ce que cela apporte de nouveau
ça fera peut être taire définitivement ces rumeurs que j’entends depuis des années sur la fin des MFC…
Dire qu’il y a 2 ou 3 ans on disait que les MFC étaient abandonnées , que programmer avec MFC c’est pas bien
MFC rulez !
Pour avoir déjà utilisé la librairie BCG, c’est un bon choix à mon avis. Cette lib n’a pas grand chose à envier à son rival Codejock.com.
En tous cas pour nous qui utilisons C++/MFC, ces évolutions sont une excellente nouvelle ! J’ai hâte de voir la béta des « new MFC » au début de l’année prochaine.
Certes ces améliorations viennent de la bibliothèque BCG, le point interessant sera de voir l’intégration effectuée au sein de Visual.
la liste complète des intégrations de le tr1 est disponible sur le blog de Herb Sutter.
Les nouvelles fonctionnalités des MFC (ribbon, dockbars, etc.) viennent de la librairie « BCG Controlbar » que Microsoft vient de racheter. Il est possible d’avoir une version d’éval de cette librairie… Il existe aussi des implémentations de TR1 pour Visual Studio 2003 ou 2005. Pour plus d’infos c’est ici : http://www.blogMFC.com
Pierre