projeto de sistemas para internet - wordpress.com · principais vantagens do asp.net •separação...

43
Projeto de Sistemas para Internet Slide 02 03/08/2018 1 Prof. Cleziel Franzoni da Costa /cleziel [email protected]

Upload: others

Post on 08-Jul-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Projeto de Sistemas para Internet

Slide 0203/08/2018

1

Prof. Cleziel Franzoni da Costa

/cleziel

[email protected]

Page 2: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

42

Page 3: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Agenda

• O .NET Framework e o CLR

• O que posso fazer com o .NET Framework?

• Plataforma Visual Studio

• O que é ASP.Net

• Facilidades do ASP.Net

• Web Forms x ASP.NET MVC

• MVC

• ASP.Net MVC

Page 4: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

O que é o .NET Framework?

• É uma iniciativa da Microsoft, que visa uma plataformaúnica para desenvolvimento e execução de sistemas eaplicações.

Page 5: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

O que posso fazer com o .NET Framework?

• Aplicativos Web

• Aplicativos para Servidores

• Aplicativos de Console

• Aplicativos de Banco de Dados

• Serviços Windows

• Web Services e muito mais...

Page 6: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

• A plataforma .NET é executada sobre uma CommonLanguage Runtime - CLR (Ambiente de ExecuçãoIndependente de Linguagem).

Page 7: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Serviços Presentes no CLR

• Gerenciamento de memória

• Tratamento de exceções

• Compilação

• Segurança

• Outros

Page 8: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Estrutura do .Net Framework

Page 9: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Linguagens Suportadas pelo CLR• APL

• Boo

• Clarion

• Component Pascal

• C#

• C++

• Eiffel

• Forth

• Fortran

• Haskell

• Java

• JScript

• J#

• Lua

• Mercury

• Mondrian

• Oberon

• Object Pascal /Delphi Language

• Oz

• Pascal

• Perl

• PowerBuilder

• PowerShell

• Python

• RPG

• Ruby

• Scheme

• SmallTalk

• Standard ML

• Visual Basic

Fonte:http://www.dotnetlanguages.net

Page 10: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Visual Studio

• Um conjunto de ferramentas de desenvolvimento quepermite aos desenvolvedores de software resolverproblemas complexos e criar soluções inovadoras.

Page 11: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Três principais pilares:

• Desenvolvimento rápido de aplicativos

• Colaboração eficaz em equipe

• Experiências inovadoras de usuários

Page 12: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

O que é ASP.Net

• ASP.NET é a plataforma da Microsoft para odesenvolvimento de aplicações Web e é o sucessor datecnologia ASP.

Page 13: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

ASP.Net não é ...

• ASP - Active Server Pages;

• Linguagem de programação

Page 14: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

O que é ASP?

• ASP é uma tecnologia de scripts que roda no servidor epermite que os scripts embutidos em uma página HTMLsejam executados por um servidor WEB.

Page 15: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Principais vantagens do ASP.Net

• Separação entre lógica e apresentação.

• Mais fácil de implementar.

• Suporte a múltiplas linguagens.

• Web Form Controls – controles mais avançados e“inteligentes”.

• Todas as vantagens oferecidas pelo Framework .NET.

Page 16: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Web Forms x ASP.NET MVC

Page 17: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Entendendo os Web Forms

• Primeiro framework de desenvolvimento web com ASP.NET

• Existe desde 2001/2002

• Rapidamente tomou parte do mercado, efetivamentematando o ASP 3

• Era a única solução de desenvolvimento web com .NET

Page 18: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Qual a vantagem de usar Web Forms?

• Código compilado;

• Rapidez no desenvolvimento;

• Statefull (matém estado entre requisições);

• Vasta gama de classes;

• Encoraja o uso da POO.

Page 19: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Desvantagens dos webforms:

• Uso incorreto do ViewState pode pesar ;

• O ciclo de vida da página dificulta um pouco a manipulaçãodos valores dos controles;

• O programador tende a colocar a lógica toda noCodeBehind;

Page 20: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Exemplo:

Usando os componentes DetailsView e GridView paramanipular cadastros.

Page 21: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Model View Controller - MVC

Page 23: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Resultado...

Page 24: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Um bom programador WEB

Referência: http://www.slideshare.net/felipernb

Page 26: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Resultado...

Page 27: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Principais erros...

• Muitos inventam seu próprio framework;

• Apenas eles entendem o que fazem;

• Tudo está misturado;

• Não existe reaproveitamento de código.

Page 29: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Então...

• Use um padrão pré-estabelecido;

Não Invente seu próprio padrão!

Page 30: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Morte aos Frameworks Caseiros...

Page 31: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Pense no futuro...

Page 32: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

O padrão MVC

• Padrão de arquitetura que separa lógica de negócio daapresentação

Page 33: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Resuldado do MVC:

Page 34: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Model (Modelo)

• O “conteúdo” que povoa sua aplicação: dados vindos dobanco, Web Services, Feeds, etc.

Page 35: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

View (Visão)

• O que é mostrado ao usuário

Page 36: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Controller (Controle)

• Gerencia o ambiente da requisição, e determina o que iráacontecer.

Page 37: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

O ASP.Net MVC Framework

• O que é:– Implementação do padrão MVC para o ASP.NET

– Um novo template de projeto no Visual Studio

– Uma nova maneira de desenvolver com ASP.NET

– Uma opção

• O que não é:– Um substituto ao Webforms

– Uma nova versão dos Webforms

Page 38: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Vantagens...

• Arquitetura: total separação de conceitos

• Extensibilidade: pode-se alterar a engine de visualização, deroteamento de urls, da fábrica de controllers

• Alto controle sobre o HTML gerado

• Testabilidade

Page 39: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Segurança

• Membership e Roles continuam valendo

– Com exceção da restrição de paginas por grupo/usuário

<location path="Contas/ContaCorrente.aspx"><system.web><authorization>

<allow roles="Gerentes" /><deny users="*" />

</authorization></system.web>

</location>

Page 40: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Devo usar Web Forms ou MVC??

Page 41: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

WebForms

Plug-and-Play

MVC

Expõe a arquitetura

Page 42: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas
Page 43: Projeto de Sistemas para Internet - WordPress.com · Principais vantagens do ASP.Net •Separação entre lógica e apresentação. •Mais fácil de implementar. •Suporte a múltiplas

Finalizando...

Links Úteis– http://www.microsoft.com/brasil/msdn/

– http://www.asp.net/

– http://www.msdev-es.com.br/

Contato:[email protected]