Evolução do .NET Framework e do Visual Basic

Post on 19-Jun-2015

1.984 views 0 download

Transcript of Evolução do .NET Framework e do Visual Basic

.NET Framework e a evolução do Visual Basic

Ricardo Guerra Freitas

http://about.me/ricardoguerra

@ricardoguerra

Quem sou eu?− Meu nome é Ricardo Guerra Freitas, mas

pode 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 Partner Lead− Ex-Coordenador Regional da INETA Brasil− Ex-Microsoft Student Partner Mentor− Ex-Colaborador do Channel 8− Ex-Responsável pelo SDK do

Projeto Hoshimi em Português− Ex-Moderador do MSDN Wiki Brasil− Ex-Sei lá mais o que...

Quem sou eu?− Analista de Processos na ME DIGITAL− MVP

Visual Basic− Microsoft Certified Professional − Líder de Grupo de Usuários .Net

Code4All − Colaborador de diversas Células

Acadêmicas e Grupos de Usuários, tanto no Rio de Janeiro como em todo Brasil

− Microsoft Windows Vista Official Speaker− Microsoft Windows 7 Official Beta Tester− Desde 1994 no Mercado de TI

Programador, Analista e Gerente− Palestrante Oficial Microsoft

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

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”

INTRODUÇÃO A PLATAFORMA .NET

Evolução Tecnológica

− Aumento do Poder de Processamento−Dobra a cada 18 meses

− Diminuição dos Custos de Hardware−Escala−Distribuição−Crédito facilitado

Evolução Tecnológica

− Internet e Conectividade− Internet Rápida− Redução de Custos− Conexões Wireless− Novos Dispositivos

Evolução Tecnológica

− Proliferação de novos dispositivos−Smart Devices−SPOT (Smart Personal Objects

Technology )−Handhelds−PDAs−Video Games−Smartphones−TV Digital

Evolução Tecnológica

− Padrões− Padrões abertos para troca de

informações− Conectividade− Segurança− Transações− Apresentação

??

?

?

Evolução Tecnológica

Stevenv
Put in a Palm device, iMac, Motorola flip phone (remove Stinger)

PLATAFORMA .NET

Plataforma .NET

Developer Tools

Clients

User Experienc

es

ASP.NET Web Applications

XML Web Services

Databases

.NET Framework

Onde posso usar o .NET Framework 4?

Um pouco de história

.Net 1.0

CLR 1.0

2002

.Net 1.1

CLR 1.1

2003

.Net 2.0

CLR 2.0

2005-08

.Net 4

CLR 4

2010

.Net 3.0

.Net 3.5

SP 1

Versões do framework

231 MB 48.1 MB.NET Framework 3.5 SP1 .NET Framework 4

COMO FUNCIONA UMA MAQUINA VIRTUAL

Como Funciona uma Máquina Virtual

Hardware (Processador, Memória, Placa de Vídeo, etc...)

Sistema Operacional

Programa Programa Máquina Virtual

Programa Programa

ENTENDENDO O .NET FRAMEWORK

Caracteristicas

Caracteristicas

Caracteristicas

O .NET Framework

Common Language Runtime (CLR)

Base Class Libraries (BCL)

Common Type System (CTS)

JIT & NGEN

Garbage Collector

Security Model

Exception Handling

Loader & Binder

Common Language Specification (CLS)

O .NET Framework

Common Language Runtime (CLR)

Base Class Libraries (BCL)

Common Type System (CTS)

JIT & NGEN

Garbage Collector

Security Model

Exception Handling

Loader & Binder

Common Language Specification (CLS)

− Common Language Runtime:− É 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 (managed code).

.NET Framework - CLR

O .NET Framework

Common Language Runtime (CLR)

Base Class Libraries (BCL)

Common Type System (CTS)

JIT & NGEN

Garbage Collector

Security Model

Exception Handling

Loader & Binder

Common Language Specification (CLS)

− 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 Language Runtime.

− 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.

.NET Framework - BCL

O .NET Framework

Common Language Runtime (CLR)

Base Class Libraries (BCL)

Common Type System (CTS)

JIT & NGEN

Garbage Collector

Security Model

Exception Handling

Loader & Binder

Common Language Specification (CLS)

− Um dos fatores de independência de linguagem:− O .NET Framework introduz um sistema

de tipos comuns (Common Type System).

.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 runtime para 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.

.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

.NET Framework - CTS

O .NET Framework

Common Language Runtime (CLR)

Base Class Libraries (BCL)

Common Type System (CTS)

JIT & NGEN

Garbage Collector

Security Model

Exception Handling

Loader & Binder

