Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET •...

28
Microsoft .NET Grupo: Eduardo Getassi Maicon Lima Rodrigo Cunha

Transcript of Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET •...

Page 1: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

Microsoft .NET

Grupo: Eduardo Getassi Maicon Lima Rodrigo Cunha

Page 2: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

Microsoft .NET

• Introdução ao

.NET

• FrameWork .NET

• WebForms

• Versões

• ADO.NET

• CLR

• WebServices

• MVC

• Linguagens .NET

• Visual Studio

Page 3: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

VB.net, C#, C++, Java...

Compilador híbrido: interpretação em tempo de execução, porém mantendo cache do código.

Metodologia•Múltiplas Linguagens

•Compilador JIT

Partes Principais•Framework .Net

•Common Language Runtime

INTRODUÇÃO

Mais de 3.500 classes.

Organização via bibliotecas (java)

Máquina Virtual.

Page 4: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

COMMON LANGUAGE RUNTIME

• Núcleo do .Net.• Implementação do padrão Common

Language Infrastructure.• Ambiente de execução para o código de um

programa.• Conceito similar à Java Virtual Machine.• A CLR implementada pela própria Microsoft

roda apenas em sistemas Windows.• Existem implementações para outros

sistemas (DotGNU, Mono).

Page 5: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

COMMON LANGUAGE RUNTIME

C#

Java

VB

CódigoFonte

CompiladorEspecífico da

linguagem

CommonIntermediate

Language

CommonLanguageRuntime

Bitecode

CIL

Independente de plataforma

CLR

Plataformaespecífica

Common Language Infrastructure

01001001000101000101001010001010

Page 6: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

FRAMEWORK .NETClass Library

System.Collections

System.Data

System. Drawing

System.IO

Acessível indiferente da linguagem de programação no .Net.

Comparável as bibliotecas Java.

Implementa ou sobrepõe funcionalidades de cada linguagem.

Page 7: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

FRAMEWORK .NET

OBRIGATÓRIAS•Collections•Diagnostics•Globalization•IO•Net•Reflection•Runtime•Security•Text•Threading

OPCIONAIS•ComponentModel•Data•Collections•DirectoryServices•Drawing•EnterpriseServices•Management•Media•Web•Windows.Forms•XML•mais...

Class Library

Sys

tem

.

Page 8: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

As ferramentas de desenvolvimento

Cobol Cobol RPGRPG

MS-BASIC MS-BASIC Turbo Pascal Turbo Pascal

QuickBasicQuickBasic

Visual Basic Visual Basic PowerBuilder PowerBuilder

DelphiDelphi

GUIGUI

O PCO PC

A WebA Web

O O “sistema”“sistema”

XML Web XML Web ServicesServicesHTML,HTML,

scriptingscripting

Page 9: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

Empresa AEmpresa AA empresa “Virtual”

Escrit.Remoto/ConsumidoresEscrit.Remoto/Consumidores

Empregados no ExteriorEmpregados no Exterior

Empresa BEmpresa B

ClientesClientesParceirosParceiros

Fornecedores Fornecedores

Escrit.Remoto/ConsumidoresEscrit.Remoto/ConsumidoresEmpregados no ExteriorEmpregados no Exterior

Exigência de negócio = Estar tudo ligadoExigência de negócio = Estar tudo ligado

Page 10: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

A plataforma .NET

Page 11: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

Web Services• Exemplo: Através do CEP, buscar outros

dados do logradouro sem precisar ter tais informações em nossa base de dados.

Page 12: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

WEB FORMS

• Comunicação com o servidor.• Podem conter JavaScript e Script SQL.• A página é compilada apenas na primeira

vez que é chamada.

Page 13: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

Model View Controller

Page 14: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

.NET Histórico• Versões

– 1.0: início em 13/02/2002– 2.0: suporte a banco de dados ODBC e

ORACLE. Desenvolvida também para Windows Server 2003.

– 3.0: Surge o CLR. Distribuída para o Vista e para o WS 2008.

– 3.5: LINQ– 4.0: PLINQ,

Page 15: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

.NET Tendências

• Plataforma Azure:– Grupo de tecnologias nas nuvens.

• Silver lights:– Competir com Adobe Flash e Adobe

Flex.– Combinar visual e funcionalidades

programadores e designers.– Destaque para transmissão de vídeos e

utilização de tecnologia hardware 3D.

Page 16: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

LINGUAGENS .NET * APL * Boo * COBOL * Comp. Pascal * C# * C++ * Eiffel * Forth * Fortran * Haskell

* Java * JScript * J# * Lua * Mercury * Mondrian * Oberon * Delphi * Oz * Pascal

