Introdução à Plataforma Microsoft .NET

Slides:



Advertisements
Apresentações semelhantes
Desenvolvimento de Sistemas Distribuídos Web Services
Advertisements

Augusto NevesJoão CarlosRodrigo Paula Linguagem de Programação C++ Componentes do Grupo.
Paulo Marques Hernâni Pedroso
Vitor Santos Microsoft Corporation
Segurança na .NET Framework
UNIPAC – ARAGUARI CAMPUS – IX PROF. EVERTON HIPÓLITO DE FREITAS
Web Services Um Web Service é um bloco de software que pode ser acedido pela Internet e usado remotamente por outras aplicações Infra-estrutura para a.
.Net Para Web Plataforma.Net 2º Semestre 2009 > PUCPR > Tecnologia de Programação II Bruno C. de Paula.
Introdução ao ASP.NET 2º Semestre 2009 > PUCPR > Tecnologia de Programação 2 Bruno C. de Paula.
Conhecendo o VS2008: Windows Forms X Web Forms X Web Services
Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.
PRDS - Programa de Residência em Desenvolvimento de Software Laboratório de Engenharia de Software (LES) da PUC-Rio Carlos Lucena
Introdução aos Serviços Web
Artur Rauen Luciano Peixoto
Linguagens de programação
Alexandre Parra Site: Linguagem Java Alexandre Parra Site:
Área de Desenvolvimento de Sistemas
Introdução à Linguagem Java
DAS Sistemas Distribuídos para Automação Industrial
PROGRAMAÇÃO DISTRIBUÍDA EM JAVA Verão/2001
Curso de Programação em C++
Tiago Tagliari Martinez Sistemas de Objetos Distribuídos 25/06/2002
.NET FRAMEWORK. 2.NET Framework É uma plataforma que permite desenvolver aplicações de software e bibliotecas chamadas aplicações gerenciadas; Ele provê
Microsoft.NET Framework Luiz Miranda devgoiania.net Programas & Soluções.
A linguagem C#.
Introdução a Programação Orientada a Objetos
Conhecendo o Visual Studio.NET
Introdução ao C# e ao visual studio
SOA - Arquitetura Orientada a Serviços
Curso de extensão em Desenvolvimento Web
Linguagem de Programação JAVA
Aplicativos Web Com Orientação a Objetos
Linguagem de Programação C#
Elizeu Madeira Eduardo Cardoso João Paulo Duarte
Arquitetura Microsoft .Net
Flávia Andrade de Souza Rodrigo Mibielli Peixoto
JAVA Linguagem Ambiente de Desenvolvimento
Linguagem Técnica de Programação VI Prof.: Luiz Gustavo Jordão Soares.
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
Higher Education Statistics in C# Language
Web Services Desmistificando o pré-conceito.
Curso de ISI (Implantação de Sistemas de Informação)
Conceitos de J2EE para a WEB
Cristiano Soares Rafael di Lego Roberto Nemirovsky Thiago Nascimento
XIV Jornada de Cursos .NET com C# Antônio Júnior Bruno Inojosa.
Adriano Melo Introdução ao ASP.NET Adriano Melo
CURSO DE EXTENSÃO PROGRAMAÇÃO C# .NET
Professor: Márcio Amador
Paradigmas da Programação – Semestre 1 – Aula 9 Professor: Eduardo Mantovani )
Bruno Inojosa MCP .NET Framework
Aplicações Web com Orientação a Objetos
Da Introdução à Prática
RPC and Web Service André Pereira.
Java Kickstart, day 2 Semelhanças com linguagem C.
Introdução a JEE Marco A. S. Reis Arquiteto de Software Abril/2011.
José Francisco PHP & MySQL. Os slides originais são parte do material de cursos anteriores do curso de PHP, ministrados por Sérgio Clemente.
Introdução JAVA Faculdade Mauricio de Nassau
Fundamentos da Linguagem C#
JavaServer Faces Rapid Web Application Development em Java Ricardo Cavalcanti Jobson Ronan
.NET com C#.  Conceitos e Características  Vantagens do SOAP  Descrição do WebService  Gerenciamento de Estados  UDDI  Novidades do Framework 2.0.
Linguagem de Programação JAVA Professora Michelle Nery Nomeclaturas.
Alexandre Ricardo Nardi
Introdução a Programação Orientada a Objetos
.NET Por: Pablo Diego vulgo “El Tigre”. O que é.NET? É uma plataforma de desenvolvimento. Com o.NET é possível de desenvolver vários tipos de aplicação.
 é uma iniciativa da Microsoft, que visa uma plataforma única para desenvolvimento e execução de sistemas e aplicações.  Todo e qualquer código gerado.
