SlideShare une entreprise Scribd logo
1  sur  25
http://netponto.org 1ª Reunião Presencial PORTO - 27/03/2010 Novidades do .NET Framework 4.0 para o C#Caio Proiete
Caio Proiete 9 anos de experiência profissional em TI Há 3 anos em Portugal Microsoft Most Valuable Professional 2009-2010 Microsoft Certified Trainer desde 2004 http://caioproiete.com
Agenda Evolução do .NET Framework Novidades do C# Programação Dinámica com C# Melhorias no COM Interop Questões (Q & A)
Evolução do C# C# 4.0 Dynamic C# 3.0 LINQ C# 2.0 Generics C# 1.0/1.1 Managed Code
Evolução do .NET Framework CLR = Common Language Runtime SP1 3.5 3.0 .NET 1.0 .NET 1.1 .NET 2.0 .NET 4.0 2002 2003 2008 CTP 2005-08 CLR 1.0 CLR 1.1 CLR 2.0 CLR 4.0
.NET Framework 1.0 até 3.5 LinguagensEstáticas VB C# Common Language Runtime
.NET Framework 4.0 LinguagensDinámicas Ruby Python LinguagensEstáticas VB Dynamic Language Runtime C# Common Language Runtime
Ferramenta: Visual Studio 2010 Actualmente na versão Release Candidate (RC) Download gratuito:http://bit.ly/vs2010rc Versão final (RTM) será lançadaem 12 de Abril de 2010
Novidades do C# - Parte 1/2 Argumentos Opcionais Permite omitir argumentos ao chamar métodos, assumindo um valor padrão Argumentos Nomeados Permite informar o nome dos argumentos ao chamar métodos
ArgumentosOpcionaiseArgumentosNomeados demonstração Código-fontedisponívelpara download: http://netponto.codeplex.com/releases/view/42778#DownloadId=113396
Novidades do C# - Parte 2/2 Novidade para Generics! Covariance Permite conversões do tipo mais específico para o tipo mais genérico (Ex: Classe Derivada => Classe Base) Contravariance Permite conversões do tipo mais genérico para o tipo mais específico (Ex: Classe Base => Classe Derivada)
Covariance / Contravariance demonstração Código-fontedisponívelpara download: http://netponto.codeplex.com/releases/view/42778#DownloadId=113396
Programação Dinámica no .NET IronPython IronRuby C# VB.NET Outras… Dynamic Language Runtime Expression Trees Dynamic Dispatch Call Site Caching PythonBinder RubyBinder COMBinder JScriptBinder ObjectBinder
Programação Dinámica no C# Novo tipo dynamic Resolução dinámica de métodos, propriedades, e eventos (em tempo de execução) Não efectua validação estática
Dynamic demonstração Código-fontedisponívelpara download: http://netponto.codeplex.com/releases/view/42778#DownloadId=113396
Programação Dinámica no C# Nova classe ExpandoObject Permite criar objectos dinámicos em tempo de execução Implementa a interface IDynamicMetaObjectProvider
ExpandoObject demonstração Código-fontedisponívelpara download: http://netponto.codeplex.com/releases/view/42778#DownloadId=113396
Programação Dinámica no C# Nova classe DynamicObject Facilita a criação de classes dinámicas (utilizada como classe base) Também implementa a interface IDynamicMetaObjectProvider
DynamicObject demonstração Código-fontedisponívelpara download: http://netponto.codeplex.com/releases/view/42778#DownloadId=113396
Melhorias no COM Interop Agora é Opcional (o compilador faz por si): Utilizar a palavra-chave refna chamada de métodos Efectuar casts de Value Types para object Suporte a argumentos opcionais e nomeados Agora pode-se incluir o assembly de Interop na aplicação
Melhorias COM Interop demonstração Código-fontedisponívelpara download: http://netponto.codeplex.com/releases/view/42778#DownloadId=113396
Questões?
Referências Dynamic Language Runtime Overview http://msdn.microsoft.com/en-us/library/dd233052(VS.100).aspx Covariance and ContravarianceFAQ http://blogs.msdn.com/csharpfaq/archive/2010/02/16/covariance-and-contravariance-faq.aspx Dynamic in C# 4.0: Creating Wrappers with DynamicObject http://blogs.msdn.com/csharpfaq/archive/2009/10/19/dynamic-in-c-4-0-creating-wrappers-with-dynamicobject.aspx
Download Download do código-fonte das demonstraçõesdestaapresentação: http://netponto.codeplex.com/releases/view/42778#DownloadId=113396
Patrocinadores desta reunião

Contenu connexe

Tendances

php4android: desenvolva aplicações android em PHP
php4android: desenvolva aplicações android em PHPphp4android: desenvolva aplicações android em PHP
php4android: desenvolva aplicações android em PHPRamon Ribeiro Rabello
 
