J'ai découvert .Net il y a 3 ans pour un projet en 2.0. Arrivant d'un monde Java, j'ai fait la tête au début. Ma première surprise agréable a été la facilité de réaliser des interfaces graphiques en Winform. Bon, si on n'y prend aps garde, on peut vite faire quelque chose de bordélique, mais ça permet d'avancer rapidement ! Mais je ressentais le manque de divers d'éléments sous java, ou des implémentations qui m'échappaient. Bref, ce n'était pas encore ça.
Au passage à la version 3/3.5, avec WCF, Linq et EF (pis WPF/silverlight dans une moindre mesure, je ne les maitrise encore pas), ça a été une révolution. la capacité de communiquer simplement avec WCF, Linq pour le traitement des données (et l'optimisation qui va derrière, un Where coûte moins cher qu'un foreach+if, allez comprendre comment ils ont bidouillé ça xD), ça change la méthode d'aborder un projet, il n'y a plus qu'à se consacrer sur le quoi faire...
En terme de client lourd, c'est un vrai plaisir (pis bon on peut tricher via du bureau à distance pour simuler un client léger portable, qui a dit VNC ?), de développer des applications réactives et ergonomiques. J'ai travaillé sur des projets qui exigent une grande ergonomie et surtout des contraintes techniques fortes, avoir ces technos sous la main est un véritable atout.
WPF coûte cher à l'apprentissage, mais commence à apparaitre dans les produits MS, il suffit de regarder Visual Studio, qui est un assez bon exemple de ce qu'on peut faire, mais qui a du faire s'arracher des cheveux aux développeurs si on repense aux premières betas...
Maintenant, avec la 4.0, massivement parallèle, je sais que c'est un pas en avant, mais par endroit c'est tellement simple de faire un code managé parallèle : avec un appel de méthode supplémentaire, on transforme tout ça (mais pas simpliste, attention aux pièges de la programmation concurrente bien sûr).
Je n'ai pas encore testé l'aspect ASP .Net, aucune idée de ses performances ou le gain qu'il peut apporter...
Un dernier point fort, c'est l'intégration de .net avec les autres produits de Redmond : VS, SQL Server (hâte de développer un ptit soft de surveillance de réplication à plugger), Sharepoint (que je ne connais pas).
Après, ce n'est pas un environnement parfait. Des références nulles qui continuent dêtre la cible d'événements est un élément à connaitre au plus tôt, sous peine de voir son application s'écrouler... On retrouve quelques éléments comme ça qui peuvent empoisonner la vie, et qu'il faut connaître au plus tôt (mais souvent trop tard).
J'avais lu vite fait un article sur l'orentation de .net 5.0, avec du code mutable ou un truc dans le genre, faudra que je le retrouve à l'occaz...
Pour le pourquoi du framework .Net, c'est tout simplement l'avenir de Windows, si on regarde du côté du projet Singularity...
Niveau césure entre chaque version, cela reste très faible, parfois des classes changées d'assemblys, parfois un élément marqué obsolète pour une nouvelle et meilleure implémentation. Dans ces cas là le compilateur fait son office et nous guide au mieux.
J'ai lu un argument pro-.net/anti-java, parlant du fait que java faut se taper 10 librairies tierces à pointer, on peut aussi se retrouver dans cans ce cas avec .net, ce qui sort des labs n'est pas inclus dans le framework, il faut parfois aller piocher sur le site de Microsoft pour avoir ces librairies.
Bon, un post un peu hétéroclite, mais il y a tellement de choses à dire...
Partager