UCSal – Tecnologia em Análise e Desenvolvimento de Sistemas Programação para Aplicações WEB Profa. Semíramis Assis
LINGUAGEM DE PROGRAMAÇÃO I
YOUR LOGO Tópicos Avançados em Internet Prof. Lincoln Ferreira Dantas Sistemas de Informação UNIESP – Presidente Epitácio.
Programador/a de Informática
Transcrição da apresentação:

Introdução à Plataforma Microsoft .NET Essa apresentacao é uma breve introducao ao que é a plataforma .NET e aos seus principais recursos, principalmente em comparacao com a plataforma J2EE Monique Monteiro

Agenda Plataforma Microsoft .NET .NET X J2EE Common Language Infrastructure Modelo de Compilação Common Type System CLI – Principais Implementações CLR X JVM .NET – Arquitetura ASP .NET Web Services C# X Java Referências

Plataforma Microsoft .NET Plataforma de desenvolvimento multi-linguagem e multi-paradigma Ambiente de execução gerenciado: Máquina virtual Compilação just-in-time Gerenciamento automático de memória Integração de serviços para: Desenvolvimento Web (ASP .NET) Service Oriented Architecture (Web Services) Computação Distribuída (.NET Remoting) Principais linguagens: C#, VB .NET, J#

.NET X J2EE .NET: J2EE J2EE .NET Web Struts, JSF, Laszlo ASP .NET “Várias linguagens em um único ambiente” J2EE “Uma única linguagem em vários ambientes” J2EE .NET Web Struts, JSF, Laszlo ASP .NET Banco de Dados JDBC ADO .NET Web Services Suporte por meio de APIs Suporte embutido e simplificado Distribuição RMI, EJB .NET Remoting

Common Language Infrastructure Infra-estrutura de execução padronizada pela ECMA Especificação define: Common Type System Metadados Common Language Specification Virtual Execution System

(Compilação Just-In-Time) Modelo de Compilação Manifesto 1 Código Fonte Assembly Common Intermediate Language Linguagem X 2 (Compilação Just-In-Time) OU 2 Código Nativo (Interpretação)

Common Type System