As escolhas do desenvolvedor
As escolhas do desenvolvedorAs escolhas do desenvolvedor
As escolhas do desenvolvedorWillian Molinari
 
TDC2018SP | Trilha Arq .Net - Performance e feature
TDC2018SP | Trilha Arq .Net - Performance e featureTDC2018SP | Trilha Arq .Net - Performance e feature
TDC2018SP | Trilha Arq .Net - Performance e featuretdc-globalcode
 
TDC2018FLN | Trilha Containers - CI/CD a base de containers com Drone
TDC2018FLN | Trilha Containers - CI/CD a base de containers com DroneTDC2018FLN | Trilha Containers - CI/CD a base de containers com Drone
TDC2018FLN | Trilha Containers - CI/CD a base de containers com Dronetdc-globalcode
 
Laços de repetição - Aula 2
Laços de repetição - Aula 2Laços de repetição - Aula 2
Laços de repetição - Aula 2profjr
 
Crie sua Linguagem de Programação com XText
Crie sua Linguagem de Programação com XTextCrie sua Linguagem de Programação com XText
Crie sua Linguagem de Programação com XTextMichel Albonico
 
Desenvolvendo Rápido com Zend Framework e Eclipse
Desenvolvendo Rápido com Zend Framework e EclipseDesenvolvendo Rápido com Zend Framework e Eclipse
Desenvolvendo Rápido com Zend Framework e EclipseFlávio Lisboa
 
5 Tecnologias que todo Desenvolvedor Web deveria conhecer - Developers-BR - O...
5 Tecnologias que todo Desenvolvedor Web deveria conhecer - Developers-BR - O...5 Tecnologias que todo Desenvolvedor Web deveria conhecer - Developers-BR - O...
5 Tecnologias que todo Desenvolvedor Web deveria conhecer - Developers-BR - O...Renato Groff
 
Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...
Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...
Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...Renato Groff
 
Desenvolvimento multiplataforma em .NET Core utilizando SQL Server 2019, Dock...
Desenvolvimento multiplataforma em .NET Core utilizando SQL Server 2019, Dock...Desenvolvimento multiplataforma em .NET Core utilizando SQL Server 2019, Dock...
Desenvolvimento multiplataforma em .NET Core utilizando SQL Server 2019, Dock...Renato Groff
 
Mercado em computação
Mercado em computaçãoMercado em computação
Mercado em computaçãoFelipe Zampa
 
Microsoft Community Launch 2010: .NET Framework 4
Microsoft Community Launch 2010: .NET Framework 4Microsoft Community Launch 2010: .NET Framework 4
Microsoft Community Launch 2010: .NET Framework 4Rogério Moraes de Carvalho
 
Testes com javascript
Testes com javascriptTestes com javascript
Testes com javascriptLaís Lima
 
TDC2018SP | Trilha Kotlin - Kodando com Kotlin aplicacoes front-end.
TDC2018SP | Trilha Kotlin - Kodando com Kotlin aplicacoes front-end.TDC2018SP | Trilha Kotlin - Kodando com Kotlin aplicacoes front-end.
TDC2018SP | Trilha Kotlin - Kodando com Kotlin aplicacoes front-end.tdc-globalcode
 
Presente e Futuro do C# - Visual Studio Summit 2018
Presente e Futuro do C# - Visual Studio Summit 2018Presente e Futuro do C# - Visual Studio Summit 2018
Presente e Futuro do C# - Visual Studio Summit 2018Renato Groff
 
Conheça Visual Studio IntelliCode e Visual Studio Live Share
Conheça Visual Studio IntelliCode e Visual Studio Live ShareConheça Visual Studio IntelliCode e Visual Studio Live Share
Conheça Visual Studio IntelliCode e Visual Studio Live ShareLetticia Nicoli
 
5 Tecnologias que todo Desenvolvedor Web deveria conhecer - .NET SP - Janeiro...
5 Tecnologias que todo Desenvolvedor Web deveria conhecer - .NET SP - Janeiro...5 Tecnologias que todo Desenvolvedor Web deveria conhecer - .NET SP - Janeiro...
5 Tecnologias que todo Desenvolvedor Web deveria conhecer - .NET SP - Janeiro...Renato Groff
 
Visual Studio Summit 2016: C# 7 - Olhando para o futuro
Visual Studio Summit 2016: C# 7 - Olhando para o futuroVisual Studio Summit 2016: C# 7 - Olhando para o futuro
Visual Studio Summit 2016: C# 7 - Olhando para o futuroRogério Moraes de Carvalho
 

Tendances (20)

Produtividade net
Produtividade netProdutividade net
Produtividade net
 
php4android: desenvolva aplicações android em PHP
php4android: desenvolva aplicações android em PHPphp4android: desenvolva aplicações android em PHP
php4android: desenvolva aplicações android em PHP
 
