Projeto Solicitação de Fretes



 • ASP.Net MVC

 •   Por: Cleiton Estigarribia
Introdução

A arquitetura/padrão MVC - (Modelo Visualização Controle) fornece uma
maneira de dividir a funcionalidade envolvida na manutenção e
apresentação dos dados de uma aplicação.
Na arquitetura MVC o modelo representa os dados da aplicação e as
regras do negócio que governam o acesso e a modificação dos dados.
Um controlador define o comportamento da aplicação , é ele que
interpreta as ações do usuário e as mapeia para chamadas do modelo. Em
um cliente de aplicações Web essas ações do usuário poderiam ser cliques
de botões ou seleções de menus. Há normalmente um controlador para
cada conjunto de funcionalidades relacionadas.
A arquitetura de 3 camadas que esta representada no próximo slide é uma
implementação do modelo MVC . O modelo MVC esta preocupado em
separar a informação de sua apresentação.
Modelo MVC
  w eb Architecture - FEX


                  Visualização      Controle            Modelo




                 Cliente Web
                     HTML
                                                Ações             Negócio




               Cliente Web ASP    Controlador




                                                                 Persistência




                Outros Clientes
O que é exatamente?
O ASP .NET MVC é uma implementação da arquitetura MVC para o ASP .NET em
um framework com o objetivo de criar aplicações WEB no padrão MVC e fornecer
uma alternativa ao modelo WebForm do ASP .NET disponível até então. O
framework ASP .NET MVC fornece um ambiente robusto e leve que esta integrado
aos recursos do ASP .NET como master pages e membership sendo definido no
namespace System.Web.Mvc e apresenta os seguintes componentes:
Models - Os objetos Model (modelo) são as partes da aplicação que implementam
a lógica o domínio de dados da aplicação e retornam e armazenam o estado do
modelo em um banco de dados.
Views - As views (visões) são os componentes que exibem a interface do usuário
e em geral é criada a partir do modelo de dados.
Controllers - Controllers (controladores) são os componentes que tratam com a
interação do usuário, trabalham com o modelo e selecionam uma visão para ser
exibida; Em uma aplicação MVC uma view somente exibe informação ,
o controller trata e retorna a entrada do usuário e a interação.
Quais as vantagens e desvantagens envolvidas no
ASP .NET MVC ?

Vantagens :
Como o modelo MVC gerencia múltiplos visualizadores usando o mesmo modelo é fácil
manter , testar e atualizar sistemas múltiplos;
É muito simples incluir novos clientes apenas incluindo seus visualizadores e controles;
Torna a aplicação escalável;
É possível ter desenvolvimento em paralelo para o modelo , visualizador e controle pois
são independentes;
É mais fácil gerenciar a complexidade da aplicação dividindo-a em modelo, visualizador e
controlador (MVC);


Desvantagens:
Requer uma quantidade maior de tempo para analisar e modelar o sistema;
Requer pessoal com conhecimento especializado;
Não é aconselhável para pequenas aplicações;
Vantagens do modelo WebForms:



 Suporta um modelo de eventos que preserva o estado sobre HTTP;
 Usa o padrão Page Controller que adiciona funcionalidade a páginas
 individuais;
 É muito fácil para trabalhar com equipes pequenas disponibilizando um
 grande número de componentes que agiliza o desenvolvimento;
 Possui uma complexidade menor;
 Fornece meios de gerenciar o estado da informação de uma forma bem
 simples;
Introdução ao EXT js


              Por: Paulo Bruxel
O que é EXT js
 Ext é uma biblioteca publicada sob licença GPL utilizada para a construção de aplicativos web interativos
 utilizando AJAX, DHTML e DOM.
 O EXT JS foi originalmente criado como uma extensão do Framework de JavaScript YUI (Yahoo! User Interface) e nessa
 época seu nome ainda era yui-ext.
  Como uma extensão, ele funcionava junto ao YUI, que era a base e obviamente o yui-ext não funcionava sem o YUI.
  Logo vieram os adapters (adaptadores), que funcionavam de ponte entre o yui-ext e outros Frameworks de JavaScript,
 agora o yui-ext já não estava restrito a ser uma extensão apenas do YUI, funcionava também com os
 Frameworks Prototype e jQuery.
  O yui-ext ganhou rápido reconhecimento entre os desenvolvedores como uma extensão rica em funcionalidades e
 componentes de interface que funcionava para acrescer de valor os mais conhecidos Frameworks de Javascript (YUI,
 Prototype e jQuery).
  Houveram várias versões 0.x do yui-ext, antes de ser lançada a versão 1.0 final onde seu nome foi alterado para EXT JS,
 pois agora ele já não era apenas uma extensão para o YUI.
  Depois da versão 1.0, houveram poucas atualização, a 1.0.1 e 1.0.1a. Nota-se com a necessidade de poucas
 atualizações, o bom trabalho feito no código do EXTjs.
