none
Padrão MVC com o ASP.NET MVC Framework.... RRS feed

  • Pergunta

  • Olá pessoal...

     

    Estou com um cliente que resolveu desenvolver uma aplicação em MVC usando o ASP.NET MVC Framework...

     

    Estou dando uma estudada no framework, porém não vi muita vantagem em relação ao padrão WebForms. Para falar a verdade eu só vi desvantagens.

     

    - Demora na criação e análise do projeto

    - Volta a um conceito triste da época do ASP que é o spaguetti-code

    - A não possibilidade do uso dos métodos criados pelo ciclo de vida, fazendo com que tenhamos que criar todos os métodos na mão.

     

    Alguém pode me dar uma forte vantagem de usar esse padrão de conceito?

     

    Eu poderei criar meus controles e usa-los? E componentes prontos como o freetextbox poderão ser usados?

     

    Aguardo Resposta.

     

    Atenciosamente....

     

    Danilo Fernandes

    terça-feira, 12 de agosto de 2008 14:06

Respostas

Todas as Respostas

  • Leia este artigo.

     

    http://www.macoratti.net/08/06/asp_mvc1.htm

     

     

    Agora cabe a você avaliar se é interessante para você ou não, lembro que se falando de padrão de desenvolvimento não existe melhor ou pior, todas os padrões são certos, cabe você identificar a melhor solução para o seu problema.

     

     

    Se a resposta foi útil, favor marcar como tal.

    Obrigado.

     

    terça-feira, 12 de agosto de 2008 14:17
  • Danilo,

    existem vantagens sim, mas não existe um melhor ou pior. Vai depender do seu projeto e do que você deseja. Veja os artigos que escrevi:

    Considerações iniciais sobre o ASP.NET MVC Framework

    ASP.NET 3.5 Extensions: Desvendando o ASP.NET MVC Framework

     


    Ricardo Oneda
    http://oneda.mvps.org/blog

    terça-feira, 12 de agosto de 2008 18:59
  • Danilo só digo uma coisa, performace, claro que performace depende de vários fatores mais creio que com o MVC tem-se um ganho disso, para quem ja usou outros framework como monorail ou rails sabe do que estou falando.
    terça-feira, 12 de agosto de 2008 19:39
  • Olá Ricardo....

     

    Muito obrigado pela resposta... Já havia lido os seus dois post no linha de código.

     

    Porém o que me marcou muito foi a perda de produtividade e a volta do spaguette-code em parte.

     

    Outra coisa que eu não vi em nenhum local foi uso do AJAX nas páginas com o MVC. Já que os controles do ASP.NET que são feitos com o ciclo de vida tradicional não podem ser usado no padrão MVC.

     

    Como deve ser?

     

    Aguardo Resposta

     

    Danilo Fernandes

    terça-feira, 12 de agosto de 2008 21:05
  • Pelo que li eles estão implementando esse recurso que sera um pouco diferente do tradicional .. existem outras bibliotecas para isso.
    terça-feira, 12 de agosto de 2008 21:06
  • Olá Daniel,

     

    Imagino que deve haver um aumento de performance...

     

    Mas existem formas de optimização do código em WebForm que também gera ganhos.

    Não sei se o ganho é da mesma grandeza, porém existe.

     

    Atenciosamente,

     

    Danilo Fernandes

    terça-feira, 12 de agosto de 2008 21:07
  • Danilo como ja foi dito ai em cima depende de projeto para projeto,  tenho usado muito monorail para alguns projetos e o resultado é que ta uma maravilha, posso dizer que dificilmente vou voltar ao modelo WebForms, claro, dependendo do projeto e da necessidade.
    terça-feira, 12 de agosto de 2008 21:10
  •  Danilo Fernandes wrote:

     

    Outra coisa que eu não vi em nenhum local foi uso do AJAX nas páginas com o MVC. Já que os controles do ASP.NET que são feitos com o ciclo de vida tradicional não podem ser usado no padrão MVC.

     



    Ainda não foi divulgado, mas estão trabalhando em meios para facilitar a integração com o ASP.NET AJAX (claro, não será como no WebForms). Nada impede de usar frameworks de terceiros, como o jQuery, ou criar o seu próprio, afinal, o que continua sendo gerado é HTML e Javascript.

    Existem vantagens e desvantagens tanto com WebForms quanto com o MVC Framework. Para mim, a ponto fraco dos WebForms foi que ele tentou facilitar demais o desenvolvimento de aplicações web, escondendo muita coisa por baixo dos panos. Muitas pessoas começaram a desenvolver em WebForms achando que era igual desktop, quando na verdade são paradigmas totalmente diferentes. O ASP.NET MVC Framework é uma "volta as origens", sem prejudicar tanto assim a produtividade, como era nos primórdios.

    Sobre o código "espagueti", não vejo tantos problemas, desde que seja referente somente ao View (camada de apresentação). O problema do ASP clássico é que misturava código de tratamento de apresentação com regras de negócio (não que não fosse possível separar essas camadas em ASP clássico, mas com o MVC Framework, essa separação fica mais clara e forçada). Outros frameworks/linguagens também misturam código com tags, como Ruby On Rails e PHP. Entretanto, você não é obrigado a usar código "espagueti". Se você se sente mais confortável, poderá continuar usando alguns server controls (desde que não dependam da infra-estrutura dos WebForms). Veja:

    http://oneda.mvps.org/blog/archive/2008/02/26/server-controls-no-asp-net-mvc-framework.aspx

     


    Ricardo Oneda
    http://oneda.mvps.org/blog

    quarta-feira, 13 de agosto de 2008 17:23
  • Olá Ricardo,

     

    Muito bom seu artigo, porém fazendo isso eu vou estar fugindo do padrão MVC transformando em WebForm utilizando code-behind....

     

    Lendo isso aqui e mais uns tutoriais e vendo webcasts eu vi alguns beneficios mesmo.

     

    Estou desenvolvendo em MVC mesmo, porém não vou poder usar o AJAX o que é uma pena...

     

    Porém não perco a idéia.... Vamos começar e quando sair a versão que dá eu uso...

     

    Abraços

     

    Danilo Fernandes

    quarta-feira, 13 de agosto de 2008 22:17
  •  Danilo Fernandes wrote:
     

    Muito bom seu artigo, porém fazendo isso eu vou estar fugindo do padrão MVC transformando em WebForm utilizando code-behind....



    Danilo,

    como assim?!? Não entendi...... Poderia explicar?

     


    Ricardo Oneda
    http://oneda.mvps.org/blog

    sexta-feira, 15 de agosto de 2008 11:23
  • Danilo,

    As versões do ASP.NET MVC Framework, carregam junto de si uma biblioteca javascript chamada JQuery.

    Essa biblioteca traz facilidades imensas com relação ao uso do Javascript. (Torna o trabalho em javascript produtivo, não precisando escrever inumeras linhas de código para obter um simples efeito).

    Dentro dessa biblioteca existe a possibilidade de se trabalhar com Ajax de forma bastante intuitiva, além de objetos JSON também.

    Estou utilizando esse framework em um projeto de um cliente da empresa.

    É como você disse mencionou. A curva de aprendizagem desse framework é maior do que em webforms.
    Porém o ganho que você obtem no futuro é enorme (um projeto com uma estrutura melhor).

    Entre nesses links para você analisar.

    www.jquery.com
    www.asp.net/mvc (Acredito que já tenha visto, porém lá tem videos de como utilizar o mvc).

    Espero ter ajudado.

    Abraços.

    Analísta Programador jr.
    • Sugerido como Resposta Renato Bezerra segunda-feira, 16 de março de 2009 19:04
    sexta-feira, 13 de março de 2009 17:50
  • Além do JQuery que já falaram, dá uma olhada também sobre algum framework visual como o Bootstrap: http://getbootstrap.com/ que pode te facilitar na parte de formulários.

    Sobre "spaguetti-code", para evitar isso dá uma pesquisada sobre frameworks JavaScript, como o Knockoutjs: http://knockoutjs.com/examples/helloWorld.html

    Depois que se acostumar vai ver que a manutenção e evolução do seu projeto será mais produtiva do que WebForms. WebForms pode parecer produtivo no início mas depois fica engessado evoluir de acordo com as exigências atuais de usabilidade web. Há não ser que seja um sistema com visual e interação bem "queixo-duro".

    • Editado rs.developer sábado, 16 de novembro de 2013 22:49
    sábado, 16 de novembro de 2013 22:38