As escolhas do desenvolvedor
As escolhas do desenvolvedorAs escolhas do desenvolvedor
As escolhas do desenvolvedor
 
TDC2018SP | Trilha Arq .Net - Performance e feature
TDC2018SP | Trilha Arq .Net - Performance e featureTDC2018SP | Trilha Arq .Net - Performance e feature
TDC2018SP | Trilha Arq .Net - Performance e feature
 
TDC2018FLN | Trilha Containers - CI/CD a base de containers com Drone
TDC2018FLN | Trilha Containers - CI/CD a base de containers com DroneTDC2018FLN | Trilha Containers - CI/CD a base de containers com Drone
TDC2018FLN | Trilha Containers - CI/CD a base de containers com Drone
 
Laços de repetição - Aula 2
Laços de repetição - Aula 2Laços de repetição - Aula 2
Laços de repetição - Aula 2
 
Crie sua Linguagem de Programação com XText
Crie sua Linguagem de Programação com XTextCrie sua Linguagem de Programação com XText
Crie sua Linguagem de Programação com XText
 
Desenvolvendo Rápido com Zend Framework e Eclipse
Desenvolvendo Rápido com Zend Framework e EclipseDesenvolvendo Rápido com Zend Framework e Eclipse
Desenvolvendo Rápido com Zend Framework e Eclipse
 
5 Tecnologias que todo Desenvolvedor Web deveria conhecer - Developers-BR - O...
5 Tecnologias que todo Desenvolvedor Web deveria conhecer - Developers-BR - O...5 Tecnologias que todo Desenvolvedor Web deveria conhecer - Developers-BR - O...
5 Tecnologias que todo Desenvolvedor Web deveria conhecer - Developers-BR - O...
 
Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...
Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...
Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...
 
As Novidades do CSharp 5.0
As Novidades do CSharp 5.0As Novidades do CSharp 5.0
As Novidades do CSharp 5.0
 
Desenvolvimento multiplataforma em .NET Core utilizando SQL Server 2019, Dock...
Desenvolvimento multiplataforma em .NET Core utilizando SQL Server 2019, Dock...Desenvolvimento multiplataforma em .NET Core utilizando SQL Server 2019, Dock...
Desenvolvimento multiplataforma em .NET Core utilizando SQL Server 2019, Dock...
 
Mercado em computação
Mercado em computaçãoMercado em computação
Mercado em computação
 
Microsoft Community Launch 2010: .NET Framework 4
Microsoft Community Launch 2010: .NET Framework 4Microsoft Community Launch 2010: .NET Framework 4
Microsoft Community Launch 2010: .NET Framework 4
 
Testes com javascript
Testes com javascriptTestes com javascript
Testes com javascript
 
TDC2018SP | Trilha Kotlin - Kodando com Kotlin aplicacoes front-end.
TDC2018SP | Trilha Kotlin - Kodando com Kotlin aplicacoes front-end.TDC2018SP | Trilha Kotlin - Kodando com Kotlin aplicacoes front-end.
TDC2018SP | Trilha Kotlin - Kodando com Kotlin aplicacoes front-end.
 
Presente e Futuro do C# - Visual Studio Summit 2018
Presente e Futuro do C# - Visual Studio Summit 2018Presente e Futuro do C# - Visual Studio Summit 2018
Presente e Futuro do C# - Visual Studio Summit 2018
 
Conheça Visual Studio IntelliCode e Visual Studio Live Share
Conheça Visual Studio IntelliCode e Visual Studio Live ShareConheça Visual Studio IntelliCode e Visual Studio Live Share
Conheça Visual Studio IntelliCode e Visual Studio Live Share
 
5 Tecnologias que todo Desenvolvedor Web deveria conhecer - .NET SP - Janeiro...
5 Tecnologias que todo Desenvolvedor Web deveria conhecer - .NET SP - Janeiro...5 Tecnologias que todo Desenvolvedor Web deveria conhecer - .NET SP - Janeiro...
5 Tecnologias que todo Desenvolvedor Web deveria conhecer - .NET SP - Janeiro...
 
Visual Studio Summit 2016: C# 7 - Olhando para o futuro
Visual Studio Summit 2016: C# 7 - Olhando para o futuroVisual Studio Summit 2016: C# 7 - Olhando para o futuro
Visual Studio Summit 2016: C# 7 - Olhando para o futuro
 

En vedette

Rembrandt E Bach
Rembrandt E BachRembrandt E Bach
Rembrandt E BachJNR
 
A Ostra E A Pérola
A  Ostra E A  PérolaA  Ostra E A  Pérola
A Ostra E A PérolaJNR
 
Sobre O Amor, Rosas E Espinhos
Sobre O Amor, Rosas E EspinhosSobre O Amor, Rosas E Espinhos
Sobre O Amor, Rosas E EspinhosJNR
 
