You are on page 1of 38

.

Net Framework
Aluno
Luiz GUStavo Martins
Matria
Sistemas de Objetos Distribudos

Roteiro

Origem
O que .NET , Caractersticas e Como funciona
CLR
Web Forms
Web Services
Servidores .NET
Pros e Contras
Referncias
2

Origem do .NET
1996
Internet
1st Gen

IE/IIS

1997
Internet
2nd Gen

2000
Internet
3rd Gen

WinDNA

1992
Client/Server

.NET

Win32
3

O que .NET?

Fbula dos 3 cegos


s uma nova linguagem?
um Visual Studio novo?
s um ambiente para troca de mensagens
e dados baseados em SOAP e XML?
tudo isso e muito mais!!!
4

O que .NET Framework?


Plataforma para desenvolvimento e
execuo de software
Criada visando o desenvolvimento de
software para a internet e aplicaes
distribudas
5

Caractersticas da Plataforma
.Net
Independncia de Sistema Operacional
A plataforma compila o programa para cdigo
nativo antes da primeira execuo

Integrao entre Linguagens


Todas as linguagens .NET utilizam a mesma
API de desenvolvimento
6

Caractersticas da Plataforma
.NET
Facilidade de Distribuio
Ao ser compilado os executveis anotam as
verses das DLLs que foram utilizadas
Os executveis rodam utilizando sempre as
DLLs com que foram compilados
No necessrio mais registrar o programa. O
assemblie contm toda informao necessria
para o funcionamento do programa
7

Caractersticas da Plataforma
.NET
Confiabilidade
Tipagem forte (type safety) , todas as
classes .NET derivam de uma mesma classe
me, Object
Coleta de lixo em todas linguagens .NET

Como Funciona?
Source
code
Managed
code

VB

C#

C++

Compiler

Compiler

Compiler

Assembly
IL Code

Assembly
IL Code

Assembly
IL Code

Unmanaged
Component

Common Language Runtime


JIT Compiler
Native Code

Operating System Services

CLR

Security

Execution
Support

Base Classes
IL to
native code
compilers

Common Language Runtime

Frameworks

GC, stack walk, code manager


Class loader and layout

10

CLR
CLR Common Language Runtime
Foi escrita do 0
Controla a execuo de cdigo no .NET Framework
Compila cdigo IL para cdigo nativo da mquina
antes da primeira execuo do programa
Carrega classes necessrias para o programa sendo
executado
Refora as checagens de segurana
No uma Mquina Virtual como em Java
11

Como Funciona?
EXEs e DLLs tem um formato especfico de
arquivo (PE Portable Executable)
Windows consegue executar e carregar EXEs e
DLLs porque entende esse formato
Os programas .NET tem alguns dados a mais que
avisam o sistema operacional que a CLR deve ser
ativada e a partir disso cuida do carregamento e
execuo desse arquivo e de todos componentes
requisitados por ele
12

Como Funciona?
Gerando o Assemblie

Assemblie

Source Code

Compilador
csc.exe ou vbc.exe
C++, C#, VB ou
qualquer
linguagem .NET

DLL ou EXE

13

Executavel Porttil
Exemplo
MyExample.DLL
Metadata
IL
Managed
code
Resources

14

Meta-Dados
Dados sobre os dados
Inclui informaes sobre tipos que define
ou que utiliza
Informao sobre verso
Referncia a assemblies externos com dll
que so usadas e suas espectivas verses
Descries sobre mdulos, classes, campos,
propriedades, eventos, etc
15

Metadata
A CLR usa para verificao, reforo de segurana,
layout da memria e para a execuo
O Carregador de Classes utiliza para achar e
carregar classes .NET ja que os meta-dados
contm informao de onde essas classes se
encontram, mesmo que em outro assemblie na rede
JIT usa metadata para compilar o programa antes
da primeira execuo
16

Metadata
Classes reflexivas podem ler o metadata em
tempo de execuo
Sem metadata a plataforma no poderia
prover verificao de tipos, segurana,
adminstrao de memria, depurao, etc
Resumindo no existiria .NET sem metadados
17

I.L. Intermediate Language


Linguagem totalmente orientada a objetos
Projetada para ser compilada e no
interpretada
A IL para a plataforma .NET o que o
bytecode para Java

18

Operaes entre as linguagens


Um componente criado usando a linguagem A e
chamado MyNamespace.dll
Em um componente separado escrito na
linguagem B ns podemos importar o assemblie...
#using MyNamespace.dll

