2009-10-03 5 views
-1

Je fournis une bibliothèque qui a actuellement .NET 2.0 comme pré-requis.
Je voudrais aller à .NET 3.5, pour profiter de LINQ, et des délégués d'action, et ainsi de suite, mais je ne veux pas trop de gens. Maintenant que la version 4.0 approche, est-il temps de passer à 3.5?Est-il temps d'abandonner la prise en charge de .NET 2.0 et de passer à .NET 3.5?

La bibliothèque fonctionne sur les versions Desktop et CF du Framework.

Est-ce que quelqu'un sait - Quels sont les numéros d'adoption des différentes versions de la structure?

+2

N'était-ce pas il y a des mois? : o) –

Répondre

4

Eh bien, il va certainement aller avec Windows 7.

Il y a une question sur SO .NET framework penetration among home users. Bien qu'anecdotique, la réponse de Matt Bridges est probablement réaliste.

Cela dépend de votre marché cible.

  • utilisateurs Home: probablement trop tôt
  • utilisateurs généraux de la société: un risque; peut-être faire une enquête
  • Votre société: demander IT
  • développeurs ou amateurs: foncez
  • Open Source pour votre propre plaisir: faire

Rappelez-vous que .NET 3.5 est pas pris en charge sur Windows 2000. Cela a retardé l'adoption dans notre société pendant un certain temps (nous avons finalement fait le changement). Ceci est principalement préoccupant dans un environnement d'entreprise.

6

Tout en allant avec 3.5 est une bonne option dans la plupart des cas, vous pouvez profiter des avantages de LINQ en utilisant le compilateur C# 3.0 et .NET 2.0 avec LINQBridge.

Notez que si .NET 4.0 va être libéré dans un proche avenir, .NET 3.5 est pré-installé sur Windows 7, ce qui le rend plus disponible compte tenu des déploiements large spéculé de Windows 7.

Et si vous restez Avec .NET 2.0, vous pouvez tirer parti de la base d'installation Windows Vista qui contient .NET 3.0 prêt à l'emploi.

1

Le nombre de développeurs et d'environnements qui ne peuvent pas utiliser 3.5 diminue rapidement. J'ai entendu diverses estimations de 10% à 40% des environnements qui ne peuvent pas encore supporter 3.5. Probablement votre meilleur pari, cependant, est de demander à vos clients (ou au moins un bon échantillon d'entre eux) et voir s'ils peuvent soutenir 3.5 dans leur environnement. Je dirais que si moins de 20% disent qu'ils ne peuvent pas passer à 3.5 (ou ne le peuvent pas dans un proche avenir), alors allez-y avec 3.5 et dites que la prochaine version de votre bibliothèque nécessitera 3.5 et qu'il y aura Ne pas avoir d'autres développements sur la version 2.0, sauf dans les cas où une faille de sécurité sévère ou un autre bug critique pourrait être trouvé.

0

Vous pouvez également envisager de créer une bibliothèque d'extensions. Bien que cela dépende évidemment de la façon dont vos composants et bibliothèques sont architecturés, cette approche vous permettrait de conserver votre bibliothèque 2.0 compatible tout en fournissant une bibliothèque d'extension qui ajoute des fonctionnalités spécifiques aux composants principaux. Cela pourrait également aider au débogage, puisque vous ne courez pas le risque (ou plus d'un) de créer des changements de rupture.

0

La meilleure façon de savoir est de faire un servey client si vous le pouvez. Bien sûr, quand vous avez beaucoup d'utilisateurs à domicile, les services ne sont pas faciles à réaliser.Personnellement, je base ma rétrocompatibilité sur la règle des 80%. Si 80% ou plus des utilisateurs (stations clientes) sont prêts pour la nouvelle version, j'abandonne la version la plus ancienne.

Une autre méthode consiste à abandonner le support lorsque (dans votre cas) Microsoft abandonne le support de la version .NET en question. De cette façon, vos clients sont sensés migrer vers une version plus récente de .NET.

0

Les personnes qui ne peuvent pas utiliser .NET 3.5 sont celles qui exécutent Windows 2000 et Windows 9x. Heureusement, il ne devrait y avoir presque plus personne de ce dernier, et Windows 2000 sera entièrement terminé en juillet 2010 (plus de mises à jour de sécurité).

Bien que EoL n'empêche pas les utilisateurs d'utiliser Windows 2000, il faut espérer réduire le nombre de ceux qui n'ont pas mis à niveau.

2

Cela dépend de vos clients.

  • Si vos clients sont lents à adopter les nouvelles technologies (un système d'exploitation moderne, le matériel moderne qui peut exécuter un système d'exploitation moderne et récente .NET), nécessitant alors un nouveau .NET aliénerai une partie importante de vos clients .

  • Si c'est le type qui va à Windows Update chaque semaine pour s'assurer qu'ils ont toutes les dernières mises à jour, ils auront le dernier .NET à partir de là.

Il dépend de vous.

  • J'ai de meilleures choses à faire dans ma vie que de supporter des plateformes anciennes. Êtes-vous prêt à sacrifier votre énergie vitale de cette façon?

  • Je suis plus productif avec les meilleurs outils de développement. Cela signifie que je peux faire de meilleurs logiciels (moins de bugs, de meilleures fonctionnalités, des versions plus rapides), ce qui profite à mes clients. Êtes-vous prêt à sacrifier cette valeur dans votre logiciel? Je suis prêt à perdre des clients qui ne vont pas mettre à jour leur plate-forme. Cela signifie que je suis prêt à perdre des revenus à cause de ma décision. Êtes-vous prêt à sacrifier cette partie de votre clientèle?

Rappelez-vous que vous n'êtes pas simplement en train de changer qui sont vos clients, mais vous êtes également établir une réputation qui affectera votre base de clients à l'avenir. Si vous aliénéz un curmudgeon, il répandra la négativité à ses amis. De même, si vous ravissez un adopteur précoce, elle va répandre l'amour. Les deux sont des effets puissants.

1

Il y a très peu de bonnes raisons de ne pas utiliser .NET 3.5. Il utilise exactement le même CLR que .NET 2.0, de sorte que la "mise à niveau" vers .NET 3.5 n'affecte pas les applications .NET 2.0 existantes. Ceci est différent de la situation de .NET 1.1 à .NET 2.0, qui a foiré les applications .NET 1.1 existantes.

En ce qui concerne les applications .NET 2.0 existantes, .NET 3.5 n'est rien de plus que .NET 2.0 SP2.


P.S. La première bonne raison que j'ai entendu parler de ne pas mettre à jour .NET 3.5 était une politique d'entreprise pour être en mesure de soutenir Mono.

+0

Vous êtes sûr que Mono ne supporte pas .NET 3.5? – luiscubal

+0

Non. Je suis sûr que c'était la raison donnée récemment sur SO par quelqu'un comme raison de ne pas mettre à niveau. –

Questions connexes