Ferrari
FerrariFerrari
FerrariJNR
 
Primeiros Socorros
Primeiros SocorrosPrimeiros Socorros
Primeiros SocorrosJNR
 
Motorista Do Lula
Motorista Do LulaMotorista Do Lula
Motorista Do LulaJNR
 
Gratidao De Amigo
Gratidao De AmigoGratidao De Amigo
Gratidao De AmigoJNR
 
A Vida
A VidaA Vida
A VidaJNR
 
Aluna Rosa
Aluna RosaAluna Rosa
Aluna RosaJNR
 
Saudades E LembrançAs
Saudades E LembrançAsSaudades E LembrançAs
Saudades E LembrançAsJNR
 
ComparaçõEs
ComparaçõEsComparaçõEs
ComparaçõEsJNR
 
Planejamento de Mídia II - Meninas Cariocas
Planejamento de Mídia II - Meninas CariocasPlanejamento de Mídia II - Meninas Cariocas
Planejamento de Mídia II - Meninas CariocasBárbara David
 
Clipping do Varejo - 2010/Março 1
Clipping do Varejo - 2010/Março 1Clipping do Varejo - 2010/Março 1
Clipping do Varejo - 2010/Março 1Ricardo Pastore
 
O Idiota
O IdiotaO Idiota
O IdiotaJNR
 
Promessas
PromessasPromessas
PromessasJNR
 

En vedette (20)

Web 2.0
Web 2.0Web 2.0
Web 2.0
 
5ª Reunião
5ª Reunião5ª Reunião
5ª Reunião
 
Rembrandt E Bach
Rembrandt E BachRembrandt E Bach
Rembrandt E Bach
 
A Ostra E A Pérola
A  Ostra E A  PérolaA  Ostra E A  Pérola
A Ostra E A Pérola
 
Sobre O Amor, Rosas E Espinhos
Sobre O Amor, Rosas E EspinhosSobre O Amor, Rosas E Espinhos
Sobre O Amor, Rosas E Espinhos
 
Ferrari
FerrariFerrari
Ferrari
 
Primeiros Socorros
Primeiros SocorrosPrimeiros Socorros
Primeiros Socorros
 
PED - (issn 1983 7593) - Ano 20 Nº 09 (2011)
PED - (issn 1983 7593) - Ano 20 Nº 09 (2011)PED - (issn 1983 7593) - Ano 20 Nº 09 (2011)
PED - (issn 1983 7593) - Ano 20 Nº 09 (2011)
 
Motorista Do Lula
Motorista Do LulaMotorista Do Lula
Motorista Do Lula
 
Gratidao De Amigo
Gratidao De AmigoGratidao De Amigo
Gratidao De Amigo
 
A Vida
A VidaA Vida
A Vida
 
Aluna Rosa
Aluna RosaAluna Rosa
Aluna Rosa
 
Saudades E LembrançAs
Saudades E LembrançAsSaudades E LembrançAs
Saudades E LembrançAs
 
ComparaçõEs
ComparaçõEsComparaçõEs
ComparaçõEs
 
Planejamento de Mídia II - Meninas Cariocas
Planejamento de Mídia II - Meninas CariocasPlanejamento de Mídia II - Meninas Cariocas
Planejamento de Mídia II - Meninas Cariocas
 
Clipping do Varejo - 2010/Março 1
Clipping do Varejo - 2010/Março 1Clipping do Varejo - 2010/Março 1
Clipping do Varejo - 2010/Março 1
 
O Idiota
O IdiotaO Idiota
O Idiota
 
Promessas
PromessasPromessas
Promessas
 
Danzas
DanzasDanzas
Danzas
 
SEMINARIO 1
SEMINARIO 1SEMINARIO 1
SEMINARIO 1
 

Similaire à Novidades C# 4.0 e .NET Framework 4.0

Visual Studio 2010 e C# 4
Visual Studio 2010 e C# 4Visual Studio 2010 e C# 4
Visual Studio 2010 e C# 4CDS
 
Evolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual BasicEvolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual BasicRicardo Guerra Freitas
 
ASP.NET e Visual Studio 2010
ASP.NET e Visual Studio 2010ASP.NET e Visual Studio 2010
ASP.NET e Visual Studio 2010Norton Guimarães
 
ASP.NET Core, .NET Core e EF Core: multiplataforma e otimizados para a nuvem
ASP.NET Core, .NET Core e EF Core: multiplataforma e otimizados para a nuvemASP.NET Core, .NET Core e EF Core: multiplataforma e otimizados para a nuvem
ASP.NET Core, .NET Core e EF Core: multiplataforma e otimizados para a nuvemRogério Moraes de Carvalho
 
Conhecendo a Plataforma .NET
Conhecendo a Plataforma .NETConhecendo a Plataforma .NET
Conhecendo a Plataforma .NETPedro Alves Jr.
 
