Ricardo Guerra Freitas apresenta sobre a evolução do Visual Basic e da plataforma .NET. Ele discute o histórico do Visual Basic, as novidades do VB e VS 2010, e faz uma demonstração das novas funcionalidades. O documento resume as principais características da plataforma .NET, como o Common Language Runtime e a Base Class Library, e explica como o Visual Basic e C# evoluíram para trabalhar em conjunto de forma mais integrada.
1. Ricardo Guerra Freitas http://about.me/ricardoguerra @ricardoguerra .NET Framework e a evolução do Visual Basic
2. Quem sou eu? Meunome é Ricardo Guerra Freitas, maspode me chamar de “Guerra” Ex-Curioso de .NET Ex-Lider de Célula Acadêmica Ex-Primeiro Estudante Embaixador Microsoft do RJ Ex-Microsoft Student PartnerLead Ex-CoordenadorRegional da INETA Brasil Ex-MicrosoftStudentPartnerMentor Ex-Colaborador do Channel 8 Ex-Responsável pelo SDK do Projeto Hoshimi em Português Ex-Moderadordo MSDN Wiki Brasil Ex-Sei lá mais o que...
3. Quem sou eu? Analista de Processosna ME DIGITAL MVP Visual Basic Microsoft Certified Professional Líder de Grupo de Usuários.NetCode4All Colaborador de diversasCélulasAcadêmicas e Grupos de Usuários, tanto no Rio de Janeiro comoemtodoBrasil Microsoft Windows Vista Official Speaker Microsoft Windows 7 Official Beta Tester Desde 1994 no Mercado de TIProgramador, Analista e Gerente PalestranteOficial Microsoft
4. Agenda Missão da Microsoft Introdução a plataforma .NET Histórico do Visual Basic Novidades do VB e VS 2010 DEMO Conclusão Webgrafia
5.
6. Missão da Microsoft “Ajudar pessoas a realizar seu potencial máximo, através do uso de software de alta qualidade, em qualquer lugar, a qualquer momento e em qualquer dispositivo”
10. Evolução Tecnológica Proliferação de novosdispositivos Smart Devices SPOT (Smart Personal Objects Technology ) Handhelds PDAs Video Games Smartphones TV Digital
11. Evolução Tecnológica Padrões Padrões abertos para troca de informações Conectividade Segurança Transações Apresentação
19. Como Funciona uma Máquina Virtual Programa Programa Programa Máquina Virtual Programa Sistema Operacional Hardware (Processador, Memória, Placa de Vídeo, etc...)
24. O .NET Framework Common LanguageSpecification (CLS) Common Type System (CTS) Base ClassLibraries (BCL) Common LanguageRuntime (CLR) JIT & NGEN Garbage Collector Security Model Exception Handling Loader & Binder
25. O .NET Framework Common LanguageSpecification (CLS) Common Type System (CTS) Base ClassLibraries (BCL) Common LanguageRuntime (CLR) JIT & NGEN Garbage Collector Security Model Exception Handling Loader & Binder
26. .NET Framework - CLR Common LanguageRuntime: É a fundação do .Net Framework, é o gerenciador do código em tempo de execução. Fornece serviços básicos de gerenciamento de memória, remoting etc. Código gerado é denomiado código gerenciado (managedcode).
27. O .NET Framework Common LanguageSpecification (CLS) Common Type System (CTS) Base ClassLibraries (BCL) Common LanguageRuntime (CLR) JIT & NGEN Garbage Collector Security Model Exception Handling Loader & Binder
28. .NET Framework - BCL Base Class Library (BCL) A Biblioteca de classes do .NET Framework é uma coleção de tipos reutilizáveis que se integram rigidamente com o Common LanguageRuntime. A biblioteca de classes é orientada a objetos, fornecendo tipos que seu próprio código gerenciado pode derivar. Isso não só torna os tipos do .NET Framework fáceis de usar, como também reduz o tempo associado ao aprendizado de novos recursos do .NET Framework. Além disso, componentes de terceiros podem se integrar totalmente com classes do .NET Framework.
29. O .NET Framework Common LanguageSpecification (CLS) Common Type System (CTS) Base ClassLibraries (BCL) Common LanguageRuntime (CLR) JIT & NGEN Garbage Collector Security Model Exception Handling Loader & Binder
30. .NET Framework - CTS Um dos fatores de independência de linguagem: O.NET Framework introduz um sistema de tipos comuns (Common TypeSystem).
31. .NET Framework - CTS O CTS define como os tipos são declarados, usados e gerenciados no CLR e também é uma parte importante do suporte do runtimepara a integração entre as linguagens. O CTS executa as seguintes funções: Estabelece uma estrutura que ajuda a habilitar integração de entre linguagens, segurança de tipos e execução de código de alto desempenho. Fornece um modelo orientado a objetos que oferece suporte à implementação completa de muitas linguagens de programação.
32. .NET Framework - CTS Define regras que as linguagens devem seguir, que ajudam a assegurar que objetos escritos em linguagens diferentes podem interagir entre si. Fornece uma biblioteca de tipos de dados primitivos (sistema autônomo, por exemplo, Boolean, Byte, Char, Int32, e Int64) usado no desenvolvimento de aplicativo
33. O .NET Framework Common LanguageSpecification (CLS) Common Type System (CTS) Base ClassLibraries (BCL) Common LanguageRuntime (CLR) JIT & NGEN Garbage Collector Security Model Exception Handling Loader & Binder
34. .NET Framework - CLS O CLS (Common LanguageSpecification) é um conjunto de recursos básicos de linguagens necessários para muitos aplicativos. O CLS ajuda a aperfeiçoar e a garantir a interoperabilidade de linguagem definindo um conjunto de recursos nos quais os desenvolvedores podem confiar por estarem disponíveis em uma variedade de linguagens. É aberto, você pode criar sua propria linguagem http://en.wikipedia.org/wiki/Common_Language_Infrastructure
39. Código Fonte ComponenteNão-Gerenciado VB C++ C# Compilador Compilador Compilador Código Gerenciado Executável (.EXE), Página (.ASPX), LocalService (.DLL) ou WebService (.ASMX) Common Language Runtime Compilador JIT Código Nativo Serviços do Sistema Operacional Modelo de Execução
46. Co-evolução Time do C# e VB agora são 1 só Novas funcionalidades presente nas 2 linguagens Funcionalidades de uma linguagem migrada para outra Permanência das características de cada linguagem
47. Linguagens VB e C# 2010 Novo no VS 2010 Existentes no VS 2008
48. Recursos da IDE VB & C# 2010 Novo no VS 2010 Existentes no VS 2008
50. Experiência de Usuário de Última Geração Ciclo de Vida da Aplicação Web Services Aplicações Distribuídas Windows Cliente/Servidor
51. Os alvos do Visual Studio… Completo Ultimate Premium Funcionalidades Professional Express Mínimo Hobby Empresarial Audiência
52. Visual Studio Desenvolvimento Office Desenvolvimento Windows ISV Desenvolvimento Web Desenvolvimentoemequipe Hobistas
53. Funcionalidades Básicas Visual Studio 2010 Professional Desenvolvimento Web Ferramentaspara Silverlight Desenvolvimento Windows IDE Customizável Desenvolvimento Office Novo Editor WPF Desenvolvimento SharePoint Desenvolvimento para a Nuvem Desenvolvimento Multi-Core
54. Novas funcionalidades, a ponta do iceberg… Agrupamento de breakpoints Janela Parallel Tasks Web Deploy Novo Look & Feel Test Runner Extensível Dynamic Data Tooling Highlight de Referências Editor WPF Nomes para Breakpoints Melhorias no Click-Once para o Office Call Hierarchy Ferramentas para Sharepoint Melhorias nas ferramentas de WPF Ferramentas para ASP.NET MVC Minidump Debugging Inline Call Tree Multi-Monitor Melhorado Concurrency Profiler Intellisense para JQuery Import / Export de Breakpoints Quick Search 64-bit Mixed-Mode Document Map Margin web.config Transformation Janela Parallel Stacks HTML Snippets Debugging Histórico http://brad_abrams.members.winisp.net/Projects/PDC2008/DotNet4Poster/DotNetFramework4PosterDeepZoom.htm
55. As duas faces do Visual Studio 2010 Visual Studio como Editor Visual Studio comoPlataforma
56. … Como Editor Melhorias focadas em… Escrever código, Entender código, Navegar pelo código, Publicar código
57. … Como Editor O novo editor é extensível e permite fácil customização para uma experiência rica e robusta na edição de seus códigos Online Visual Studio Gallery Integrada diretamente no Visual Studio
58. Continuação implicita da linha Sem a necessidade de colocar underline sempre para quebrar uma linha Divirta-se http://unemployedunderscores.com/
68. Conclusão Faça mais com menos código Tenha mais produtividade Desenvolva para diversas plataformas reutilizando o conhecimento adquirido Maior interação com equipes
73. Ricardo Guerra Freitas http://about.me/ricardoguerra Obrigado Seu potencial. Nossa inspiração.MR
Notas del editor
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.
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
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
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
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
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
MESSAGING:There are many different audiences that the various SKUs of Visual Studio targets: from the hobbyist all the way up to large enterprises.
MESSAGING:This breaks down into a lot of individual features that are coming to Visual Studio 2010Targets a diverse set of audiencesFrom TDD developers (Generate from Usage / Consume-First-Declare-Later friendliness)To Sharepointdevs (new Sharepoint tooling)To web devs (Jquery support, integrated web deploy)Parallelism/Concurrency features (like Parallel Stacks/Parallel Tasks as well as Concurrency Profiling)Just the tip of the iceberg
MESSAGING:The primary way developers use Visual Studio is, of course, as an editor. There are many improvements coming to developers that use Visual Studio as a code editor (as we’ll see). However, there’s another use of Visual Studio that people don’t usually think of, and that is using Visual Studio as a platform itself. With the new extensibility points in the editor itself, there are many ways developers can extend their editing experience itself as well the existing VSIP capabilities of Visual Studio. There are several features coming that will help developers manage the Visual Studio Platform as well.