Pergunta

Estou iniciando um novo projeto web e considerando dois frameworks de apresentação.Estou pensando em ASP.NET MVC ou Silverlight.Eu preferiria o Silverlight, pois sou um desenvolvedor .NET bastante experiente, embora tenha apenas um conhecimento básico de controles ASP.NET.

Foi útil?

Solução

Será principalmente um produto iternal para que os navegadores não sejam um problema.

Você ainda não escreveu um apropriado descrição sobre a natureza da sua aplicação.É difícil avaliar qual tecnologia é adequada sem primeiro conhecer bem o domínio ao qual a aplicação está sendo aplicada e os problemas que ela foi projetada para resolver.

Em geral, a Microsoft está posicionando esta gama de tecnologias de apresentação no "Alcance vs Rico"continuo.Você tem HTML e Javascript "simplesmente antigos" em uma extremidade, aceitável pelo maior número de máquinas clientes existentes, e o WPF completo e definitivo do outro lado, onde um número limitado de máquinas pode suportar.Você mencionou que este é um aplicativo interno, portanto, WPF via XBAP ou ClickOnce também é possível.

Portanto, a escala se alinharia desta forma:(alcance) ASP.NET, AJAX, Silverlight, WPF (rico).

Portanto, a questão é quão rico você deseja/precisa que ele seja para os usuários até que prejudique a base de implantação?Francamente, se tudo o que você busca são formulários, dados tabulares e estatísticas, os formulários da Web ASP.NET regulares são adequados.Se você deseja gráficos redimensionáveis ​​instantaneamente e interativos no lado do cliente com serviços da web WCF de back-end, o Silverlight pode fazer isso.Se você deseja uma renderização gráfica ainda mais poderosa do que o WPF por meio das opções de implantação remota, sua aposta é sua aposta.

Outras dicas

Silverlight 3 com RIA parece ser muito poderoso.Eu não programava há 6 anos depois de trabalhar no VB6.Há cerca de um mês, aqui estou desenvolvendo uma aplicação web que usa SL3, WCF e framework de entidade e me sinto muito confortável.

O fórum do silverlight e o stackoverflow, é claro, são muito ativos e, para alguns dos problemas que tive, consegui obter uma solução facilmente.

A única coisa que ainda não tenho certeza é o desempenho.

Pessoal e profissionalmente, escrevo C# diariamente para aplicativos de formulários e serviços do Windows.Mesmo depois de anos disso, acho MUITO mais rápido criar um aplicativo da web com PHP ou Python do que com .NET.Talvez as coisas tenham mudado com o Silverlight, mas para mim a curva de aprendizado no ASP.NET é ridícula comparada ao retorno financeiro.

Editar: O texto acima foi escrito cerca de um ano antes de eu experimentar o ASP.NET MVC.Acho o ASP.NET MVC maravilhosamente intuitivo e limpo.

Não se esqueça que o Silverlight exigirá um plug-in para ser usado e, até onde sei, ele não foi adicionado "nativamente" ao IE, muito menos ao restante dos navegadores.Portanto, pode haver muitos problemas de manutenção/suporte apenas com isso.Os arquivos PDF são considerados "onipresentes" agora, mas você ainda encontra um ou dois usuários que não possuem o Adobe Reader em seu computador e isso geralmente ocorre em um momento ruim e você está correndo para obter um instalador.

Em um nível fundamental, foi isso que me impediu de usar o Silverlight para meus aplicativos da web.Acho que a tecnologia por trás disso é boa, mas considerando que hoje em dia você pode obter igual visibilidade/funcionalidade com uma boa combinação de Webforms/MVC/AJAX/jQuery (misture e combine ao seu gosto), eu diria que fique com o ASP.NET.

IMO, você pode estar melhor com o ASP.Net.Embora você tenha uma ligeira curva de aprendizado, você estaria desenvolvendo um modelo comprovado, confiável e escalonável, em vez de algo que está na versão beta e provavelmente mudará antes do RTM.

Além disso, com o AJAX hoje em dia é possível obter uma experiência de usuário bastante eficiente no ASP.Net.

Eu recomendaria o ASP.NET, nenhum download adicional é necessário.

Eu usei o Silverlight, mas muitas empresas não permitem que os usuários instalem nada e os usuários domésticos não gostam de instalar plug-ins de navegador. O Silverlight não é conhecido como Flash player.

Para programadores iniciantes e avançados, você pode encontrar tutoriais em vídeo em.

http://www.asp.net/mvc

É difícil recomendar um em detrimento do outro sem saber qual é a sua aplicação.Independentemente do que você decidir, certifique-se de manter seu público-alvo em mente;nem todo mundo terá o Silverlight instalado em seus computadores.

Pessoalmente, a menos que eu estivesse projetando um aplicativo da web incrivelmente interativo e bonito, eu escolheria o ASP.NET (com ou sem a estrutura MVC), pelo menos pelo fato de haver um tonelada de material de referência para ele, enquanto o Silverlight ainda é um território relativamente novo.

Será principalmente um produto interno, portanto os navegadores não serão um problema.É mais sobre o preço do desenvolvimento.É mais fácil aprender o modelo Silverlight ou o modelo ASP.NET?Espero que o Silverlight seja baseado em WebServices e, portanto, possa dividir claramente o código do meu aplicativo em lógica de negócios (serviço) e apresentação (aplicativo Silverlight).

Dada a sua experiência em .NET, mas experiência limitada em Asp .net ...Presumo que você seja mais um cara de serviço/cliente.O que significa que seu javascript provavelmente é igualmente limitado...Se for esse o caso, eu escolheria o Silverlight.Isso facilitará sua entrada no WPF, que provavelmente você usará no futuro.

Mas o mais importante é que trabalhar com o Silverlight 2.0 é mais como criar um aplicativo de desktop em área restrita.Mais que um aplicativo web.Você se sentirá mais à vontade com o Silverlight se tiver experiência anterior com aplicativos clientes.

Se você quiser começar a construir sites/aplicativos, use o ASP .NET MVC.

De qualquer forma, o conhecimento dos controles típicos do ASP .NET não irá longe, já que eles são para WebForms.

Eu diria que - a menos que você precise de recursos de animação e interação semelhantes a flash - opte pelo ASP.NET.É mais simples de programar e não requer downloads extras para os usuários.

Acho que o Silverlight só é necessário quando você deseja criar aplicativos como o Flash.Esses aplicativos são combinados em um único executável que é baixado uma vez na máquina cliente.Eles podem se comunicar com o servidor se precisarem de quaisquer dados ou funcionalidades que residam no servidor.O usuário final precisa instalar o complemento do ambiente Silverlight para ajudar a executar esses aplicativos.

Considerando que, se você criar um aplicativo asp.net, seu código residirá e será executado no próprio servidor e, portanto, um simples navegador da Internet poderá executá-lo.Mas a desvantagem é que, para aplicativos interativos com o usuário, é necessário que haja chamadas separadas entre o servidor e a máquina cliente quando o código exigir.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top