28 votes

Me convaincre de passer à .net 3.5 (à partir de la 2.0)

Je suis dans le nouveau bureau de développement d'applications. Je me sens à la maison avec .NET 2.0 et c#. Je suppose que je n'ai pas besoin de linq, ni soins pour WPF et d'autres Vista-oid de fantaisie de mots clés. J'aime aussi assez serré et slim 2.0 redistributable, encore plus que pour la raison que c'est Vista et 7 inclus.

Pourquoi passer à 3,5?

54voto

Spence Points 15057

Un seul mot:

Linq

Une fois que vous avez fait une simple requête sur vos objets à l'aide de Linq, vous ne reviendrez jamais. Linq n'est pas seulement les bases de données, vous pouvez avoir tout type de collection, et si vous pouvez vous exprimer sur le plan fonctionnel, vous pouvez modifier

foreach (obj in myCollection)
{
   if (obj.property == match)
   {
      foundObj = obj;
      break;
   }
}

pour

myCollection.Single(obj => obj.property == match);

EDIT: OU

var foundobj = 
(from obj in myCollection
where obj.property == match)
.Single()

Qui on fait le plus de sens? Quel sujet lorsque vous voulez exprimer beaucoup plus de requêtes complexes, comme par exemple lorsque cette et que et que, à partir de sélectionner ceux qui correspondent à une autre propriété. Vous pouvez le faire de deux appels de fonction.

Désolé du coup de gueule, mais j'aime vraiment Linq.

14voto

Bevan Points 20976

Hypothèse: Vous travaillez avec Visual Studio 2005 et .NET 2.0.

Raison n ° 1: Vista inclut .NET 3.0 comme une partie de l'Installation du système d'exploitation, Windows 7 inclut .NET 3.5

Raison n ° 2: Il existe des moyens pour cible .NET 2.0 à l'aide de Visual Studio 2008 (VS 2010), de sorte que vous pouvez gagner de la productivité des "goodies" de ces outils, sans abandonner .NET 2.0, puis déplacer vers .NET 2+ lorsque vous êtes prêt. (Visual Studio peut vous aider à éviter non .NET 2.0 assemblées tout en vous code.)

Raison n ° 3: les méthodes d'Extension, en particulier la classe statique Enumerable. Techniquement, une partie de Linq, mais une bonne manière d'écrire du code propre, clairement, et d'une façon plus prévisible.

Raison n ° 4: correction de bugs pour la .NET framework 2.0. Rappelez-vous que .NET 3.0 et .NET 3.5 utilise toujours le même .NET runtime 2.0 sous le capot - ils seulement ajouter de nouveaux frameworks/librairies et certains compilateur astuces. Il y a eu une tonne de corrections de bugs pour l'exécution de laquelle vous êtes absent dehors sur.

8voto

Yar Points 25421

Une raison de ne pas utiliser de 3,5 est en Mono.

Le Mono API d'aujourd'hui est quelque part dans entre .NET 2.0 et .NET 3.5 voir notre Feuille de route pour plus de détails sur ce qui est mises en œuvre.

Prises à partir d' ici.

Une autre raison est que Winforms n'a pas progressé peine à tous, de sorte que vous voudrez peut-être attendre jusqu'à ce que 4.tout ce qui vient avant le saut.

Ma compréhension est que certaines choses, comme LINQ, peut être utilisé très bien avec .Net 2.0, car c'est juste une Bibliothèque.

8voto

Anthony Gatlin Points 1370

Mouvement de .NET 2.0 .NET 3.5 ne devrait même pas être une considération. Voici quelques raisons pourquoi.

  • .NET 3.5 est parfaitement compatible avec .NET 2.0 car il est construit sur la même base. 3.0 et 3.5 sont que des extensions à la 2.0.
  • LINQ - Vous pouvez utiliser Linq, même sans l'aide de bases de données. Il change chaque chose. Cette caractéristique à elle seule vaut le déplacement.
  • Les Expressions Lambda - de Puissantes capacités de recherche au sein de la collection. Liées à LINQ.
  • Les Méthodes anonymes Créées mthods sans les définir.
  • Les Types Anonymes
  • Windows Workflow Foundation - Créer des flux de travail.
  • Windows Presentation Foundation - Remplace héritage Windows Forms - Peut toujours être utilisé avec l'existant WinForms bien.
  • Silverlight à l'Échelle de retour de la version de WPF pour les Web-applications orientées. Comme pour le Flash.
  • Windows Communication Foundation Remplace le traditionnel, l'accès distant et de Services Web morceaux avec un beaucoup plus robuste infrastructure
  • Pour le Développement Web - ASP.NET Framework MVC - les MEILLEURS!!!!

Sans .NET 3.5, vous êtes absent dehors sur une beaucoup. Sérieusement. Faire le saut. Vous serez heureux vous avez fait.

7voto

Kirk Broadhurst Points 13093

Si vous n'avez pas besoin de LINQ, qui ne veulent pas de WPF (ou WCF), et n'aime pas l'utilisation prolongée de médicaments génériques, la réponse est simple: ne pas le faire!

Cependant, une fois que vous avez utilisé seulement l'une des caractéristiques ci-dessus de 3.5, vous vous demanderez comment vous avez pu vous en passer. La vraie raison pour passer à 3.5 pour obtenir le bénéfice de ces caractéristiques.

Donc, si vous êtes tout à fait heureux avec la 2.0, et n'ont jamais dit: "je souhaite que je pourrais juste... xyz", je vous suggère de rester où vous êtes.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X