2011-08-24 16 views
58

Disculpas por la pregunta tan subjetiva.prácticas recomendadas de javascript para los desarrolladores de asp.net mvc

Estoy buscando algunos ejemplos prácticos de cómo administrar javascript mejor en las aplicaciones asp.net mvc.

Antes de jQuery, traté de evitar el uso de javascript tanto como sea posible. Ahora lo estoy usando mucho, pero siento que me he perdido algunas mejores prácticas/recomendaciones para estructurar mi código de JavaScript en aplicaciones web más grandes.

Algunas cosas que yo soy culpable de y quiere alejarse de:

  1. Inline Javascript en mis puntos de vista. No estoy hablando de una gran cantidad de código, pero no es raro que tenga un código de inicialización en cada vista.
  2. Un gran archivo javascript "sitio". A medida que la lista de complementos utilizada en mi aplicación crece (por ejemplo, jquery ui), también lo hace mi función de "inicio" que está inicializando cada complemento. A menudo, esto es para evitar el problema 1 (agregar javascript en línea). Tal vez un archivo javascript por vista es una mejor solución?
  3. Todo parece muy de procedimiento. Estoy acostumbrado a trabajar de forma orientada a objetos en .net, pero cuando se trata de javascript, parece que se va por la ventana. Ahora sé que OOP es ciertamente posible, y me animé con javascript, pero me vendría bien ver algunos ejemplos prácticos de cómo debería hacerlo en el contexto de una aplicación web real.
  4. Espaciado de nombres/estructura de proyecto - He visto algunos ejemplos de espacios de nombres de JavaScript (en virtud de objetos) y me gusta el enfoque, pero de nuevo podría hacer algo más de conocimiento de fondo.

Cualquier sitio, libro, etc. que la gente pueda recomendar sería apreciado.

+16

@jfar - no estoy seguro de por qué eso garantiza un voto a favor, especialmente porque estoy pidiendo más información sobre las alternativas. –

+3

+1. Creo que esta pregunta podría estar relacionada con muchos desarrolladores, esp. alguien que acaba de comenzar en MVC, como I. –

+7

@jfar - Voto a favor de la votación negativa por molestarse en escribir por qué, aunque no estoy de acuerdo con el por qué. Odio cuando las personas votan de forma anónima. –

Respuesta

2
+0

Me gusta esto. Lo único es que la estrategia fracasará si uno usa las rutas privadas. Una forma de evitarlo sería usar plantillas de texto para generar tanto las rutas como el bootstrap de JavaScript conectando los controladores a las estrategias. La idea es no repetirse. –

0

Para mí, bibliotecas como KnockoutJS han ayudado mucho para organizar mi código JS, es muy poderosa, lo he utilizado para múltiples proyectos y tiene funcionó muy bien (También soy un desarrollador de asp.net mvc, pero esto también se aplica a otras tecnologías, además, el tipo que lo inventó tiene mucha experiencia con aspnet mvc)

9

Pensé en tirar mis 2 centavos.

  1. Best practice sugieren no utilizar JScript en las vistas, y esto me encontré podrían evitarse mediante el uso de ayudantes HTML que contiene JScript JScript o empujan en archivos JS y inicializarlo en su asistente de HTML. Esto es lo que usa el tercer desarrollador de control MVC (por ejemplo, Telerik). Si decide insertar el JScript en su controlador, descubrirá que se complica bastante rápido.

  2. A menudo me encuentro en el mismo escenario donde tengo un archivo JS para cada vista, pero esto se puede consolidar para tener un JS por módulo. De nuevo, esto depende de cuán complejo puede ser tu código.Si encuentra que muchas vistas tienen la misma inicialización, puede bajar el enfoque de vista base. Esto también se considera la mejor práctica.

  3. Encontrará que JScript is quite OO y esto tiene que ver con la forma en que JScript usa JSON. Considero que la flexibilidad de JScript hace que parezca alejarse de OOP. Mi limitada experiencia con JScript es breve y concisa, y esto reforzará los JScripts reutilizables.

  4. Creo que esto puede superarse con la práctica en JScript. El problema más importante que encuentro aquí no es con el espaciamiento de nombres, sino cómo evitar la duplicación/doble carga de JScripts. Si las vistas van a ser "autónomas", en teoría deberían cargar sus propios JScripts, pero esto hará que los JScripts se carguen varias veces o incluso generen conflictos. Una vez más, un buen asistente de HTML puede guardarte aquí (aplogies, no tengo un buen ejemplo, pero Google y no puedes equivocarte).

En general, JScript es muy potente y abre la programación web a un nivel completamente nuevo. JScript será cada vez más parte de la plataforma web, especialmente cuando todos pasen a HTML 5. Con MVC y JSript, hay 100 formas diferentes de hacer exactamente lo mismo y las mejores prácticas solo pueden llevarlo hasta ahora. El resto depende de usted para decidir en función de lo que está tratando de lograr, quién es su público objetivo y qué navegadores está apoyando.

Cuestiones relacionadas