Outubro/2008 Engenharia do Computação Sistema de Gestão de Manutenção Desenvolvimento Equipe Antônio Deyvyson Diego Nascimento Paollo Maciel Marcelo Pereira.

Slides:



Advertisements
Apresentações semelhantes
Desenvolvimento Web.
Advertisements

Curso: Banco de Dados I Análise de Sistemas PUC Campinas
Profa. Rudson apostilas.wikidot.com/hipermidia
Sistema Web para Departamentos
Prof. Esp. Marcelo Mendes
Fundamentos de WEB - HTML, CSS e JS
Caio Nakashima Hibernate Associação Caio Nakashima
Hibernate Apresentação
Java Persistence API (JPA) Eduardo Martins Guerra Instituto Tecnológico de Aeronáutica Curso de Pós-Graduação em Engenharia de Software Programação Distribuída.
Sistema de Gestão de Manutenção
Mapeamento Objeto-Relacional Eduardo Martins Guerra Instituto Tecnológico de Aeronáutica Curso de Pós-Graduação em Engenharia de Software Programação Distribuída.
Trabalho de Conclusão de Curso
Tecnologias para Internet Thyago Maia Tavares de Farias Aula 21.
Tecnologias para Internet Thyago Maia Tavares de Farias Aula 6.
EL e JSTL Prof. Danton Cavalcanti Franco Junior
Programação WEB HTML.
Aplicativos Web Com Orientação a Objetos
Se liga aí, que é hora da revisão!
HTML Técnicas em Programação para Internet
C# Sharp Shooters.NET Universidade Federal de Pernambuco Centro de Informática Recife, 23/09/2002 Autor: Marden Menezes Costa Propriedades.
Universidade Federal de Lavras - UFLA
Aulas ministradas por:
Uma empresa que veio à moda antiga
Acadêmicos: Durval Slompo Junior / Verediane R. S. Monteiro
Laboratório de Programação I Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Web Services Uninorte Semana de Tecnologia da Informação
Integração com Banco de Dados
Introdução ao Framework Django
Design Patterns / Acesso ao banco de dados (java.sql)
Programação WEB HTML.
XIV Jornada de Cursos .NET com C# Antônio Júnior Bruno Inojosa.
CURSO DE EXTENSÃO PROGRAMAÇÃO C# .NET
Professor: Márcio Amador
Felipe Ferreri Tonello
Arquitetura de Desenvolvimento Web MVC vs. Three Tiers
Framework para mapeamento objeto-relacional
Implementação MVC Pedro Antonino.
Aplicações Web com Orientação a Objetos
Padrão- MVC Model, View, Controller
Identificacão de Usuarios Em WEB-INF/Usuarios.xml estão definidos os usuários com os seus devidos papeis. Podem ser inclusos novos usuários e/ou papeis(perfis)
PROGRAMAÇÃO WEB AULA 01 Prof. Gustavo Linhares
Padrões de Interação com o Usuário
Unidade 1 – Introdução a J2EE Prof.: Henrique Santos
Introdução ao ASP.Net 1º Semestre 2010 > PUCPR > BSI Bruno C. de Paula.
Linguagem de programação. Histórico  Concebida em 1993 por Yukihiro Matsumoto  Primeiro livro em inglês saiu em setembro de 2000  Ruby on Rails é lançado.
Fundamentos da Linguagem C#
Trabalho de Seminários em Informática
XIV Jornada de Cursos .NET com C# Antônio Junior Bruno Inojosa.
JavaServer Faces Rapid Web Application Development em Java Ricardo Cavalcanti Jobson Ronan
SISTEMA PROCESSUAL DIGITAL
ZK RIA com ZK Framework.
CSS ETEC Vasco Antônio Venchiarutti - Extensão na EE A. S. Gandra Professor: Robson / Madureira Disciplina: Desenvolvimento e Design de Web Sites II Turma:
Projeto Supervisionado no Desenvolvimento de Aplicações Profissionais na Web Servidores.
Aula 1 - Fundamentos Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros.
Student Tech Clubs Desenvolvimento WEB Antonio Ladeia Graduando em Tecnologia em Análise e Desenvolvimento de Sistemas Instituto Federal da Bahia Introdução.
Aprendendo como funciona o NHibernate Elvis Medeiros Programador .NET
Treinamento AJAX Waelson Negreiros Blog:
Universidade Federal de Sergipe Departamento de Sistemas de Informação Bruno Cruz Jessica Rodrigo Aragão – ASP.NET MVC 3.
UCSal – Tecnologia em Análise e Desenvolvimento de Sistemas Programação para Aplicações WEB Profa. Semíramis Assis
Desenvolvimento WEB II Aula 3 – Conexão com o Banco de Dados
UCSal – Tecnologia em Análise e Desenvolvimento de Sistemas Programação para Aplicações WEB Profa. Semíramis Assis
Desenvolvimento WEB II Continuação AJAX Professora: Kelly de Paula Cunha.
Programação PHP Gustavo Eduardo Terra.
Desenvolvimento WEB II Ajax – Utilização de Frameworks Javascript Professora: Kelly de Paula Cunha.
Desenvolvimento WEB II Professora: Kelly de Paula Cunha.
Visão Geral de Desenvolvimento Web Front End Tecnologias.
1 AJAX em aplicações Rails Lívia Monnerat Castro
ALUNO: RONI FABIO BANASZEWSKI Model-View-Controller.
Prof.: Jean Carlo Mendes
Playframework 2.0. O que veremos hoje Playframework 2.0 Instalação Criação e Execução de uma Aplicação Estrutura de uma Aplicação Exemplos.
Transcrição da apresentação:

