Question

Je travaille sur une application Web destinée à avoir une durée de vie d'au moins 6 ans.Une fois l'application livrée, il y a de fortes chances qu'elle ne soit pas modifiée pendant ce laps de temps.

Nous envisageons d'utiliser le framework asp.net MVC et jQuery, mais je me demande si c'est un bon choix.Le client ne voudra probablement pas consacrer plus de temps et d’argent à l’avenir, car le javascript, les normes des navigateurs, etc. ont changé.

Quelle est la meilleure option pour minimiser les risques que l'application nécessite une maintenance au cours des 6 prochaines années ?

Était-ce utile?

La solution

  

client ne va probablement pas vouloir passer plus de temps et d'argent sur la route parce que javascript, les normes du navigateur, etc ont changé.

est-elle, ou est-elle pas? Pouvez-vous persuader que le monde autour d'elle ne cesse de bouger, et elle besoin pour mettre à jour son application pour travailler avec les principales plates-formes d'avenir?

Je suppose que c'est une application intranet, pas une application publique (Internet face). Parce que si ce intranets je pense que 6 ans est irréaliste, mais le mode d'échec est susceptible d'être assez bénigne. Mais Internet, 6 ans et aucune mise à jour de sécurité à l'application elle-même -. Aucune façon, je ne participerait pas à cela pour éviter d'endommager ma réputation professionnelle

Je voudrais essayer difficile de vendre un dispositif de retenue (frais d'entretien du logiciel) pour maintenir le courant de l'application. Et avec cela, un bon document juridique décrivant clairement ce que le client obtient pour les frais (à savoir la compatibilité et des correctifs de sécurité, pas de nouvelles fonctionnalités). Maintenance du logiciel est généralement pas difficile à vendre si vous ne l'hébergement ainsi.

Pour les besoins du raisonnement, en supposant que la demande est 'gelé' pendant 6 ans:

Je voudrais absolument pas utiliser Javascript est désactivé sur tout ce qui est censé durer 4+ générations de navigateur. Je pense que jQuery est grande, mais ... aucun moyen, moteurs Javascript changent beaucoup trop vite. Pour la sortie, je tiendrais à uniquement:

  • HTML 4.01 Strict et CSS 2 (je pensais à XHTML 1.0 Strict, ce qui est essentiellement HTML 4.01 Strict changé pour se conformer aux règles XML. Mais HTML 4.01 a la plus grande base installée, et je m pas fan de XML. Il est un jugement.)
  • PNG et GIF.

En ce qui concerne maintenant chose statique, cette sortie simple est probablement la plus grande victoire.

Pour l'environnement du serveur, Je voudrais essayer de spécifier Windows 2008 R2; 4.0 .NET et ASP.NET MVC 2, et une configuration de serveur 'quasi-gelé' (à savoir les mises à jour de sécurité seulement). Windows 2008 R2 devrait avoir un support étendu pour environ noreferrer 10 ans à partir de maintenant. La génération précédente (Win 2008, 3.5SP1 .NET et MVC 1.0) fonctionnerait aussi; mais ASP.NET MVC 2 est à la recherche soo belle, donc je préfère l'utiliser pour mon FUNFACTOR personnel.

Les grands projets open source avec un bon dossier de « être là » serait bien trop -. NHibernate, NUnit, StructureMap etc.

Oh, et bon appel à l'aide d'ASP.NET. Microsoft est toujours bonne à maintenir la compatibilité ascendante et rétroportage correctifs de sécurité. ASP.NET et Java sont les deux environnements que je considère quelque chose comme ça.

Autres conseils

Vous n'aurez probablement pas à vous en soucier.Le travail avec JQuery représente un investissement tellement énorme de la part de plusieurs grandes entreprises que je doute que vous rencontriez ce genre de problèmes.Le Web sera probablement toujours voué à rester rétrocompatible (et cela signifie avec des éléments sortis il y a 10 ans aujourd'hui), donc je soupçonne que votre application basée sur JQuery devrait fonctionner correctement.Si tout se passe bien avec IE7/8, le dernier Firefox et Safari, tout devrait bien se passer.Autrement dit, si cela ne suffit pas, aucune autre solution basée sur le Web ne le fera probablement non plus.

Mais je recommande vivement d'utiliser JQuery pour vous cacher de nombreux problèmes spécifiques au navigateur en termes d'interaction Javascript.En ce qui concerne ASP.NET MVC, il s’agit là encore d’une plate-forme assez solide que je pense que de nombreuses entreprises continueront à prendre en charge dans les années à venir.

Pour jquery, juste ne vous inquiétez pas, comme l'a dit bobbyshaftoe.

Pour ASP.NET MVC, il ne va pas mourir bientôt; nontheless, car il est très jeune technologie et susceptible de changer fréquemment dans les premières versions, les problèmes d'entretien peuvent être attendus.

Le même utilisé pour arriver avec des rails:. Une application écrite avec 1.x rails nécessaires certains changements au travail e rails 2.x

Cela peut être un problème ou non: une application écrite avec 1.x rails continuera à travailler avec 1.x rails, et une application écrite avec MVC 1 va continuer à travailler avec MVC 1.

Je pense qu'il est encore trop tôt pour dire combien MVC 2 différera de MVC 1: MVC 2 Preview 2 est, mais il faut remarquer que beaucoup de classes, méthodes, interfaces, etc. ont changé le nom et le comportement à plusieurs reprises entre MVC 1 RC1, RC2 MVC1 etc.

Par contre, si votre application est assez complexe, en utilisant MVC peut encore être le bon choix, même compte tenu de l'effort supplémentaire nécessaire pour mettre à jour les nouvelles versions (ce qui est généralement pas si grand): une application MVC est plus maintenable (à mon avis).

Une dernière considération: s'il vous plaît noter que 6 ans sont un temps très long dans le monde du web sauvage, il est donc impossible de dire à l'avance ce qui va changer et ce qui ne sera pas.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top