E ento podemos acessar a classe normalmente


using namespace MyNamespace;
MyClass *cls = new MyClass();
result = cls->MyMethod();
19

Caractersticas Entre As
Linguagens
Suporte entre linguagens e componentes
Herana
Tratamento Excees
Depurao

Bom para estender componentes de


terceiros usando a linguagem de sua escolha

20

Exemplo em Managed C++


#using <mscorlib.dll>
using namespace System
void main()
{
Console::WriteLine(Lvisite www.gustheman.com
!!);
}
21

Exemplo em VB.NET
Import System
Public Module modmain
Sub Main()
Console.WriteLine(visite www.gustheman.com !!)
End Sub
End Module

22

Exemplos em C#
using System;
class MainApp
{
public static void Main()
{
Console.WriteLine(visite www.gustheman.com !!);
}
}

23

Exemplo em IL
.class private auto ansi MainApp
Extends [mscorlib]System.Object
{
.method public hidesyg static
void Main() cil managed
{
.entrypoint
.maxstack 8
24

Exemplo de IL
ldstr visite www.gustheman.com!!
call void [mscorlib]System.Console::WriteLine( classe
System.String )
ret
} // fim do metodo MainApp::Main
.method public hydebysig specialname rtspecialname
instance void .ctor() cil managed
{
.maxstack 8
25

Exemplo de IL
ldarg.0
call instace void
[mscorlib]System.Object::.ctor()
ret
} // fim do metodo MainApp::.ctor
}// fim da classe MainApp
26

Web Forms
Nova maneira de se desenvolver pginas HTML
A pgina compilada na primeira execuo e a
verso compilada usada nas demais chamadas
Desenvolvimento fcil, parecido com o
desenvolvimento antigo do VB ou Visual C++
A Pgina gerada s tem HTML padro, podendo
ser vista em qualquer navegador (browser) sem
problemas
27

Web Forms
Separao clara entre a lgica da pgina
(cdigo) e o design (HTML)
A parte lgica pode ser escrita em qualquer
linguagem .NET
Cdigo ASP antigo ainda suportado
Melhor controle de sesso, permitindo
maior escalabilidade
28

Web Services
Software como um Servio
Possibilita o uso de componentes atravs do
protocolo padro de HTTP
Software podem se comunicar usando XML e
Internet
Micro$oft ja disponibiliza o sevio de
autenticao Passport
O projeto HailStorm uma evoluo do Passport,
com muito mais servios
29

Web Services
Web
Service

XML

XML

Web
Service

HTML

Cliente
XML

Web
Service

30

Web Services
UDDI Universal Description, Discovery and
Integration Pginas Amarelas de Web Services
SOAP + XML
WSDL Web Services Description Language
Descrio da interface oferecida pelo web service
Feita em XML
Parecido com IDL (COM)

31

Smart Devices (aparelhos


espertos)
O que torna um aparelho esperto o fato de
ele poder acessar Web Services
Possibilita o usurio interagir com seus
dados no importando o lugar, o tipo nem o
nmero de aparelhos que se usa
Dentre os aparelhos espertos temos os PCs,
laptops, telefones, palms e at mesmo o
Xbox
32

Servidores .NET
Servidores que ajudam na distribuio e
hospedagem de software e servios .NET
Na famlia de servidores oferecidos temos:
SQL server 2000, alta disponibilidade e suporte a XML
nativo
Application center, servidor que controla grupos de
servidores, tornando mais fcil a administrao

33

Servidores .NET
Mais Servidores
Exchange servidor de mails
Biz talk fornece ferramentas necessrias para
integrao de aplicativos heterogneos.
Host Integration Server Integra novos
sistemas com os dados e recursos de mainframe

34

.Net Pros
Tem suporte a mltiplas linguagens
C#, Managed C++, VB.NET, ASP.NET
Perl, Cobol, Pascal esto sendo portados por outras
empresas

amigvel a padres abertos (SOAP, HTML,


XML)
O cdigo compilado, no importando a
linguagem ou o mtodo de distribuio utilizados
35

.Net contras
mais uma plataforma de
desenvolvimento, o que significa reescrever
cdigo e aprender novos truques
Atualmente s disponvel para Windows

36

Perguntas?

37

Referncias

Site oficial : www.microsoft.com/net


www.linhadecodigo.com.br
www.gotdotnet.com
www.oreilly.com
Livro .Net Framework Essentials
Thuan Thai & Hoang Q. Lam OREILLY

MSDN
www.google.com
38

You might also like