Common Language Specification (CLS)

− O CLS (Common Language Specification) é 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

.NET Framework - CLS

http://en.wikipedia.org/wiki/Common_Language_Infrastructure

PLATAFORMAS ALÉM DO WINDOWS

Projeto Mono

http://www.mono-project.com/Supported_Platforms

Outras linguagens

− http://www.dotnetpowered.com/languages.aspx

MODELO DE EXECUÇÃO

Common Language Runtime

VBCódigo Fonte

C++C#

Serviços do Sistema Operacional

Código Nativo

Código Gerenciado

Modelo de Execução

Componente Não-Gerenciado

Compilador JIT

Compilador CompiladorCompilador

Executável (.EXE), Página (.ASPX), LocalService (.DLL) ou WebService (.ASMX)

HISTÓRICO DO VISUAL BASIC

Timeline

1991 – VB 1.0 – Desenvolvimento para plataforma windows

1992 – VB 2.01993 – VB 3.01996 – VB 4.01997 – VB 5.01998 – VB 6.0

2002 – VB 7.0 – VS2002 – Poder do .NET e simplicidade do VB

2003 – VB 7.1 – VS20032005 – VB 8.0 – VS20052008 – VB 9.0 – VS2008

2010 – VB 10.0 – VS2010

Histórico

DEMO

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

Linguagens VB e C# 2010Funcionalidades VB C#

Auto-implemented Properties

Collection Initializers

Array Literals

Statement Lambdas

Implicit Line Continuation N/A

Named/Optional Parameters

Latebinding support (dynamic)

Omit ref em chamadas COM

Indexed Properties

Interop com Linguagens Dinamicas

Co/contravariance

PIA deployment not neededNovo no VS 2010Existentes no VS 2008

Recursos da IDE VB & C# 2010Feature VB C#

Generate From Usage: Generate Method

Type colorization

Background Squiggles: Top Level Analysis

IntelliSense: Builder UI

IntelliSense: Prefix Filtering Completion List

Generate From Usage: Generate Type, Constructor, Property, Field

IntelliSense: Consume First Mode

IntelliSense: Substring & Camel-Case Match

Navigate To

Highlight References

Call Hierarchy Novo no VS 2010Existentes no VS 2008

NOVIDADES DO VISUAL BASIC E VISUAL STUDIO 2010

Os alvos do Visual Studio…

Audiência

Funcionalidades

Mínimo

Completo

Hobby Empresarial

Professional

Ultimate

Express

Premium

Visual Studio

Funcionalidades Básicas

Visual Studio 2010Professional

Novo Editor WPF

IDE Customizável

Ferramentas para Silverlight

Desenvolvimento Multi-Core

Desenvolvimento para a Nuvem

DesenvolvimentoWeb

DesenvolvimentoWindows

Desenvolvimento Office

Desenvolvimento SharePoint

Novo Look & FeelWeb Deploy

web.config Transformation

Call Hierarchy

Inline Call Tree

Highlight de Referências

Document Map Margin

Test Runner Extensível

Editor WPF

Ferramentas para Sharepoint

Intellisense para JQuery

HTML Snippets

Debugging Histórico

Concurrency Profiler

Janela Parallel Tasks

Janela Parallel Stacks

Quick Search

Multi-Monitor Melhorado

Ferramentas para ASP.NET MVC

Dynamic Data Tooling

Melhorias no Click-Once para o Office

64-bit Mixed-Mode

Minidump Debugging

Agrupamento de breakpoints

Nomes para Breakpoints

Import / Export de Breakpoints

Melhorias nas ferramentas de WPF

Novas funcionalidades, a ponta do iceberg…

http://brad_abrams.members.winisp.net/Projects/PDC2008/DotNet4Poster/DotNetFramework4PosterDeepZoom.htm

As duas faces do Visual Studio 2010

Visual Studio como Editor

Visual Studio como Plataforma

… Como Editor

Melhorias focadas em…

Escrever código,Entender código,

Navegar pelo código,Publicar código

… 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

Interface em português

− Baixe o pacote da atualização para pt-br e tenha um ambiente totalmente em português!

DEMO

CONCLUSÃO

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

WEBGRAFIA

Webgrafia

− http://about.me/ricardoguerra− http://www.slideshare.net/GuerraRJ− http://code4all.ning.com− http://unemployedunderscores.com/ − http://msdn.microsoft.com/vbasic− http://channel9.msdn.com/tags/

Visual+Basic/− www.macoratti.net

MENSAGEM FINAL

Obrigado

Seu potencial. Nossa inspiração.MR

Ricardo Guerra Freitas

http://about.me/ricardoguerra