* Perl * PowerBuilder * PowerShell * Python * RPG * Ruby * Scheme * SmallTalk * Standard ML * Visual Basic

Page 17: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

ADO.NETActiveX Data Objects– Conjunto de classes de objetos para interagir com

banco de dados e outras fontes como: email. XML, planilhas Excel e etc.

– Provedores de dados:• SQL Server• OLEDB

– Outros provedores:• ODBC• MySQL

Page 18: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

ADO.NET

Page 19: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

ADO.NET<%@ Page Language="VB" debug="true"%>

<%@ import Namespace="System.Data" %>

<%@ import Namespace="System.Data.OleDb" %>

<script runat="server">

DIM strConexao As String

DIM strCaminho As String

DIM strSQL As String

Sub page_load()

strCaminho = “e:\websites\ex\database\dbEditora.mdb"

strConexao =" Provider=Microsoft.Jet.OLEDB.4.0;Ole DB Services=-4;"

strConexao = strConexao + "Data Source=" + strCaminho

Page 20: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

DIM objConexao as New OledbConnection(strConexao)

strSql = "SELECT * FROM livros"

DIM objCommand AS New OledbCommand(strSQL,objConexao)

DIM dr As OledbDataReader

objConexao.Open()

dr = objCommand.ExecuteReader()

dataGrid1.DataSource=dr

dataGrid1.dataBind()

dr.Close()

objConexao.Close()

End sub

</script>

ADO.NET

Page 21: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

ADO.NET<asp:dataGrid ID="dataGrid1" Runat="server"

BorderStyle="Solid“ BorderWidth="1px"

BorderColor="Gray“ Font-Names="Arial"

Font-Size="8pt“ CellPadding="2">

<ItemStyle BackColor="#e0e0e0" VerticalAlign="Top"></ItemStyle>

<HeaderStyle BackColor="#c0c0ff“ font-size="8pt"

font-names="Arial“ font-bold="True">

</HeaderStyle>

</asp:dataGrid>

Page 22: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

ADO.NETDim conn As New

SqlConnection(connectionString)Dim da As New SqlDataAdapter("select * from tabela;", conn)

Dim ds As New DataSet()da.Fill(ds)

Dim dr As DataRowFor Each dr In ds.Tables(0).Rows    Console.WriteLine(dr(0).ToString())Next dr

Page 23: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

ADO.NETDATASET X DATAREADER

Relacionamento Mestre-Detalhe com verificação de integridade

Podemos efetuar operações com as colunas do lado do cliente (Soma, Média , etc..) que podem ser persistidas mesmo que os dados se alterem.

Ordenação e Filtragem de dados no lado do cliente sem a necessidade de um round-trip ao Banco de dados

Uma variedade de opções na vinculação de dados: DataGrid , WinForms e .NET Controls.

Integração com o DataAdapter para atualização automática de atualizações.

Poder ler e escrever diretamente uma representação XML de dados relacionados.

Page 24: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

ADO.NET

Page 25: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

ADO.NETSub DataGrid_Page(Sender As Object, e As DataGridPageChangedEventArgs)

DataGrid1.CurrentPageIndex = e.NewPageIndex

BindGrid()

End Sub

Sub DataGrid_Sort(Sender As Object, e As DataGridSortCommandEventArgs)

DataGrid1.CurrentPageIndex = 0

SortField = e.SortExpression

BindGrid()

End Sub

Page 26: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

VISUAL STUDIO

É um pacote de programas da Microsoft para desenvolvimento de software especialmente dedicado ao framework .NET e às linguagens Visual Basic, C , C++, C# e J#. Também é um grande produto de desenvolvimento na área web, usando a plataforma do ASP.NET. As linguagens com maior frequência nessa plataforma são: VB.NET e o C#.

Page 27: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

VISUAL STUDIOADO.NET Entity Framework 4.0

Mas por que uma nova plataforma de acesso a dados, se tinhamos os DataSets, DataReaders que já estão testados e funcionando a tempo?

Talvez o principal benefício seja sua alta produtividade, visando que você não precisa se preocupar com o seu modelo de dados, tudo será gerado apartir de ferramentas integradas no Visual Studio.

Os modelos gerados possuem entidades que representam as tabelas do seu banco de dados, sendo assim, trabalhamos de forma orientada à objetos. Resumidamente, todo controle de acesso ao banco, modelo conceitual de regras de negócio é feito pelo EF.

Page 28: Microsoftfrank/INE5612/Seminario2010.2/DotNET.pdf · Microsoft .NET • Introdução ao .NET • FrameWork .NET • WebForms • Versões • ADO.NET • CLR • WebServices • MVC

Referências

• http://www.macoratti.net/webfrm1.htm;• http://www.msdn.com;• Wikipedia;