Conceitos básicos de utilização


Deve entender a estrutura da user interface para trabalhar com os dados de forma serializada.
O formato comumente utilizado para utilização de dados de retorno e envio aos controladores
é o JSON. Desenvolvendo aplicações Asp.Net MVC com projetos nativos do framework seria
utlizada a biblioteca HTML.Helpers com controles muito parecidos aos do webform, já os
componentes do EXT js possuem um bloco de funções e propriedades javascript.
Nos próximos slides teremos exemplos de uma aplicação Asp.Net MCV utilizando Nhibernate
e EXT js.
Exemplo de aplicação



                       Exemplo de estrutura, com
                       camada de negócios (Business),
                       Camada de persistencia
                       (Factory) e uma camada de
                       interface (Web).
Exemplo de aplicação


                       Método genérico para abertura
                       da sessão no NHibernate
Exemplo de aplicação



                       Método genérico para
                       atualização dos dados das
                       entidades.
Exemplo de aplicação



                       Método para salvar dados em
                       uma entidade especifica
                       utilizando a herança do método
                       genérico.
Exemplo de aplicação



                       Camada de controle da
                       interface.
Exemplo de aplicação


                       Exemplo de estrutura da
                       camada de interface.
Exemplo de aplicação



                       Exemplo de código utilizando
                       EXT js na interface.
Exemplo de aplicação


                       Exemplo de utilizando o
                       componente GRID EXT js.
Desenvolvimento
Juliano Domingues - Gerente de Projetos
                   Juliano.domingues@metait.com.br
SP: +55 11 2101 1300 RS : +55 51 2101 13 00 PR: +55 41 2101 1300