Estruturas Exemplo de value type (alocadas na pilha) Exemplo (C#):

Enumerações Exemplo de value type (alocadas na pilha) Exemplo (C#):

Delegates Versão OO e segura de ponteiros para função Utilizados no modelo de eventos Exemplo: public delegate int Function(int x, int y); ... Function function1 = new Function(Sum); Function function2 = new Function(<some object>.Subtract); int result1 = function1(10, 20); int result2 = function2(30, 40); static int Sum(int x, int y) { return x + y; } int Subtract(int a, int b) { return x – y; }

CLI – Principais Implementações Common Language Runtime (Microsoft .NET) Shared Source CLI (Rotor) “Subconjunto” da CLR para fins de pesquisa Mono Plataformas: Linux, Solaris, Mac OS X, Windows, Unix

CLR X JVM CLR JVM Suporte a Generics Nativo Sintático Boxing/Unboxing Enumerações Sistema de Tipos Multi-paradigma Específico para Java

Biblioteca de Classes Básicas Common Language Runtime .NET – Arquitetura Web Services Web Forms ASP .NET Windows Forms ADO .NET – Dados e XML Biblioteca de Classes Básicas Common Language Runtime

ASP .NET Tecnologia para criação de aplicações Web baseada no Framework .NET Reformulação total da tecnologia ASP Compatível com qualquer linguagem .NET Gerenciamento automático de sessões em Web Farms

ASP .NET Web Forms Páginas ASP .NET compiladas dinamicamente Correspondente ao Java Server Pages do J2EE Componentes semelhantes aos encontrados em ferramentas RAD para desktop Modelo declarativo Suporte automático a validação Portáveis entre diferentes navegadores (incluindo dispositivos móveis)

Web Forms – Ferramentas Visual Studio .NET Web Matrix (gratuita) Macromedia Dreamweaver MX Borland C# Builder Notepad...

ASP .NET Web Services Foco em facilidade de desenvolvimento “Serviços disponibilizados via WWW com base em padrões e especificações estabelecidos (SOAP, WSDL, UDDI, etc.), de forma independente de linguagem de programação.” Foco em facilidade de desenvolvimento Identificados por uma única palavra-chave Mecanismos built-in de conversão entre SOAP/XML e o ambiente orientado a objetos

Web Services WebMethods Framework Fornecido por ASP .NET Extensível Mapeia mensagens SOAP em chamadas/retorno de métodos

Web Service – Exemplo Arquivo .asmx Arquivo Fonte (pré-compilado) <%@ WebService class="MathService"%> using System.Web.Services; public class MathService { [WebMethod] public double Add(double x, double y) { return x + y;} public double Sub(double x, double y) { return x – y;} public double Mul(double x, double y) { return x * y;} public double Div(double x, double y) { return x / y;} }

Web Services – Modelo de Execução Requisição HTTP/SOAP é recebida e encaminhada ao arquivo .asmx correspondente Classe e método são localizados Processamento é realizado e retornado via HTTP/SOAP POST /math/math.asmx HTTP/1.1 … SOAPAction: "urn:math:subtract" <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <Subtract xmlns="http://example.org/math"> <x>33</x> <y>66</y> </Subtract> </soap:Body> </soap:Envelope>

Web Services – Mapeamento XML – OO Deserialização SOAP → Objetos via Reflexão Limitada ao padrão de esquemas (WSDL, XML Schemas) Classe Objetos Esquema XML Documento XML

C# X Java – Similaridades Sintaxes praticamente idênticas Todas as classes descendem de Object Não há funções ou constantes globais Tudo pertence a uma classe Falta de suporte a herança múltipla Suporte a interfaces Uso de exceções Conceito de espaço de nomes (namespaces X packages) Comentário utilizado para documentação Classes e métodos com nomes parecidos Equals(), Finalize(), ToString(), etc.

C# X Java – Diferenças Sentença foreach para iteração por arrays e classes que implementam IEnumerable Introduzido no J2SE 5.0 Suporte a propriedades Enumerações, estruturas Métodos não virtuais por padrão Declarados como virtual e sobrescritos com override Campos/métodos e propriedades private por padrão Sobrecarga de operador (inclusive coerção) Documentação em XML Uso de ponteiros (código marcado como unsafe)

Propriedades – Exemplo public class Pessoa { string nome; public string Nome{ get return nome; } set nome = value;

Referências .NET Framework Developer Cente ASP .NET: Web Services: http://msdn.microsoft.com/netframework/ ASP .NET: http://msdn.microsoft.com/ASP.NET/ http://www.asp.net/whidbey/ Web Services: http://msdn.microsoft.com/webservices/ Mobile Developer Center: http://msdn.microsoft.com/mobility/ C# para Programadores de Java. Brian Bagnall, Philip Chen, Stephen Golsberg. Alta Books.

Introdução à Plataforma Microsoft .NET Monique Monteiro