1 - A apresentação discute as principais novidades e razões para migrar para o .Net Framework 4, incluindo novos recursos no core, WPF, ASP.NET e WCF.
2 - É mostrado como instalar o .Net Framework 4 e sua alta compatibilidade com versões anteriores.
3 - Os desenvolvedores ganham novos recursos como LINQ, WPF, WCF que melhoram a produtividade ao desenvolver aplicações web, clientes e serviços.
10. Objetivos O .Net Framework Novidades no Framework 4 O que eu, desenvolvedor, ganho?
11. O que vamos cobrir Por que mover para o .NET 4? O que precisamos para migrar para o .NET 4? Como o .NET 4 é instalado? Onde podemos utilizá-lo? O quanto a compatibilidade? O que há de novo no core? O que ganho sendo um desenvolvedor de aplicações cliente? O que ganho sendo um desenvolvedor web? E os web services?
12. Um pouco de história SP 1 .Net 3.5 .Net 3.0 .Net 1.0 .Net 1.1 .Net 2.0 .Net 4 2002 2003 2005-08 2010 CLR 1.0 CLR 1.1 CLR 2.0 CLR 4
13. O .NET Framework ASP.NET E Mais! LINQ WPF DLR Win Forms WCF Base Class Libraries The CLR JIT & NGEN Garbage Collector Security Model Exception Handling Loader & Binder
16. E quanto a compatibilidade? Alta Compatibilidade Aplicações que rodam em uma versão anterior, continuarão rodando nesta versão Pode forçar aplicações mais antigas a rodarem no novo framework Apresenta execução do tipo “In-process side-by-side”.
19. O que há de novo no core do framework? BigInteger e Números complexos Tuplas Melhorias no sistema de enumeração de arquivos Memory-mapped Files Melhores Diagnósticos Background Garbage Colletion Design-time-only assemblies de interop Dynamic Language Runtime – DLR Covariância e Contra variância para Generics
21. O que eu ganho sendo um desenvolvedor de aplicações cliente? Novoscontrolespara WPF: Calendar, DataGrid, DatePicker SuporteparaaplicaçõesMultitouch Funcionalidades do Windows 7 Melhoriasnarenderização de texto
23. O que eu ganho sendo um desenvolvedor web? Pré-carregamento da aplicação (autostart) ASP.NET Routing para Web Forms Controle/Redução de view state Controle de gráficos com Web Forms MVC
25. E os Web Services? Workflow Services Suporte para WS-Discovery Integração com ASP.NET Routing Restful WCF Services WCF RIA Services WCF Data Services Paginação server-driven Streaming de fontes binárias Contagem de Linhas OData
27. E agora? Baixe o Visual Studio e o .Net Framework http://microsoft.com/web 2. Baixe o Visual Studio e o .Net Framework http://tinyurl.com/vs2010trainingkit
28. Links recomendados Developer Center do .NET Framework Developer Center do Visual Studio Biblioteca do MSDN sobre .NET Framework 4
29. Conteúdo relacionado DEV302 | Como e onde devo utilizar o ManagedExtensibility Framework (MEF) DEV306 | Um mergulho no ADO.NET Entity Framework 4 DEV303 | Paralelismo no .Net 4.0: Patterns, dicas e truques DEV301 | Novidades do Windows Communication Foundation (WCF) no NET Framework 4
2002 – Lançamento do .NET Framework, versão 1.0. A Microsoft introduziu o Common LanguageRuntime – CLR. Foi um importante passo pois o CLR é o ambiente gerenciado onde nossas aplicações rodam.As versões do CLR ficam em baixo para indicar que quando temos uma mudança ali, é quando temos realmente uma significante mudança nas nossas aplicações.2003 – Um ano depois nós tivemos o lançamento da versão 1.1 do .Net Framework, assim como uma nova versão do CLR, versão 1.1 – Esse movimento indicou o quanto a Microsoft estava investindo nessa plataforma e foi quando grande número de desenvolvedores começaram a adotar . NET2005 – Alguns anos depois houve uma grande atualização e o lançamento da versão 2.0 do CLR. Foi ai que começou um versionamento que do .NET Framework que acabou causando um pouco de desconforto, pois varias versões do Framework foram lançadas durante esses 5 anos porém sem mudança na versão do CLR. Ou seja, foram atualizações incrementais.Um grande passo e que vale ressaltar foi no lançamento da versão 3.0 que introduziu 4 novas tecnologias. WPF, WCF, WF, Cardspace.2010 – E agora em 2010, abril, nós tivemos o lançamento do .Net framework 4 e dessa vez com um novo CLR, versão 4.
O .Net Framework 4 é estruturado dessa maneira:Na parte inferior nos continuamos tendo o CLR – Common LanguageRuntime – suportando todo o nosso desenvolvimento.Aonde no próprio CLR foram feitas diversas melhorias no próprio núcleo com o intuído de aprimorar o desempenho e segurança.As bibliotecas de base continuam suportando diversos pilares de desenvolvimento aonde foram feitas melhorias nos já existentes e tivemos também a adição de novos pilares.O WPF por exemplo temos diversas melhorias como novos controles e suporte para desenvolvimento no Windows 7.Um continuo suporte para templates em WinForms.Temos a introdução do DLR – DinamicLanguageruntime – com a possibilidade agora de integrarmos desenvolvimento dinamico em nossa aplicações através de novos assemblies e a utilização de IronPython e IronRuby.Tremendas melhorias foram feitas para desenvolvimento Web, desde uma integração de projetos MVC, integração de script Jquery até melhorias no desempenho e comunicação das aplicações Web.Ainda temos também melhorias nos templates para desenvolvimento de serviços utilizando WCF e WF, com a introdução e consolidação de novos padrões de desenvolvimento como o Odata – Open Data Protocol - que utiliza o poder do WCF Data Services, chamado antigamente de ADO.NET Data Services.Além de claro melhorias nas comunicações com dados dentro do LINQ e um suporte nativo para paralelismo.E muito mais
Nós escolhemos uma lâmpada para fazer uma analogia porque utilizando a lâmpada nosso objetivo é obter iluminação e se continuarmos trocando pela mesma lâmpada continuaremos tendo luz, certo? Entretanto com a evolução da tecnologia nós começamos a ter mais opções aonde podemos hoje utilizar essa lâmpada fluorescente que continuará nos dando luz, só que de uma forma mais eficiente e econômica.Nós queremos que você pense no .NET Framework 4 da mesma maneira, mas existem ainda mais vantagens em migrar para o .NET framework 4 do que uma melhor eficiência em relação às versões anteriores. Quando nós queremos criar aplicações e tirar proveito das plataformas mais recentes da Microsoft, como o Windows 7 hoje, nós temos que fazer isso através da versão mais recente do .NET Framework que é lá que funcionalidades dessa plataforma são expostas. O Windows Server 2008 R2 tem uma série de novidades para desenvolvimento Web, como por exemplo a possibilidade do IIS de auto iniciar suas aplicações e serviços. AppFabric pode monitorar seus Workflows e serviços. Tudo isso fica disponível pra você através do .NET Framework 4.Portanto utilizando o .NET Framework 4 é a maneira com que você pode tirar proveito dos recursos das mais recentes plataformas da Microsoft.
Aonde podemos utilizar o .NET Framework 4?Aplicações para o Windows 7 e Windows Server são provavelmente os alvos mais comuns, mas ainda existem outras opções de plataforma aonde você pode utilizar o framework. Windows Azure é obviamente um grande com muitas opções para a computação em nuvem. Além disso existe uma forte tendência da nuvem ser cada vez mais utilizada para o desenvolvimento e hospedagem de nossas aplicações. O Windows Azure expõe suas funcionalidades através do .NET Framework 4.Existe ainda compatibilidade com versões anteriores. Você ainda pode instalar o .NET Framework 4 em plataformas mais antigas como Windows XP SP3, Windows Vista SP1, Windows Server 2003 SP2. Obviamente algumas funcionalidades não são disponíveis quando você utiliza essas plataformas. Por exemplo as novas funcionalidades do Windows 7.Plataforma Office é onde a Microsoft continua investindo e vem adicionando cada vez mais capacidades com relação a expor o office para nós através do .NET Framework.Existem outras duas que são um pouco diferentes na maneira como são expostas para você. Não é necessariamente a versão completa do .NET Framework 4 que você está utilizando como alvo, mas é a mesma onde de funcionalidades. Portanto existe uma grande compatibilidade entre o que você constrói para Silverlight 4 e o que você no .NET 4, mas em um conjunto reduzido de funcionalidades. E a mesma situação acontece para o Windows Phone, que é construído com Silverlight. Então agora como desenvolvedor .NET você automaticamente já pode utilizar o Windows Phone como alvo de seu desenvolvimento.
O que é importante saber é que não é porque você instalou o .NET Framework 4 que suas aplicações que estão rodando atualmente em versão mais antigas irão parar de funcionar.Essa versão do Framework é totalmente compatível com outras versões e aplicações que rodam em uma versão anterior continuarão rodando e tendo essa versão como alvo.O que você tem como opção é forçar sua aplicação a começar a utilizar o .NET Framework 4 através de configuração do web config sem precisar recompilar a aplicação no Visual StudioAinda existe a execução do tipo “in-processside-by-side” aonde a aplicação consegue carregar e iniciar múltiplas versões do framework no mesmo processo.Com isso grande parte do código que você escreve hoje por ser migrado para o .NET Framework 4. Basta apontar como alvo o .NET 4 para que sua aplicação passe a ser compilada nessa versão. Um ponto de atenção é se você utiliza o modelo de segurança que teve uma grande mudança para o .NET 4.
WebPIInstall SQL
Dentro do núcleo do Framework nós temos diversas melhoriasMelhores diagnósticos e desempenhoAgora é possível extrair estimativas de uso do processador e memória por domínio de aplicação – Appdomain. – podendo monitorar a CPU e acessar o EventTracing para Windows – ETW – para diagnosticar e melhorar o desempenho.Background GarbageCollectionO .Net Framework 4 disponibiliza um background garbagecollection, que podemos dizer que serve como um gerenciador automático de lixo fazendo com que possamos desenvolver nossas aplicação sem a preocupação de ter que liberar memória utilizada. O bggarbagecollection entra no lugar do cuncurrentgarbagecollection, presente nas versões anteriores ao .NET 4, e tem um melhor desempenho que seu antecessor.Design-time-onlyinteropassembliesCom isso não é mais necessário enviar PrimaryInteropAssemblies – PIAs – para instalar aplicações que interoperam com objetos COM.Especialmente utilizados no desenvolvimento para aplicações Office, como Add-Ins. É possível embedar somente as informações necessárias dos PIAs na assembly da própria aplicação.DynamicLanguageRuntime – DLRAmbiente que adiciona uma série de serviços para linguagens dinâmicas no CLR. O DLR facilita o desenvolvimento do linguagens dinâmicas para rodarem no .NET framework e adiciona funcionalidades dinâmicas para as linguagens digitadas estaticamente.Além disso, o .Net Framework 4 introduz algumas novas classes para melhorar a estrutura, a organização e a comparação de dados como Covariância e Contra variância, BigInteger e Números complexos, e Tuplas.Melhorias no sistema de enumeração de arquivosNovos métodos de enumeração para melhorar o desempenho de aplicações que acessam diretórios com muitos arquivos ou precisam percorrer linhas de arquivos grandes.Memory-mapped filesO .Net Framework suporta o mapeamento de memória de arquivos. O mapeamento entre o arquivo e o espaço de memória possibilita com que a aplicações arquivos lendo e escrevendo diretamente na memória.
WCF or ASMXExistem diversas melhorias que foram adicionadas ou melhoradas no .NET 4A primeira que temos aqui é Workflow Services e o que ele basicamente faz é possibilitar com que possamos expor nossos workflows na web.Uma outra novidade no .NET 4 é a adição do suporte para WS Discovery, uma maneira padronizada de descobrir serviços na rede.ASP.NET Rounting – o que mostramos de melhoria para ASP.NET pode também ser utilizada para web services. Podemos controlar a URLDiversas novas funcionalidades foram adicionadas para suportar Restful WCF Services.WCF RIA Services – Que possibilita a criação de serviços para aplicações SilverlightWCF Data Services que foi introduzido no SP1 do 3.5 e chamava ADO.NET Data Services. O que WCF Data Services nos dá é uma maneira simples de implementar apirestful em um dataset, seja essa dataset um grupo de objetos que você tem na memória ou um banco de dados que você quer expor através do EF por exemplo. WCF DS deixa a gente expor data de uma maneira restful, de uma maneira que a gente possa interagir com a URL fazendo queries por exemplo, controlar através de server drivenpages, podemos por exemplos extrair contagem de linhas e fazer streaming de fontes binárias.Então tudo isso junto está agrupado em uma especificação aberta que chamamos de Odata – Open Data Protocol – com isso outras empresas podem consumir e expor dados através desse protocolo e interagir com a plataforma .NET. No nosso lado com WCF Data Services e do lado deles com qualquer que seja a biblioteca existente.