Content-Length: 157672 | pFad | https://www.academia.edu/8116439/TECNOLOGIADE_PROGRAMA%C3%87%C3%83OII

(PDF) TECNOLOGIADE PROGRAMAÇÃOII
Academia.eduAcademia.edu

TECNOLOGIADE PROGRAMAÇÃOII

07/08/2014 Apresentações • Eu TECNOLOGIA DE PROGRAMAÇÃO II – – – – Técnico em Eletrônica (CEFET‐RS, 2000) Graduado em Sistemas de Informação (UNERJ, 2005) Pós‐graduado em Engenharia de Software (PUC‐PR, 2008) Mestrado em Informática (PUCPR, 2012) • Vocês Capítulo I – Introdução Prof. Msc. Cleiton Garcia <cleitonsg@catolicasc.org.br> Bacharelado em Sistemas de Informação – – – – – Nome? Idade? Experiência profissional? Qual posição pretende na área de TI? Linguagens em que programam? A quanto tempo? Qual a expectativa de vocês com a nossa disciplina? 07/08/2014 Referências bibliografia • • • • • • • • • Prof. Msc. Cleiton Garcia 2 Referências bibliográficas LOTAR, Alfredo. Como programar com ASP.NET MVC. São Paulo: Novatec, 2012. FREEMAN, Adam. Pro ASP.NET MVC 4. New Yourk: APRESS, 2013 GALLOWAY, Jon; HAACK, Phil; WILSON, Brad; ALLEN, K. Scott. Professional ASP.NET MVC 4. Indianapolis: John Wiley & Sons, Inc. SHEPHERD, George. Microsoft® ASP.NET 3.5: passo a passo. Porto Alegre: Bookman, 2009. AHAMADA, Mesabaha. ASP.NET: guia do desenvolvedor web. 2. ed. Rio de Janeiro: Alta Books, c2006. EVJEN, Bill. Professional ASP.NET 2.0. Indianapolis: Wiley Computer Publishing, 2006. LOTAR, Alfredo. Como programar com ASP.NET e C#. 2. ed., rev. e atual. São Paulo: Novatec, 2012. http://www.k19.com.br/downloads/apostilas/dotnet/k19‐k32‐ desenvolvimento‐web‐com‐aspnet‐mvc http://www.asp.net/mvc/tutorials 07/08/2014 Prof. Msc. Cleiton Garcia 3 Prof. Msc. Cleiton Garcia 4 • Quem faz os exercícios, seminários, projeto logicamente terá: • PE – Maior probabilidade de aprovação – Maior médias nas avaliações – Maior conhecimento teórico e prático para as avaliações então não são apenas 3 pontos • Carga horária: – Presencial : 72 horas (aula 50 min.) Prof. Msc. Cleiton Garcia 07/08/2014 Pré‐requisitos da disciplina de Tecnologia de programação I Avaliação e o peso dos trabalhos Plano de Ensino 07/08/2014  5 07/08/2014 Prof. Msc. Cleiton Garcia 6 1 07/08/2014 Avaliação Seminário – Pontos de avaliação • Avaliações 3 avaliações: Peso 10 cada – Avaliação 1: • Prova 1 25/09/2014 (peso 7) • Seminário (peso 3) – Avaliação 2: • Prova 2 30/10/2014 (peso 7) • Projeto parte1 (peso 3) – Avaliação 3: • Prova 3 27/11/2014 (peso 7) • projeto parte 2 (peso 3) – N‐1 ‐ 04/12/2014: Irá substituir uma das 3 avaliações (prova + trabalhos) com menor peso 07/08/2014 Prof. Msc. Cleiton Garcia 7 • 1‐Clareza e coerência e Domínio do conhecimento na exposição • 2‐Sintese, Aproveitamento do tempo, Participação do grupo durante a exposição • 3‐Qualidade (principalmente do artigo) • 4‐Conclusões e críticas ao assunto / teoria‐ prática / complexidade da prática • 5‐Questionamentos 07/08/2014 07/08/2014 Prof. Msc. Cleiton Garcia 9 • No mínimo 8 entidades com no mínimo 6 relacionamentos referente ao domínio da aplicação (sem contar requisitos não funcionais); • Layout visual personalizado pela equipe; • Tradução das duas principais telas do sistema apresentando as informações em inglês e português; • Validações de entrada de dados. Todos os campos necessário para que o usuário não veja a tela padrão de erro do ASP.NET; • Utilizar em uma tela o Chart e/ou WebGrid ou WebMail (ou jqueryui) • Duas funcionalidades aplicando o Helper Ajax; • Projeto com testes automatizados de pelo menos 5 classes com métodos de negócio com cobertura de pelo menos 90% do código; • Implementação da camada de segurança autenticação e autorização (integração com provedores externos de segurança como google ou redes sociais). 07/08/2014 Projeto ‐ Sugestão de assunto 1. 2. 3. 4. 5. 6. 7. Planejamento de projetos clássico Planejamento de projetos ágil Gestão de riscos e problemas Gestão de requisitos Ferramenta de estimativa de software Gestão de incidentes Gestão de conhecimento e talentos 07/08/2014 Prof. Msc. Cleiton Garcia 8 Projeto – Pontos de avaliações Seminário – Sugestão de assuntos 1. MVC, MVP e MVVM (Page e 8. Lucene.NET Front controller) 9. T4MVC 2. Themes, Skins & Master 10. C# Dynamics Pages 11. Scaffolding 3. jQuery e Integração com 12. Desenv. p/ Window Phone jquery com exemplos 13. Padrões como: Dao, práticos command, Intercepting Filter 4. Silverlight e Expression Blend e Observer 5. Razor 14. RavenDB ou Brightstardb ou 6. Web API KitaroDB 7. Injeção de dependência Ninject Prof. Msc. Cleiton Garcia Prof. Msc. Cleiton Garcia 10 Pesquisa • http://www.unerj.br/pesquisa/index.php – PROINPES – CNPQ 11 07/08/2014 Prof. Msc. Cleiton Garcia 12 2 07/08/2014 Tiobe Programming community index Object‐Oriented Languages Procedural Languages Functional 07/08/2014Languages Logical Languages 57,1% 37,0% Prof.3,4% Msc. Cleiton Garcia 2,5% +1,7% ‐3,0% +0,1% +1,1% 1C 2Java 3Objective‐C 4C++ 5PHP 6C# 7(Visual) Basic 8Python 9Perl 10JavaScript 11Ruby 12Transact‐SQL 13Visual Basic .NET 14PL/SQL 15Lisp 16Pascal 17Delphi 18MATLAB 19Bash 13 20Assembly 17,6% 15,9% 10,2% 8,7% 7,2% 6,2% 4,3% 4,0% 2,1% 1,8% 1,5% 1,5% 1,3% 0,9% 0,8% 0,8% 0,7% 0,7% 0,6% 0,6% O Padrão Model View Controller • Técnica para separar dados ou lógica de negócios (Model) da interface do usuário (View) e do fluxo da aplicação (Control) Exibida Model Usa 07/08/2014 Model Prof. Msc. Cleiton Garcia 15 Prof. Msc. Cleiton Garcia 14 • Também chamado de visão. 07/08/2014 Prof. Msc. Cleiton Garcia 16 O que é ASP.NET MVC? • Controller recebe as requisições do usuário e faz o tratamento • Comanda o fluxo da apresentação das informações fazendo a intermediação entre as camadas View e Model. • Permite realizar escolha da apresentação em função da: – Informações enviadas na requisição do usuário; – Dados a serem apresentados; – Informações do usuário (permissões de acesso ou linguagem) • Framework que implementa o padrão MVC • MVC é um padrão arquitetural e o ASP.NET MVC é a Model implementação da Microsoft Consulta o estado View • Chamado de Controlador. Prof. Msc. Cleiton Garcia Manipula • Implementa o design da aplicação. • Responsável pela interação com o usuário e por apresentar as diversas visões dos dados do modelo de domínio. • Não se preocupa em como os dados foram obtidos, apenas em apresentá‐los. Controller 07/08/2014 Controller View • Model contém o código da camada de dados • Os objetos desta camada são os dados e as regras do negócio que ditam como acessar e modificar os dados de maneira consistente. • Encapsula os dados e os comportamentos do negócio e persiste os mesmos sem se preocupar em como serão mostrados. • Alguns autores preferem o termo modelo do domínio, pois nem todos os sistemas são comerciais. Exemplo: simulador de oleodutos as regras não são de negócio, são leis da física. 07/08/2014 Atualiza View 17 07/08/2014 Manipula Controler Atualiza apresentação18 Prof. Msc. Cleiton Garcia Requisição do navegador 18 3 07/08/2014 ASP.NET Web Forms • Agradável aos desenvolvedores de Windows Forms, pois é o mesmo padrão utilizado para desktop • Padrão maduro com mais de 10 anos de mercado • Vasta variedade de controles • Requer pouco conhecimento sobre desenvolvimento web 07/08/2014 Prof. Msc. Cleiton Garcia 19 07/08/2014 ASP.NET WEB FORMS Prof. Msc. Cleiton Garcia 21 • Padrão arquitetural com: – Responsabilidades e conceitos bem definidos – Maior coesão – Maior clareza – Facilidade no desenvolvimento • Tudo é testável (TDD) • Controle sobre o HTML 07/08/2014 Histórico • • • • • • • • • • Prof. Msc. Cleiton Garcia Prof. Msc. Cleiton Garcia 22 Instalar ASP.NET MVC 1996 ASP 2002 ASP.NET Web Forms 1.0 2003 ASP.NET Web Forms 1.1 2005 ASP.NET Web Forms 2.0 2007 ASP.NET AJAX 2008 ASP.NET Web Forms 3.5 2009 ASP.NET MVC 1.0 2010 ASP.NET MVC 2.0 e Web Forms 4.0 2011 ASP.NET MVC 3.0 2012 ASP.NET MVC 4.0 e Web Forms 4.5 07/08/2014 20 ASP.NET MVC • Problemas – Pouca formalização na separação de lógica de domínio e a user interface – Ciclo de vida muito complexo – Páginas grandes com alto tráfego na rede – Baixo controle do código HTML enviado ao browser – Difícil de trabalhar com ajax (MS Ajax não é muito agradável) – Web server processa os controles dedicando ocupando CPU do servidor com a user interface – Dificuldade em testar 07/08/2014 Prof. Msc. Cleiton Garcia 23 • Instalar SP1 do Visual Studio 2010 • ASP.NET MVC3 with Tools – http://go.microsoft.com/fwlink/?LinkID=215693 • ASP.NET MVC 4 for Visual Studio 2010 SP1 – http://www.microsoft.com/en‐ us/download/confirmation.aspx?id=30683 07/08/2014 Prof. Msc. Cleiton Garcia 24 4 07/08/2014 Dicas de migração para o ASP.NET MVC • Quando deve‐se continuar com o ASP.NET WebForms? – Quando o projeto já está nesta tecnologia e é necessário uma melhoria ou extensão. – Quando quiser desenvolver algo rapidamente com o clicar e arrastar. – Não se possui um web designer ou profissional que irá desenvolver as páginas controlando o HTML das user interfaces. 07/08/2014 Prof. Msc. Cleiton Garcia 25 Template de Projeto ASP.NET MVC • App_data: local de repositórios de dados como: bancos de dados ou arquivos xml • Content: arquivos estáticos como imagens e CSS. • Controller: Classes controladoras que recebem as requisições do usuário • Models: Contém as entidades que manipulam as informações e realizam regras de negócio • Scripts: Arquivos JavaScript em geral (.js) • Views: Responsável pela exibição das interfaces do usuário, como: .aspx, .ascx, .master, .cshtml 07/08/2014 O que há de novo? • Dynamic ViewModel – Uma forma de criar as views (View engine) – Criado para facilitar o trabalho com as views – Transição transparente de HTML para server side – Simplesmente use o “@”, ao invés de <% %> – Possibilidade executar o código da view antes de carregar • Facilitar o uso com: – Helpers que produzem código HTML – Functions métodos sem saída HTML Prof. Msc. Cleiton Garcia – Facilidade no uso do ViewData – Utiliza programação dinâmica (.NET 4) – Funciona no lado do controller e view – Código mais legível • Validações – Compare – Remote • IoC e Ninject 27 07/08/2014 O que há de novo? Prof. Msc. Cleiton Garcia Prof. Msc. Cleiton Garcia 28 O que há de novo? • WebHelpers – Facilitar o reaproveitamento do trabalho – Facilita atividades como: Envio de emails; Exibição de gráficos; Manipulação de dados em tabelas (grids); Criptografia; Json • Global Filters – Filtros definidos para controllers – Consegue‐se interceptar as actions – Permite a execução de atividades em momentos chaves – DRY ‐ Don't Repeat Yourself 07/08/2014 26 O que há de novo? • Razor 07/08/2014 Prof. Msc. Cleiton Garcia 29 • IDependencyResolver – – – – – Forma simples de resolver dependências Somente através de configuração Facilita TDD Responsabilidade bem separadas Necessário apenas informar quem sabe resolver • Sessionless controllers – HTTP é stateless – Este tipo ajuda a evitar o uso indevido de sessions – Session não é: para passar parâmetros; Para usar como um bancos de dados; Thread safe (cuidado com rotinas paralelas). 07/08/2014 Prof. Msc. Cleiton Garcia 30 5 07/08/2014 Prática • Desenvolvendo uma nova aplicação • Página 20 a 43. 07/08/2014 Prof. Msc. Cleiton Garcia 31 6








ApplySandwichStrip

pFad - (p)hone/(F)rame/(a)nonymizer/(d)eclutterfier!      Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

Fetched URL: https://www.academia.edu/8116439/TECNOLOGIADE_PROGRAMA%C3%87%C3%83OII

Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy