[.NET] v2.0 finale

Salut,

nouvelle question débile:

c# == c++ managed == c++ .net ?

Non, C# c’est un « nouveau » langage (ca fait plus de 6 ans que ce existe c’est plus nouveau a proprement parler et avant C# avec ses fichiers .cs c’etait les .cool depuis 1996 qui est son ancetre en interne a MS avec quasi la meme syntaxe). On s’en sert a faire du .Net (le framework) qui est constitue du CLR (le moteur de .net) et une librairie de classes standard, la BCL. C’est le futur du devel sous windows (et dans le concept qui est implemente, ailleurs aussi). Le framework et son SDK sont gratuits c’est ce qu’on appelle .Net 1.0, .Net 1.1, .Net 2.0 (qui vient de sortir). C# est surement un des langages le plus adapte pour faire du .Net, mais on peut faire du .Net avec une trentaine de langages. Tu peux utiliser Visual C# Express qui est gratuit pour faire du C#.

C++ managed, c’est C++ avec des extension au langage pour cibler le framework .Net qui va donc generer des programmes qui tournent en utilisant le CLR.

Microsoft Visual C++.Net c’est le nom du produit qui permet de faire du C, du C++ et du C++ managed. Tu peux utiliser Visual C++ Express pour faire du C/C++/C++managed gratuitement.

Spa complique :stuck_out_tongue:

Et C# ressemble beaucoup à Java aussi.

Et quand on fait que du web c’est mieux de passer directement au c# quitte à en chier (mais j’aurais l’air super beau comme dans les pubs ms pour vs ^^) ou on reste sur ses acquis de quand on était plus jeune et on fait tout en vb?

Comme tu veux, tu as acces aux meme fonctionalites au runtime et au design time a quelques details pres du cote design time (le plus souvent en faveur de VB.Net niveau facilite, en faveur de C# niveau flexibilite). Au final tous les langages .Net ont acces aux meme fonctionalites. Maintenant si tu veux que je t’aide, ca sera plus facile en C# mais ca serait pas la premiere fois que je doive debugger un projet en VB.Net. Tout depend de ta syntaxe favorite en fait, je fais pas de « racisme » anti VB. Moi perso c’est C# parceque je suis un ex codeur Java et la majoritee des BCL et des API .net sont faites en C#, mais il y a des bouts de VS fait en VB (certains trucs lies aux data windows dans les gestion des datasource par exemple).

(Cela dit en passant LeBaronNoir, si il est clair que Java est le langage le plus proche dans la famille des langages et qu’il y a beaucoup en commun avec Java, a mon avis c’est plutot parcequ’ils ont les meme parents. Ca en fait des freres mais C# a peut etre plus en commun avec un parent genre SmallTalk dans sa philosophie si on fait abstraction de la syntaxe - surtout si on compte les API… SmallTalk est aussi un parent proche de Java, on pourrait qualifier en faisant un raccourci les deux (C# et Java) de SmallTalk avec une syntaxe de la famille du C. Parceque dans la famille de langage niveau syntaxe c’est un langage a « curly brace » donc de la famille du C avec les { et } pour separer les differents elements de la grammaire et le sucre syntaxique similaire, d’ou le nom C# :P. On ressent clairement une influence de Java aussi qui est venu avant hein, et qui est de la meme famille (proche, comme entre deux freres quoi) y a pas de honte a le dire c’est pas la question, mais moi, perso, je ressent plus l’influence dans « ce qui a ete choisit de faire different de Java » je dirais :stuck_out_tongue: Enfin au final tous ces langages ont une parentee tres forte ayant tous ete invente par un groupe de personnes au final tres petit et ayant du coup de nombreux points communs, de Pascal, C#, Delphi, Smalltalk, Simula, Java, C++, Lisp - en particulier recemment dans les extensions LINQ de C# 3.0 qui lui meme a en commun avec Scheme qui lui remonte au lambda calcul des annees 50. Enfin c’est infini et on peut faire tout un arbre genealogique avec tous ces langages).

Il manque l’Objective C dans ta liste.
Et bon C++ et Lisp dans le même panier, comme ça, cash,je trouve que c’est tirer un peu trop fort sur le principe de parentée.
(et pour le troll-bonus-point : le Pascal c’est laid)

Je met ce que je veux dans ma liste :stuck_out_tongue:

Et le panier c’est « le panier des langages ayant influencé C# » et « ayant des points communs ». Je vois pas en quoi c’est tirer fort sur le principe de parentee. Du tout. En particulier, comme je l’ai dit, en considerant les extension LINQ de C# 3.0. Ca implique pas necessairement de relation entre C++ et LISP et je m’amusais pas a refaire l’arbre genealogique complet de tous les langages du monde, faut whatmilles page pour ca et pour une version possible qui peut forcement pas tout montrer, on peut regarder ici http://www.levenez.com/lang/

merci m’sieur.
Ma question était relative à un projet que j’ai commencé cette semaine, la plate forme est XP/VC++ 2003/.net 1.1, non négociable, et je n’avais jamais touché à .net. Donc exit c#…

Question: A supposer que je design un objet (sous cette plateforme) et que l’une des méthodes soit non compilable, trouves tu interessant que le compilateur compile « par partie » cette objet (seulement les méthodes correctes) ?

Je suis tombé sur un cas où seule l’une de mes méthodes était compilée, impossible de se douter que c’était cet objet qui posait problème à la compil. Et j’ai trouvé cette approche un peu curieuse …