Outubro/2008 Engenharia do Computação Sistema de Gestão de Manutenção Desenvolvimento Equipe Antônio Deyvyson Diego Nascimento Paollo Maciel Marcelo Pereira Rafael Pinto

Outubro/2008 Engenharia do Computação Arquitetura do Software

Outubro/2008 Engenharia do Computação Padrão MVC

Outubro/2008 Engenharia do Computação Características do MVC Arquitetura Dividida basicamente em 3 camadas (Model, View e Controller). Separa a lógica de negócios(Model) da lógica de apresentação(View). Diminui a complexidade da aplicação Facilita a manutenção do código. Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação Fluxo de uma aplicação MVC 1. Usuário gera um evento (Ex: aperta um botão). 2. Controller solicita dados do Model. 3. Model envia os dados para o controller. 4. Controller trata os dados e envia para a view. 5. View exibe o resultado para o usuário. Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação Fluxo de uma aplicação MVC 1. Usuário gera um evento (Ex: aperta um botão). 2. Controller solicita dados do Model. 3. Model envia os dados para o controller. 4. Controller trata os dados e envia para a view. 5. View exibe o resultado para o usuário. Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação Fluxo de uma aplicação MVC 1. Usuário gera um evento (Ex: aperta um botão). 2. Controller solicita dados do Model. 3. Model envia os dados para o controller. 4. Controller trata os dados e envia para a view. 5. View exibe o resultado para o usuário. Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação Fluxo de uma aplicação MVC 1. Usuário gera um evento (Ex: aperta um botão). 2. Controller solicita dados do Model. 3. Model envia os dados para o controller. 4. Controller trata os dados e envia para a view. 5. View exibe o resultado para o usuário. Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação Fluxo de uma aplicação MVC 1. Usuário gera um evento (Ex: aperta um botão). 2. Controller solicita dados do Model. 3. Model envia os dados para o controller. 4. Controller trata os dados e envia para a view. 5. View exibe o resultado para o usuário. Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação Fluxo de uma aplicação MVC 1. Usuário gera um evento (Ex: aperta um botão). 2. Controller solicita dados do Model. 3. Model envia os dados para o controller. 4. Controller trata os dados e envia para a view. 5. View exibe o resultado para o usuário. Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação Projeto Castle MonoRail Provê um framework MVC para.NET 2.0 Baseado no framework Ruby On Rails para linguagem ruby Compatível com Mono (Framework.NET para Linux) Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação Estrutura - MonoRail Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação Fluxo - MonoRail Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação Exemplo: Validação do Usuário - Evento Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação Exemplo: Validação do Usuário - Controller Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação Camada Model

Outubro/2008 Engenharia do Computação Métodos de Consulta Repetições de Códigos; Consultas complexas; Tratamento das consultas SQL é feita por parte do desenvolvedor; Difícil debug das consultas;

Outubro/2008 Engenharia do Computação ORM – Mapeamento Objeto Relacional Permite utilização de POO (Programação Orientado a Objeto); Abstração do Bando de Dados; Impedância objeto/Relacional – diferença que existe entre os modelos de dados relacionais e orientados a objeto;

Outubro/2008 Engenharia do Computação ORM – Mapeamento Objeto Relacional

Outubro/2008 Engenharia do Computação ORM – Mapeamento Objeto Relacional ORM tem por objetivo diminuir as diferenças entre objetos e tabelas de um SGBD; Oferece formas para o desenvolvedor definir como que seus objetos serão persistidos (salvos), como podem ser obtidos e manipulados do banco de dados;

Outubro/2008 Engenharia do Computação Tecnologias ORM As tecnologias utilizadas: NHibernate; Castle Active Record;

Outubro/2008 Engenharia do Computação NHibernate Ferramenta open-source; Otimizações para cada SGBD que suporta; Segurança contra SQL Injection; Suporte a Lazy Loading; Ferramenta sólida, baseada no Hibernate, utilizado pelos desenvolvedores Java.

Outubro/2008 Engenharia do Computação NHibernate - Implementação tab_maquina NHibernate

Outubro/2008 Engenharia do Computação NHibernate - Implementação

