2008-08-28 13 views
21

estoy empezando un nuevo proyecto web y estoy considerando dos marcos de presentación. Estoy pensando en ASP.NET MVC o Silverlight. Me inclinaría por Silverlight ya que soy un desarrollador de .NET bastante experimentado, mientras que poseo un conocimiento básico de los controles ASP.NET.ASP.NET vs Silverlight

+0

¿Por qué limitarse solo a estos dos marcos? ¿Qué pasa con Wicket y el uso de Java? Considere esto es 8 años más tarde y estoy seguro de que él es probablemente un CEO de su propia compañía por ahora; esto es solo un comentario y yo pensando en voz alta mientras leo, y para otros que se encuentran con este artículo para considerar. – eaglei22

Respuesta

32

Principalmente va a ser un producto iternal por lo que los navegadores no son un problema.

Usted todavía no ha escrito una descripción adecuada acerca de la naturaleza de su aplicación. Es difícil evaluar qué tecnología encaja bien sin conocer bien el dominio al que se está aplicando la aplicación y los problemas que está diseñado para resolver.

En general, Microsoft está posicionando esta matriz de tecnologías de presentación en el continuo "Reach vs Rich". Tiene un HTML y un Javascript "antiguo" en un extremo, aceptable para la mayor cantidad de máquinas cliente, y el último WPF completo en el otro lado donde puede manejar un número limitado de máquinas. Mencionó que se trata de una aplicación interna, por lo que WPF a través de XBAP o ClickOnce también son posibles.

Así que la escala se alinearía de esta manera: (llegar) a ASP.NET, AJAX, Silverlight, WPF (rico).

¿Entonces la pregunta es qué tan rico quiere/necesita que sea para los usuarios hasta que hiera la base de implementación? Francamente, si todo lo que busca son formularios y datos tabulares y estadísticas, entonces los formularios web regulares de ASP.NET están bien. Si desea gráficos ajustables sobre la marcha e interactivos del lado del cliente con los servicios web WCF de Back-end, Silverlight puede hacerlo. Si desea una representación gráfica aún más poderosa que WPF a través de las opciones de implementación remota, es su apuesta.

+1

+1 Para una forma inteligente de explicación –

0

Es difícil recomendar uno sobre el otro sin saber cuál es su aplicación. Independientemente de lo que decida, asegúrese de tener en cuenta a su público objetivo; no todos van a tener instalado Silverlight en sus computadoras.

En lo personal, a menos que yo estaba diseñando una aplicación web muy interactivo y hermosa, me gustaría ir con ASP.NET (con o sin el marco MVC) aunque sólo sea por el hecho de que hay un montón de material de referencia para él mientras que Silverlight es un territorio relativamente nuevo.

0

Principalmente va a ser un producto de serie para que los navegadores no sean un problema. Se trata más sobre el precio del desarrollo. ¿Es más fácil aprender el modelo de Silverlight o el modelo de ASP.NET? Espero que Silverlight esté basado en WebServices, por lo que podría dividir claramente mi código de aplicación en una lógica de negocios (servicio) y presentación (aplicación Silverlight).

3

No olvide que Silverlight va a necesitar un complemento para usar, y que sepa que no se ha agregado "nativamente" a IE, y mucho menos al resto de los navegadores. Entonces, podría haber toneladas de problemas de mantenimiento/soporte con eso solo. Los archivos PDF se consideran "omnipresentes" por ahora, pero aún se encuentra con uno o dos usuarios que no tienen Adobe Reader en su computadora y, a menudo, ocurre en un mal momento y luego se está escurriendo para obtener un instalador.

En un nivel fundamental, esto es lo que me ha impedido hacer Silverlight para mis aplicaciones web. Creo que la tecnología detrás de esto es buena, pero considerando que hoy en día se puede obtener la misma visibilidad/funcionalidad con una bonita combinación de Webforms/MVC/AJAX/jQuery (mezclar y combinar a su gusto), yo diría que se quede con ASP.NET.

4

Tanto personal como profesionalmente, escribo C# diariamente para aplicaciones de formularios de Windows y servicios de Windows. Incluso después de años de esto, me resulta mucho más rápido lanzar una aplicación web con PHP o Python que hacerlo con .NET. Tal vez las cosas han cambiado con Silverlight, pero para mí la curva de aprendizaje en ASP.NET es ridícula en comparación con la recuperación de la inversión.

Edición: Lo anterior se escribió aproximadamente un año antes de que probara ASP.NET MVC. Encuentro ASP.NET MVC maravillosamente intuitivo y limpio.

0

Dado su conocimiento en .NET pero experiencia limitada de Asp .net ... supongo que es más un tipo de cliente/servicio. Lo que significará que su javascript es probablemente tan limitado ... Si este es el caso, iría con Silverlight. Te facilitará ingresar a WPF, que es probable que uses en el futuro.

Pero lo más importante es que trabajar con Silverlight 2.0 es más parecido a crear una aplicación de escritorio con espacio aislado. Más que una aplicación web. Estará más en casa con Silverlight si su experiencia previa es con aplicaciones de clientes.

Si quiere entrar en la construcción de sitios web/aplicaciones, vaya a ASP .NET MVC.

De cualquier manera, el conocimiento de los típicos controles ASP .NET no llegará muy lejos, ya que son para WebForms.

2

IMO puede estar mejor con ASP.Net. Si bien tendrías una ligera curva de aprendizaje, estarías desarrollando un modelo probado, confiable y escalable en lugar de algo que esté en versión beta y que probablemente cambie antes de RTM.

Además, con AJAX en estos días es posible obtener una experiencia de usuario bastante elegante de ASP.Net.

5

Silverlight 3 con RIA parece ser muy potente. No había programado durante 6 años después de trabajar en VB6. Hace unos meses, aquí estoy desarrollando una aplicación web que usa SL3, WCF y el marco de entidades y me siento muy cómodo.

El foro de Silverlight y stackoverflow por supuesto son muy activos y para algunos de los problemas que he tenido, he podido obtener una solución fácilmente.

Lo único de lo que todavía no estoy seguro es el rendimiento.

0

Yo diría que, a menos que necesite animaciones y capacidades de interacción tipo flash, vaya a ASP.NET. Es más fácil programar en contra y no requiere descargas adicionales para los usuarios.

1

Recomendaría ASP.NET, no se necesita ninguna descarga adicional.

Utilicé Silverlight pero muchas empresas no permiten que los usuarios instalen nada. Además, los usuarios domésticos no están contentos de instalar los complementos del navegador, Silverlight no es tan conocido como Flash Player.

Para principiantes y programadores avanzados, puede encontrar videos de tutoriales en.

http://www.asp.net/mvc

0

creo Silverlight sólo es necesario cuando se desea crear aplicaciones como Flash. Estas aplicaciones se combinan en un único ejecutable que se descarga una vez en la máquina cliente. Pueden comunicarse con el servidor si necesitan datos o cualquier funcionalidad que resida en el servidor. El usuario final necesita instalar el complemento de entorno de Silverlight para ayudar a ejecutar estas aplicaciones.

Considerando que si crea una aplicación asp.net, su código reside y se ejecuta en el servidor mismo y, por lo tanto, un simple navegador de Internet puede ejecutarlo. Pero la desventaja es que para las aplicaciones interactivas del usuario, debe haber llamadas separadas entre el servidor y la máquina del cliente cuando el código lo requiera.