RedGate .NET Reflector no dia-a-dia de um programador
RedGate .NET Reflector no dia-a-dia de um programadorRedGate .NET Reflector no dia-a-dia de um programador
RedGate .NET Reflector no dia-a-dia de um programadorComunidade NetPonto
 
A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...
A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...
A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...Rogério Moraes de Carvalho
 
DotNet Framework e Orientação a Objetos 1 - Introdução
DotNet Framework e Orientação a Objetos 1 - IntroduçãoDotNet Framework e Orientação a Objetos 1 - Introdução
DotNet Framework e Orientação a Objetos 1 - IntroduçãoLorival Smolski Chapuis
 
Dev401 novos recursos do microsoft visual basic 2010
Dev401 novos recursos do microsoft visual basic 2010Dev401 novos recursos do microsoft visual basic 2010
Dev401 novos recursos do microsoft visual basic 2010Alexandre Tarifa
 
Docker para Desenvolvedores - Developers-BR - Julho-2018
Docker para Desenvolvedores - Developers-BR - Julho-2018Docker para Desenvolvedores - Developers-BR - Julho-2018
Docker para Desenvolvedores - Developers-BR - Julho-2018Renato Groff
 
10 dicas úteis para simplificar o desenvolvimento em ASP.NET Core - ASP.NET C...
10 dicas úteis para simplificar o desenvolvimento em ASP.NET Core - ASP.NET C...10 dicas úteis para simplificar o desenvolvimento em ASP.NET Core - ASP.NET C...
10 dicas úteis para simplificar o desenvolvimento em ASP.NET Core - ASP.NET C...Renato Groff
 
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...Renato Groff
 
Docker para Desenvolvedores - Developers-BR - Agosto-2018
Docker para Desenvolvedores - Developers-BR - Agosto-2018Docker para Desenvolvedores - Developers-BR - Agosto-2018
Docker para Desenvolvedores - Developers-BR - Agosto-2018Renato Groff
 
Explorando o novo .NET multiplataforma: ASP.NET Core, .NET Core e EF Core
Explorando o novo .NET multiplataforma:ASP.NET Core, .NET Core e EF CoreExplorando o novo .NET multiplataforma:ASP.NET Core, .NET Core e EF Core
Explorando o novo .NET multiplataforma: ASP.NET Core, .NET Core e EF CoreRogério Moraes de Carvalho
 

Similaire à Novidades C# 4.0 e .NET Framework 4.0 (20)

Visual Studio 2010 e C# 4
Visual Studio 2010 e C# 4Visual Studio 2010 e C# 4
Visual Studio 2010 e C# 4
 
Evolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual BasicEvolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual Basic
 
ASP.NET e Visual Studio 2010
ASP.NET e Visual Studio 2010ASP.NET e Visual Studio 2010
ASP.NET e Visual Studio 2010
 
ASP.NET Core, .NET Core e EF Core: multiplataforma e otimizados para a nuvem
ASP.NET Core, .NET Core e EF Core: multiplataforma e otimizados para a nuvemASP.NET Core, .NET Core e EF Core: multiplataforma e otimizados para a nuvem
ASP.NET Core, .NET Core e EF Core: multiplataforma e otimizados para a nuvem
 
Conhecendo a Plataforma .NET
Conhecendo a Plataforma .NETConhecendo a Plataforma .NET
Conhecendo a Plataforma .NET
 
Dynamic Types no C# 4.0
Dynamic Types no C# 4.0Dynamic Types no C# 4.0
Dynamic Types no C# 4.0
 
RedGate .NET Reflector no dia-a-dia de um programador
RedGate .NET Reflector no dia-a-dia de um programadorRedGate .NET Reflector no dia-a-dia de um programador
RedGate .NET Reflector no dia-a-dia de um programador
 
Novidades do .Net 4.0
Novidades do .Net 4.0Novidades do .Net 4.0
Novidades do .Net 4.0
 
A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...
A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...
A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...
 
Cebraspe 2016: .NET Core e ASP.NET Core
Cebraspe 2016: .NET Core e ASP.NET CoreCebraspe 2016: .NET Core e ASP.NET Core
Cebraspe 2016: .NET Core e ASP.NET Core
 
DotNet Remoting - .NET framework
DotNet Remoting - .NET frameworkDotNet Remoting - .NET framework
DotNet Remoting - .NET framework
 
DotNet Framework e Orientação a Objetos 1 - Introdução
DotNet Framework e Orientação a Objetos 1 - IntroduçãoDotNet Framework e Orientação a Objetos 1 - Introdução
DotNet Framework e Orientação a Objetos 1 - Introdução
 