Asp net mvc

  • 2.
    Projeto Solicitação deFretes • ASP.Net MVC • Por: Cleiton Estigarribia
  • 3.
    Introdução A arquitetura/padrão MVC- (Modelo Visualização Controle) fornece uma maneira de dividir a funcionalidade envolvida na manutenção e apresentação dos dados de uma aplicação. Na arquitetura MVC o modelo representa os dados da aplicação e as regras do negócio que governam o acesso e a modificação dos dados. Um controlador define o comportamento da aplicação , é ele que interpreta as ações do usuário e as mapeia para chamadas do modelo. Em um cliente de aplicações Web essas ações do usuário poderiam ser cliques de botões ou seleções de menus. Há normalmente um controlador para cada conjunto de funcionalidades relacionadas. A arquitetura de 3 camadas que esta representada no próximo slide é uma implementação do modelo MVC . O modelo MVC esta preocupado em separar a informação de sua apresentação.
  • 4.
    Modelo MVC w eb Architecture - FEX Visualização Controle Modelo Cliente Web HTML Ações Negócio Cliente Web ASP Controlador Persistência Outros Clientes
  • 5.
    O que éexatamente? O ASP .NET MVC é uma implementação da arquitetura MVC para o ASP .NET em um framework com o objetivo de criar aplicações WEB no padrão MVC e fornecer uma alternativa ao modelo WebForm do ASP .NET disponível até então. O framework ASP .NET MVC fornece um ambiente robusto e leve que esta integrado aos recursos do ASP .NET como master pages e membership sendo definido no namespace System.Web.Mvc e apresenta os seguintes componentes: Models - Os objetos Model (modelo) são as partes da aplicação que implementam a lógica o domínio de dados da aplicação e retornam e armazenam o estado do modelo em um banco de dados. Views - As views (visões) são os componentes que exibem a interface do usuário e em geral é criada a partir do modelo de dados. Controllers - Controllers (controladores) são os componentes que tratam com a interação do usuário, trabalham com o modelo e selecionam uma visão para ser exibida; Em uma aplicação MVC uma view somente exibe informação , o controller trata e retorna a entrada do usuário e a interação.
  • 6.
    Quais as vantagense desvantagens envolvidas no ASP .NET MVC ? Vantagens : Como o modelo MVC gerencia múltiplos visualizadores usando o mesmo modelo é fácil manter , testar e atualizar sistemas múltiplos; É muito simples incluir novos clientes apenas incluindo seus visualizadores e controles; Torna a aplicação escalável; É possível ter desenvolvimento em paralelo para o modelo , visualizador e controle pois são independentes; É mais fácil gerenciar a complexidade da aplicação dividindo-a em modelo, visualizador e controlador (MVC); Desvantagens: Requer uma quantidade maior de tempo para analisar e modelar o sistema; Requer pessoal com conhecimento especializado; Não é aconselhável para pequenas aplicações;
  • 7.
    Vantagens do modeloWebForms: Suporta um modelo de eventos que preserva o estado sobre HTTP; Usa o padrão Page Controller que adiciona funcionalidade a páginas individuais; É muito fácil para trabalhar com equipes pequenas disponibilizando um grande número de componentes que agiliza o desenvolvimento; Possui uma complexidade menor; Fornece meios de gerenciar o estado da informação de uma forma bem simples;
  • 8.
    Introdução ao EXTjs Por: Paulo Bruxel
  • 9.
    O que éEXT js Ext é uma biblioteca publicada sob licença GPL utilizada para a construção de aplicativos web interativos utilizando AJAX, DHTML e DOM. O EXT JS foi originalmente criado como uma extensão do Framework de JavaScript YUI (Yahoo! User Interface) e nessa época seu nome ainda era yui-ext. Como uma extensão, ele funcionava junto ao YUI, que era a base e obviamente o yui-ext não funcionava sem o YUI. Logo vieram os adapters (adaptadores), que funcionavam de ponte entre o yui-ext e outros Frameworks de JavaScript, agora o yui-ext já não estava restrito a ser uma extensão apenas do YUI, funcionava também com os Frameworks Prototype e jQuery. O yui-ext ganhou rápido reconhecimento entre os desenvolvedores como uma extensão rica em funcionalidades e componentes de interface que funcionava para acrescer de valor os mais conhecidos Frameworks de Javascript (YUI, Prototype e jQuery). Houveram várias versões 0.x do yui-ext, antes de ser lançada a versão 1.0 final onde seu nome foi alterado para EXT JS, pois agora ele já não era apenas uma extensão para o YUI. Depois da versão 1.0, houveram poucas atualização, a 1.0.1 e 1.0.1a. Nota-se com a necessidade de poucas atualizações, o bom trabalho feito no código do EXTjs.
  • 10.
    Conceitos básicos deutilização Deve entender a estrutura da user interface para trabalhar com os dados de forma serializada. O formato comumente utilizado para utilização de dados de retorno e envio aos controladores é o JSON. Desenvolvendo aplicações Asp.Net MVC com projetos nativos do framework seria utlizada a biblioteca HTML.Helpers com controles muito parecidos aos do webform, já os componentes do EXT js possuem um bloco de funções e propriedades javascript. Nos próximos slides teremos exemplos de uma aplicação Asp.Net MCV utilizando Nhibernate e EXT js.
  • 11.
    Exemplo de aplicação Exemplo de estrutura, com camada de negócios (Business), Camada de persistencia (Factory) e uma camada de interface (Web).
  • 12.
    Exemplo de aplicação Método genérico para abertura da sessão no NHibernate
  • 13.
    Exemplo de aplicação Método genérico para atualização dos dados das entidades.
  • 14.
    Exemplo de aplicação Método para salvar dados em uma entidade especifica utilizando a herança do método genérico.
  • 15.
    Exemplo de aplicação Camada de controle da interface.
  • 16.
    Exemplo de aplicação Exemplo de estrutura da camada de interface.
  • 17.
    Exemplo de aplicação Exemplo de código utilizando EXT js na interface.
  • 18.
    Exemplo de aplicação Exemplo de utilizando o componente GRID EXT js.
  • 19.
  • 20.
    Juliano Domingues -Gerente de Projetos Juliano.domingues@metait.com.br SP: +55 11 2101 1300 RS : +55 51 2101 13 00 PR: +55 41 2101 1300