linguagens dinamicas - tech days 2008

33
Linguagens Dinâmicas na Plataforma .NET IronPython e IronRuby

Upload: alcides-fonseca

Post on 17-May-2015

1.207 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Linguagens Dinamicas - Tech Days 2008

Linguagens Dinâmicas na Plataforma .NET

IronPython e IronRuby

Page 2: Linguagens Dinamicas - Tech Days 2008

Alcides Fonseca MSP

Page 3: Linguagens Dinamicas - Tech Days 2008

Linguagens dinâmicas

O próximo passo...

Page 4: Linguagens Dinamicas - Tech Days 2008

Linguagens dinâmicas?

• Não há uma definição universal... •  Interpretada •  Tipagem dinâmica • Duck typing

Page 5: Linguagens Dinamicas - Tech Days 2008

Linguagens estáticas • C/C++ • Java • C#

Linguagens dinâmicas • Javascript • Python • Ruby

Page 6: Linguagens Dinamicas - Tech Days 2008

Um bocadinho de história

• CLR • Python.NET • Jim Hugunin – Jython

Page 7: Linguagens Dinamicas - Tech Days 2008

“How Microsoft screwed up .NET for dynamic languages”

Page 8: Linguagens Dinamicas - Tech Days 2008

Pystone Benchmark

0K 

20K 

40K 

60K 

80K 

100K 

46K

101K 90K

80K

50K 36K

Page 9: Linguagens Dinamicas - Tech Days 2008

Now what?

•  IronPython •  IronRuby •  Visual Basic •  JavaScript (EcmaScript 3.0)

Page 10: Linguagens Dinamicas - Tech Days 2008

E qualquer um o pode fazer!

•  IronLisp •  IronScheme •  Smalltalk •  Nua •  Logo

•  Boo •  Kobra •  Coldfusion •  PHP (Phalanger) •  Toyscript •  LOLCODE

Page 11: Linguagens Dinamicas - Tech Days 2008

Dynamic Languages

Tools

Applications

Page 12: Linguagens Dinamicas - Tech Days 2008

VS IronPython integration

•  Visual Studio 2005 e 2008 •  Visual Studio SDK

•  Syntax Highlighting •  Autocompletion • Gestor de Projecto • Debugger • Winforms and WPF(2008) designers

Page 13: Linguagens Dinamicas - Tech Days 2008

VS IronRuby integration

• Ruby in Steel (pago) – For Ruby and Ruby on Rails

• Ruby in Steel for IronRuby (grátis) – Syntax highlighting – Gestor de Projecto – Consola ruby integrada – Winforms designer

Page 14: Linguagens Dinamicas - Tech Days 2008

XNA

•  XNA Studio – C# (pelo menos não é C++!)

•  XNA + IronPython – Possível – Não recomendado

• Não corre em .NET Compact (Xbox 360 e WinMobile)

Page 15: Linguagens Dinamicas - Tech Days 2008

Use cases

Page 16: Linguagens Dinamicas - Tech Days 2008

Prototyping

Page 17: Linguagens Dinamicas - Tech Days 2008

Metodologias Ágeis

Page 18: Linguagens Dinamicas - Tech Days 2008

Acoplamento de Módulos

Page 19: Linguagens Dinamicas - Tech Days 2008

Automated Testing

Page 20: Linguagens Dinamicas - Tech Days 2008

DSLs

Page 21: Linguagens Dinamicas - Tech Days 2008

Administrative tasks

Page 22: Linguagens Dinamicas - Tech Days 2008

Design de Interfaces

Page 23: Linguagens Dinamicas - Tech Days 2008

Webdevelopment

IronPython/IronRuby + ASP.NET MVC

Page 24: Linguagens Dinamicas - Tech Days 2008

Webdesign

Silverlight

Page 25: Linguagens Dinamicas - Tech Days 2008

Scripting language para PowerUsers

Page 26: Linguagens Dinamicas - Tech Days 2008

Real World Usage

Page 27: Linguagens Dinamicas - Tech Days 2008

Second Life

Page 28: Linguagens Dinamicas - Tech Days 2008

Resolver

Page 29: Linguagens Dinamicas - Tech Days 2008
Page 30: Linguagens Dinamicas - Tech Days 2008

MySpace

~2500 servers

Page 31: Linguagens Dinamicas - Tech Days 2008

Resumindo

• Desenvolvimento rápido • Programação de alto nível

Page 32: Linguagens Dinamicas - Tech Days 2008

Mais informação

•  http://codeplex.com/ironpython •  http://www.ironruby.net

•  http://alcidesfonseca.com • [email protected]

Page 33: Linguagens Dinamicas - Tech Days 2008

?