Dev401 novos recursos do microsoft visual basic 2010
Dev401 novos recursos do microsoft visual basic 2010Dev401 novos recursos do microsoft visual basic 2010
Dev401 novos recursos do microsoft visual basic 2010
 
Meetup fujitsu
Meetup fujitsuMeetup fujitsu
Meetup fujitsu
 
Docker para Desenvolvedores - Developers-BR - Julho-2018
Docker para Desenvolvedores - Developers-BR - Julho-2018Docker para Desenvolvedores - Developers-BR - Julho-2018
Docker para Desenvolvedores - Developers-BR - Julho-2018
 
Novidades do .NET 3.5
Novidades do .NET 3.5Novidades do .NET 3.5
Novidades do .NET 3.5
 
10 dicas úteis para simplificar o desenvolvimento em ASP.NET Core - ASP.NET C...
10 dicas úteis para simplificar o desenvolvimento em ASP.NET Core - ASP.NET C...10 dicas úteis para simplificar o desenvolvimento em ASP.NET Core - ASP.NET C...
10 dicas úteis para simplificar o desenvolvimento em ASP.NET Core - ASP.NET C...
 
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...
 
Docker para Desenvolvedores - Developers-BR - Agosto-2018
Docker para Desenvolvedores - Developers-BR - Agosto-2018Docker para Desenvolvedores - Developers-BR - Agosto-2018
Docker para Desenvolvedores - Developers-BR - Agosto-2018
 
Explorando o novo .NET multiplataforma: ASP.NET Core, .NET Core e EF Core
Explorando o novo .NET multiplataforma:ASP.NET Core, .NET Core e EF CoreExplorando o novo .NET multiplataforma:ASP.NET Core, .NET Core e EF Core
Explorando o novo .NET multiplataforma: ASP.NET Core, .NET Core e EF Core
 

Plus de Comunidade NetPonto

Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...
Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...
Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...Comunidade NetPonto
 
Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...
Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...
Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...Comunidade NetPonto
 
MVVM Light e Cimbalino Toolkits - Sara Silva
MVVM Light e Cimbalino Toolkits - Sara SilvaMVVM Light e Cimbalino Toolkits - Sara Silva
MVVM Light e Cimbalino Toolkits - Sara SilvaComunidade NetPonto
 
Deep dive into Windows Azure Mobile Services - Ricardo Costa
Deep dive into Windows Azure Mobile Services - Ricardo CostaDeep dive into Windows Azure Mobile Services - Ricardo Costa
Deep dive into Windows Azure Mobile Services - Ricardo CostaComunidade NetPonto
 
The power of templating.... with NVelocity - Nuno Cancelo
The power of templating.... with NVelocity - Nuno CanceloThe power of templating.... with NVelocity - Nuno Cancelo
The power of templating.... with NVelocity - Nuno CanceloComunidade NetPonto
 
ASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis PaulinoASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis PaulinoComunidade NetPonto
 
NoSQL em Windows Azure Table Storage - Vitor Tomaz
NoSQL em Windows Azure Table Storage - Vitor TomazNoSQL em Windows Azure Table Storage - Vitor Tomaz
NoSQL em Windows Azure Table Storage - Vitor TomazComunidade NetPonto
 
De Zero a Produção - João Jesus
De Zero a Produção - João JesusDe Zero a Produção - João Jesus
De Zero a Produção - João JesusComunidade NetPonto
 
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone AppsComo deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone AppsComunidade NetPonto
 
Case studies about Layout & View States & Scale in Windows 8 Store Apps
Case studies about Layout & View States & Scale in Windows 8 Store AppsCase studies about Layout & View States & Scale in Windows 8 Store Apps
Case studies about Layout & View States & Scale in Windows 8 Store AppsComunidade NetPonto
 
Aspect-oriented Programming (AOP) com PostSharp
Aspect-oriented Programming (AOP) com PostSharpAspect-oriented Programming (AOP) com PostSharp
Aspect-oriented Programming (AOP) com PostSharpComunidade NetPonto
 
Utilização de Mock Objects em Testes Unitários
Utilização de Mock Objects em Testes UnitáriosUtilização de Mock Objects em Testes Unitários
Utilização de Mock Objects em Testes UnitáriosComunidade NetPonto
 
Dinâmica e Motivacao de Equipas de Projecto
Dinâmica e Motivacao de Equipas de ProjectoDinâmica e Motivacao de Equipas de Projecto
Dinâmica e Motivacao de Equipas de ProjectoComunidade NetPonto
 
KnockoutJS com ASP.NET MVC3: Utilização na vida real
KnockoutJS com ASP.NET MVC3: Utilização na vida realKnockoutJS com ASP.NET MVC3: Utilização na vida real
KnockoutJS com ASP.NET MVC3: Utilização na vida realComunidade NetPonto
 
