les meilleures pratiques javascript pour les développeurs ASP.net mvc

Des excuses pour la question étant si subjective.

Je cherche des exemples pratiques pour mieux gérer javascript dans les applications asp.net mvc.

Avant jQuery, j’ai essayé d’éviter d’utiliser JavaScript autant que possible. Maintenant, je l’utilise beaucoup mais je pense que j’ai peut-être manqué certaines bonnes pratiques / recommandations pour structurer mon code javascript dans des applications Web plus grandes.

Certaines choses dont je suis coupable et que je veux quitter:

  1. Javascript en ligne dans mes vues. Je ne parle pas de masses de code mais il n’est pas rare que je dispose d’un code d’initialisation sur chaque vue.
  2. Un grand fichier javascript “site”. Comme la liste des plug-ins utilisés dans mon application augmente (par exemple, jquery ui), il en va de même pour ma fonction de “démarrage” qui initialise chaque plug-in. Cela permet souvent d’éviter le problème 1 (ajout de javascript en ligne). Peut-être qu’un fichier javascript par vue est une meilleure solution?
  3. Tout semble très procédural. J’ai l’habitude de travailler de manière orientée object dans .net, mais quand il s’agit de javascript, cela semble sortir de la fenêtre. Maintenant, je sais que la POO est certainement possible, et encouragée avec le javascript, mais je pourrais faire avec quelques exemples pratiques de la façon dont je devrais le faire dans le contexte d’une application Web réelle.
  4. Structure du projet / de la structure des noms – J’ai vu quelques exemples de noms de noms javascript (en vertu des objects) et de l’approche, mais encore une fois, je pourrais utiliser d’autres connaissances de base.

Tous les sites, livres, etc. que les gens peuvent recommander seraient appréciés.

Je pensais jeter mes 2 centimes.

  1. Les meilleures pratiques suggèrent de ne pas utiliser JScript dans les vues, et cela pourrait être évité en utilisant les helpers HTML qui contiennent JScript ou poussez JScript dans les fichiers JS et initialisez-le dans votre aide HTML. C’est ce que les développeurs de contrôle MVC tiers (par exemple, Telerik) utilisent. Si vous décidez de pousser le JScript dans votre contrôleur, vous vous rendrez compte que cela devient assez rapide.

  2. Je me retrouve souvent dans le même scénario où j’ai un fichier JS pour chaque vue, mais cela peut être consolidé pour avoir un JS par module. Encore une fois, cela dépend de la complexité de votre code. Si vous trouvez que beaucoup de vues ont la même initialisation, vous pouvez suivre l’approche de la vue de base. Ceci est également considéré comme la meilleure pratique.

  3. Vous constaterez que JScript est assez OO et cela est lié à la façon dont JScript utilise JSON. Je trouve que la flexibilité de JScript lui donne l’air de s’appuyer sur la POO. Mon expérience limitée avec JScript est de le garder court et concis et cela renforcera les JScripts réutilisables.

  4. Je pense que cela peut être dépassé avec la pratique en JScript. Le plus gros problème que je trouve ici n’est pas l’espacement des noms, mais la manière d’éviter la duplication / le double chargement de JScripts. Si les vues doivent être “autonomes”, elles devraient en principe charger leurs propres scripts JScripts, mais cela provoquerait le chargement de JScripts plusieurs fois ou même la création de conflits. Encore une fois, un bon assistant HTML peut vous sauver (aplogies, je n’ai pas un bon exemple, mais Google et vous ne pouvez pas vous tromper).

Dans l’ensemble, JScript est très puissant et ouvre la programmation Web à un tout autre niveau. JScript fera de plus en plus partie de la plate-forme Web, en particulier lorsque tout le monde passera à HTML 5. Avec MVC et JSript, il existe 100 manières différentes de faire exactement la même chose. Le rest est à vous de décider en fonction de ce que vous essayez de réaliser, de votre public cible et des navigateurs que vous prenez en charge.

J’ai utilisé l’approche décrite ici:

http://weblogs.asp.net/jaimedelpalacio/archive/2011/03/23/a-way-to-organize-your-javascript-code.aspx

Je serais curieux de savoir ce que vous en pensez.

Référez-vous à une question similaire sur SO

Existe-t-il un meilleur moyen d’organiser JavaScript dans un seul fichier avec un code spécifique pour plusieurs pages?

Pour moi, les bibliothèques comme KnockoutJS ont beaucoup aidé à organiser mon code JS, c’est très puissant, je l’ai utilisé pour plusieurs projets et cela a très bien fonctionné. (Je suis aussi un développeur Asp.net mvc mais cela s’applique aussi à d’autres technologies, en plus, le gars qui l’a inventé a beaucoup d’expérience avec aspnet mvc)