Pb de débutant [Résolu]

Messages postés
28
Date d'inscription
mercredi 22 décembre 2004
Statut
Membre
Dernière intervention
29 mai 2007
- - Dernière réponse : SnOOpss
Messages postés
571
Date d'inscription
samedi 3 avril 2004
Statut
Membre
Dernière intervention
5 décembre 2013
- 7 oct. 2006 à 18:47
Salut,

Je suis élève en école d'ingé et j'ai un projet à faire en c++ sous dotnet (sous visual studio 2005 pro edition).
Je suis un GROS débutant en c++ et donc j'ai quelques questions qui restent sans réponses. 
Alors déjà je ne sais pas trop qu'elle est la différence entre .net et c++ "normal" (par exemple est-ce que je dois toujours spécifier des destructeurs). Et surtout je ne sais pas quel type de projet créer (mfc, clr)...
Je sais que mes questions paraitront débiles à certains mais on nous a laché sans aucune explication.
Merci d'avance.
Afficher la suite 

5 réponses

Meilleure réponse
Messages postés
150
Date d'inscription
samedi 31 janvier 2004
Statut
Membre
Dernière intervention
16 février 2009
3
Merci
Tes questions ne paraissent pas du tout débiles.

Alors d'abord la différence C++ natif et C++.net.

Le .Net est une nouvelle platforme faite par Microsoft qui te permet de créer des logiciels qui se base sur une nouvelle "façon de programme". Je veux dire par là que il existe par exemple des fonctions en .Net comme en C++ natif qui te permettent par exemple de modifier le papier-peint de ton bureau et elles sont différentes.

Avec le C++ natif tu utilises l'API Win32 de Windows. C'est des fonctions qui font les mêmes choses que en .Net mais qui sont différentes et bien plus vieilles! (l'architecture .Net est assez nouvelle). A noter que .Net étant assez nouveau beaucoup de projet célèbre sont fait en utilisant l'API Win32, je dirais même tous.

Beaucoup de personne pensent que l'architecture .Net disent qu'elle est plus lente que le bon vieil API Win32. Je n'ai pas trop de mail à y croire à vrai dire.

A noter que Microsoft veut laisser tomber l'API Win32 avec le futur Windows Vista. Mais c'est vraiment de la musique d'avenir, tout simplement parce que les softs actuels sont fait avec cet API et ils peuvent pas le laisser tomber comme ça. Il existera sous Windows Vista mais ce sera juste pour la compatibilité.Windows Vista intègrera au plus profond de lui la platforme .Net

Quel projet choisir

Lorsque tu veux faire un projet avec Visual Studio.Net 2005 tu peux choisir entre:
<ol><li>ATL ==> c'est des templates qui te permettent de faire des composants COM (je n'en suis pas très sûre), je ne crois pas que ça va te servir</li><li>CLR ==> ça veut dire Common Language Runtime, c'est en faite tous ce qui touche au .Net (la "nouvelle" façon de programmer selon Microsoft)</li><li>General ==> c'est juste pour faire des projets vide (pas très intéréssant, il faut configurer les options du projet ensuite)</li><li>MFC ==> je dirais pour être grossier: c'est le .Net du passé. C'est une librairie pour simplifier la vie des programmeurs et rendre la programmation plus rapide en utilisant des fonctions toutes faite. (je crois que les MFC utilisent l'API Win32, à vérifier... je veux pas dire de bêtises)</li><li>Smart Device ==> A mon avis, c'est, comme son nom l'indique la programmation pour PocketPC et autre "mini-windows"
</li><li>Win32 ==> comme je l'ai dis, c'est "le projet C++ de base" qui utilise l'API de Microsoft dit "Win32" (sous-entendu Windows 32 bits crois-je...)</li></ol>
Bon, je sais pas si j'ai pu t'aidé mais c'est ce que je sais. Il y a peut-être des fautes dans ce que j'ai dit mais bon, les autres forumers sont la pour vérifier que je dise pas trop d'âneries

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 205 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Oeil_de_taupe
Messages postés
571
Date d'inscription
samedi 3 avril 2004
Statut
Membre
Dernière intervention
5 décembre 2013
0
Merci
Merci, ca repond aussi a des questions que je me posais, mais par contre quand tu dit que les api win32 vont partir ca me fait peur. Tout ce que j'ai appris (et vas y que y a du dossier dessus) ne me servira plus a rien et qu'il va me falloir recommencer a zero.
Commenter la réponse de SnOOpss
Messages postés
28
Date d'inscription
mercredi 22 décembre 2004
Statut
Membre
Dernière intervention
29 mai 2007
0
Merci
Merci pour ta réponse oeil_de_taupe
Commenter la réponse de nico971gwada
Messages postés
150
Date d'inscription
samedi 31 janvier 2004
Statut
Membre
Dernière intervention
16 février 2009
0
Merci
>> SnOOpss

Oui mais comme tu as aucun risque à te faire,  a mon avis l'API Win32  pèse beaucoup trop lourd (trop d'application écrites avec) pour que Microsoft s'amuse à le supprimer de ses futures système d'exploitation, ils seront là pour la compatibilité.
Et le changeant va pas se faire du jour au lendemain, ça va s'étaler sur plusieurs années. De plus la "logique" Win32 que tu as développée s'applique aussi en .Net

Mais il est vrai que ces changeant me font peur, pas pour l'API Win32 mais pour l'avenir du C++ (rien que ça...). Seul l'avenir nous dira si les langages non-managés (que sont le C et le C++) vont garder la tête hors de l'eau.

J'ai lu récemment un article (malheureusement en anglais) qui parle de ce changement et du danger que cela crée pour Microsoft. L'auteur de cet article annonce même la chute du grand Microsoft. Rien que ça... Je trouve qu'il prédit un peu rapidement mais les menaces pour Microsoft qu'il présente sont bien réelle!

L'article: How Microsoft Lost the API War
Commenter la réponse de Oeil_de_taupe
Messages postés
571
Date d'inscription
samedi 3 avril 2004
Statut
Membre
Dernière intervention
5 décembre 2013
0
Merci
J'ai pas tout lu, mais lui meme dit que rien n'est encore joué.Par contre la disparition du c++ ..... ?
Comment un logiciel managé peut etre preferé a un langage plus proche du systeme.C'est plus rapide a faire, plus simple, plus securisé mais sinon moins puissant, moins de possiblitées.Il suffit de voir Java, ils peuvent dire ce qu'il veulent mais c'est pas pour rien qu'il y a peu d'applications distribuées en masse en java. Les 2 3 que je possede, j'ai de suite vu qu'elles etaient en java rien que a l'ouverture de l'appli.
Commenter la réponse de SnOOpss