Como ser programador durante o dia e mesmo assim dormir bem à noite
Como ser programador durante o dia e mesmo assim dormir bem à noiteComo ser programador durante o dia e mesmo assim dormir bem à noite
Como ser programador durante o dia e mesmo assim dormir bem à noiteComunidade NetPonto
 
Windows 8: Desenvolvimento de Metro Style Apps - C. Augusto Proiete
Windows 8: Desenvolvimento de Metro Style Apps - C. Augusto ProieteWindows 8: Desenvolvimento de Metro Style Apps - C. Augusto Proiete
Windows 8: Desenvolvimento de Metro Style Apps - C. Augusto ProieteComunidade NetPonto
 
Uma Introdução a ASP.NET Web API
Uma Introdução a ASP.NET Web APIUma Introdução a ASP.NET Web API
Uma Introdução a ASP.NET Web APIComunidade NetPonto
 

Plus de Comunidade NetPonto (20)

Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...
Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...
Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...
 
Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...
Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...
Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...
 
MVVM Light e Cimbalino Toolkits - Sara Silva
MVVM Light e Cimbalino Toolkits - Sara SilvaMVVM Light e Cimbalino Toolkits - Sara Silva
MVVM Light e Cimbalino Toolkits - Sara Silva
 
Deep dive into Windows Azure Mobile Services - Ricardo Costa
Deep dive into Windows Azure Mobile Services - Ricardo CostaDeep dive into Windows Azure Mobile Services - Ricardo Costa
Deep dive into Windows Azure Mobile Services - Ricardo Costa
 
The power of templating.... with NVelocity - Nuno Cancelo
The power of templating.... with NVelocity - Nuno CanceloThe power of templating.... with NVelocity - Nuno Cancelo
The power of templating.... with NVelocity - Nuno Cancelo
 
ASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis PaulinoASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis Paulino
 
ASP.NET Signal R - Glauco Godoi
ASP.NET Signal R - Glauco GodoiASP.NET Signal R - Glauco Godoi
ASP.NET Signal R - Glauco Godoi
 
NoSQL em Windows Azure Table Storage - Vitor Tomaz
NoSQL em Windows Azure Table Storage - Vitor TomazNoSQL em Windows Azure Table Storage - Vitor Tomaz
NoSQL em Windows Azure Table Storage - Vitor Tomaz
 
HTML5 - Pedro Rosa
HTML5 - Pedro RosaHTML5 - Pedro Rosa
HTML5 - Pedro Rosa
 
De Zero a Produção - João Jesus
De Zero a Produção - João JesusDe Zero a Produção - João Jesus
De Zero a Produção - João Jesus
 
OData – Super Cola W3
OData – Super Cola W3OData – Super Cola W3
OData – Super Cola W3
 
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone AppsComo deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
 
Case studies about Layout & View States & Scale in Windows 8 Store Apps
Case studies about Layout & View States & Scale in Windows 8 Store AppsCase studies about Layout & View States & Scale in Windows 8 Store Apps
Case studies about Layout & View States & Scale in Windows 8 Store Apps
 
Aspect-oriented Programming (AOP) com PostSharp
Aspect-oriented Programming (AOP) com PostSharpAspect-oriented Programming (AOP) com PostSharp
Aspect-oriented Programming (AOP) com PostSharp
 
Utilização de Mock Objects em Testes Unitários
Utilização de Mock Objects em Testes UnitáriosUtilização de Mock Objects em Testes Unitários
Utilização de Mock Objects em Testes Unitários
 
Dinâmica e Motivacao de Equipas de Projecto
Dinâmica e Motivacao de Equipas de ProjectoDinâmica e Motivacao de Equipas de Projecto
Dinâmica e Motivacao de Equipas de Projecto
 
KnockoutJS com ASP.NET MVC3: Utilização na vida real
KnockoutJS com ASP.NET MVC3: Utilização na vida realKnockoutJS com ASP.NET MVC3: Utilização na vida real
KnockoutJS com ASP.NET MVC3: Utilização na vida real
 
Como ser programador durante o dia e mesmo assim dormir bem à noite
Como ser programador durante o dia e mesmo assim dormir bem à noiteComo ser programador durante o dia e mesmo assim dormir bem à noite
Como ser programador durante o dia e mesmo assim dormir bem à noite
 
Windows 8: Desenvolvimento de Metro Style Apps - C. Augusto Proiete
Windows 8: Desenvolvimento de Metro Style Apps - C. Augusto ProieteWindows 8: Desenvolvimento de Metro Style Apps - C. Augusto Proiete
Windows 8: Desenvolvimento de Metro Style Apps - C. Augusto Proiete
 
Uma Introdução a ASP.NET Web API
Uma Introdução a ASP.NET Web APIUma Introdução a ASP.NET Web API
Uma Introdução a ASP.NET Web API
 