Outubro/2008 Engenharia do Computação NHibernate - Implementação namespace MMS.Models { using System; using NHibernate.Expression; public class Maquina { private int id; private string codigo; private DateTime dataAquisicao; private DateTime dataGarantia; private float tensaoOperacao; private float correntePartida; private float correnteNominal; private float frequencia; private float coeficientePartida; private string informacaoExtra; namespace : espaço de nome onde conterá as classes com os métodos da camada model. NHibernate

Outubro/2008 Engenharia do Computação NHibernate - Implementação NHibernate public int Id { get { return id; } set { id = value; } } public string Codigo { get { return codigo; } set { codigo = value; } } public DateTime DataAquisicao { get { return dataAquisicao; } set { dataAquisicao = value; } } Definição dos métodos da classe máquina

Outubro/2008 Engenharia do Computação NHibernate - Implementação <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly=MMS" namespace=MMS.Model">....hbm :é uma convenção usada pelo NHibernate para reconhecer automaticamente o arquivo como um arquivo de mapeamento

Outubro/2008 Engenharia do Computação NHibernate - Implementação <property name="connection.provider">NHibernate.Connection.DriverConnectionProvider <property name="dialect">NHibernate.Dialect.MySQLDialect <property name="connection.driver_class">NHibernate.Driver.MySqlDataDriver <property name="connection.connection_string">Data Source=MMS.sdf <property name="show_sql">true

Outubro/2008 Engenharia do Computação Castle Active Record Faz parte do Castle Project; Não há necessidade de implementação de arquivos xml, para mapear as tabelas do bando de dados; Encapsulamento do NHibernate e XML; Aumento na produtividade;

Outubro/2008 Engenharia do Computação Active Record - Implementação tab_maquina NHibernate

Outubro/2008 Engenharia do Computação Active Record - Implementação namespace MMS.Models { using System; using Castle.ActiveRecord; using NHibernate.Expression; public class Maquina { private int id; private string codigo; private DateTime dataAquisicao; private DateTime dataGarantia; private float tensaoOperacao; private float correntePartida; private float correnteNominal; private float frequencia; private float coeficientePartida; private string informacaoExtra;

Outubro/2008 Engenharia do Computação Active Record - Implementação [PrimaryKey(id)] public int Id { get { return id; } set { id = value; } } [Property(codigo)] public string Codigo { get { return codigo; } set { codigo = value; } } [Property(data_aquisicao)] public DateTime DataAquisicao { get { return dataAquisicao; } set { dataAquisicao = value; } } XML NHibernate

Outubro/2008 Engenharia do Computação Active Record - Implementação <add key="hibernate.connection.driver_class" value="NHibernate.Driver.MySqlDataDriver" /> <add key="hibernate.dialect" value="NHibernate.Dialect.MySQLDialect" /> <add key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider" /> <add key="hibernate.connection.connection_string" value="Database=mms;Data Source= ;User Id=root;Password=" />

Outubro/2008 Engenharia do Computação Camada View

Outubro/2008 Engenharia do Computação Chamadas de Páginas Outubro/2008 Engenharia do Computação Página WEB - HTML Principal – Ex: User Shared – User_form Camada – ViewCamada – Controller UserController.cs Camada – Model User.cs

Outubro/2008 Engenharia do Computação Tecnologias da VIEW NVelocity Linguagem CSS Linguagem HTML Linguagem Java Script Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação NVelocity É uma ferramenta que possibilita gerar código a partir de templates, seja código C#, SQL, páginas Web, PostScript entre outros; O NVelocity é uma Template Language, que possibilita de uma forma simples incorporar conteúdos dinâmicos; Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação NVelocity Usa referências para inserir conteúdos dinâmicos; Ex: #set ( $a = Midgard ) Código para editar usuário: #set ($formTitle = "Atualização de Dados (Usuário do Sistema)") #set ($formAction = "update") #set ($updateId = "user.Id") #parse ("shared/forms/user_form.vm") Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação Linguagem CSS CSS é uma linguagem para estilos que define o layout de documentos; É usado para formatar conteúdos estruturados; Controle do layout de vários documentos a partir de uma simples folha de estilos; Maior precisão no controle do layout; Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação Linguagem CSS Aplicação de diferentes layouts para servir diferentes mídias (tela, impressora, etc.); Emprego de variadas, sofisticadas e avançadas técnicas de desenvolvimento. Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação Linguagem CSS Código CSS para definição de topo de página. div#top { background-image:url(../images/topo_fundo.jpg); background-color: #fff; width: 100%; height: 85px; } Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação Linguagem HTML Significa Hyper Text Markup Language; É a linguagem de marcação do hipertexto, na qual são escritas as páginas web; Define exatamente a estrutura da página; Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação Linguagem HTML Código HTML da página principal:... #submenu_begin("Administração do Sistema") #submenu_item("Cadastro de Setores" "sector" "new") #submenu_item("Cadastro de Funcionários" "employee" "new") #submenu_item("Cadastro de Usuário" "user" "new") #submenu_end()... Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação Linguagem JavaScript Validação dos formulários; Interação com a página; Oferece tipagem dinâmica; Oferece bom suporte a expressões; Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação Estrutura da View Outubro/2008 Engenharia do Computação Página Principal HTML Código CSS NVelocityJavaScript

Outubro/2008 Engenharia do Computação Estrutura da View Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação Estrutura da View Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação Sistema Outubro/2008 Engenharia do Computação

Outubro/2008 Engenharia do Computação Banco de Dados