Novidades C# 4.0 e .NET Framework 4.0

  • 1. http://netponto.org 1ª Reunião Presencial PORTO - 27/03/2010 Novidades do .NET Framework 4.0 para o C#Caio Proiete
  • 2. Caio Proiete 9 anos de experiência profissional em TI Há 3 anos em Portugal Microsoft Most Valuable Professional 2009-2010 Microsoft Certified Trainer desde 2004 http://caioproiete.com
  • 3. Agenda Evolução do .NET Framework Novidades do C# Programação Dinámica com C# Melhorias no COM Interop Questões (Q & A)
  • 4. Evolução do C# C# 4.0 Dynamic C# 3.0 LINQ C# 2.0 Generics C# 1.0/1.1 Managed Code
  • 5. Evolução do .NET Framework CLR = Common Language Runtime SP1 3.5 3.0 .NET 1.0 .NET 1.1 .NET 2.0 .NET 4.0 2002 2003 2008 CTP 2005-08 CLR 1.0 CLR 1.1 CLR 2.0 CLR 4.0
  • 6. .NET Framework 1.0 até 3.5 LinguagensEstáticas VB C# Common Language Runtime
  • 7. .NET Framework 4.0 LinguagensDinámicas Ruby Python LinguagensEstáticas VB Dynamic Language Runtime C# Common Language Runtime
  • 8. Ferramenta: Visual Studio 2010 Actualmente na versão Release Candidate (RC) Download gratuito:http://bit.ly/vs2010rc Versão final (RTM) será lançadaem 12 de Abril de 2010
  • 9. Novidades do C# - Parte 1/2 Argumentos Opcionais Permite omitir argumentos ao chamar métodos, assumindo um valor padrão Argumentos Nomeados Permite informar o nome dos argumentos ao chamar métodos
  • 10. ArgumentosOpcionaiseArgumentosNomeados demonstração Código-fontedisponívelpara download: http://netponto.codeplex.com/releases/view/42778#DownloadId=113396
  • 11. Novidades do C# - Parte 2/2 Novidade para Generics! Covariance Permite conversões do tipo mais específico para o tipo mais genérico (Ex: Classe Derivada => Classe Base) Contravariance Permite conversões do tipo mais genérico para o tipo mais específico (Ex: Classe Base => Classe Derivada)
  • 12. Covariance / Contravariance demonstração Código-fontedisponívelpara download: http://netponto.codeplex.com/releases/view/42778#DownloadId=113396
  • 13. Programação Dinámica no .NET IronPython IronRuby C# VB.NET Outras… Dynamic Language Runtime Expression Trees Dynamic Dispatch Call Site Caching PythonBinder RubyBinder COMBinder JScriptBinder ObjectBinder
  • 14. Programação Dinámica no C# Novo tipo dynamic Resolução dinámica de métodos, propriedades, e eventos (em tempo de execução) Não efectua validação estática
  • 15. Dynamic demonstração Código-fontedisponívelpara download: http://netponto.codeplex.com/releases/view/42778#DownloadId=113396
  • 16. Programação Dinámica no C# Nova classe ExpandoObject Permite criar objectos dinámicos em tempo de execução Implementa a interface IDynamicMetaObjectProvider
  • 17. ExpandoObject demonstração Código-fontedisponívelpara download: http://netponto.codeplex.com/releases/view/42778#DownloadId=113396
  • 18. Programação Dinámica no C# Nova classe DynamicObject Facilita a criação de classes dinámicas (utilizada como classe base) Também implementa a interface IDynamicMetaObjectProvider
  • 19. DynamicObject demonstração Código-fontedisponívelpara download: http://netponto.codeplex.com/releases/view/42778#DownloadId=113396
  • 20. Melhorias no COM Interop Agora é Opcional (o compilador faz por si): Utilizar a palavra-chave refna chamada de métodos Efectuar casts de Value Types para object Suporte a argumentos opcionais e nomeados Agora pode-se incluir o assembly de Interop na aplicação
  • 21. Melhorias COM Interop demonstração Código-fontedisponívelpara download: http://netponto.codeplex.com/releases/view/42778#DownloadId=113396
  • 23. Referências Dynamic Language Runtime Overview http://msdn.microsoft.com/en-us/library/dd233052(VS.100).aspx Covariance and ContravarianceFAQ http://blogs.msdn.com/csharpfaq/archive/2010/02/16/covariance-and-contravariance-faq.aspx Dynamic in C# 4.0: Creating Wrappers with DynamicObject http://blogs.msdn.com/csharpfaq/archive/2009/10/19/dynamic-in-c-4-0-creating-wrappers-with-dynamicobject.aspx
  • 24. Download Download do código-fonte das demonstraçõesdestaapresentação: http://netponto.codeplex.com/releases/view/42778#DownloadId=113396
  • 26. Obrigado! Caio Proiete caio.proiete@gmail.com http://caioproiete.com http://twitter.com/caioproiete