Linguagens Dinamicas - Tech Days 2008
-
Upload
alcides-fonseca -
Category
Technology
-
view
1.207 -
download
2
Transcript of Linguagens Dinamicas - Tech Days 2008
![Page 1: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/1.jpg)
Linguagens Dinâmicas na Plataforma .NET
IronPython e IronRuby
![Page 2: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/2.jpg)
Alcides Fonseca MSP
![Page 3: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/3.jpg)
Linguagens dinâmicas
O próximo passo...
![Page 4: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/4.jpg)
Linguagens dinâmicas?
• Não há uma definição universal... • Interpretada • Tipagem dinâmica • Duck typing
![Page 5: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/5.jpg)
Linguagens estáticas • C/C++ • Java • C#
Linguagens dinâmicas • Javascript • Python • Ruby
![Page 6: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/6.jpg)
Um bocadinho de história
• CLR • Python.NET • Jim Hugunin – Jython
![Page 7: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/7.jpg)
“How Microsoft screwed up .NET for dynamic languages”
![Page 8: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/8.jpg)
Pystone Benchmark
0K
20K
40K
60K
80K
100K
46K
101K 90K
80K
50K 36K
![Page 9: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/9.jpg)
Now what?
• IronPython • IronRuby • Visual Basic • JavaScript (EcmaScript 3.0)
![Page 10: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/10.jpg)
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](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/11.jpg)
Dynamic Languages
Tools
Applications
![Page 12: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/12.jpg)
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](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/13.jpg)
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](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/14.jpg)
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](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/15.jpg)
Use cases
![Page 16: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/16.jpg)
Prototyping
![Page 17: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/17.jpg)
Metodologias Ágeis
![Page 18: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/18.jpg)
Acoplamento de Módulos
![Page 19: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/19.jpg)
Automated Testing
![Page 20: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/20.jpg)
DSLs
![Page 21: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/21.jpg)
Administrative tasks
![Page 22: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/22.jpg)
Design de Interfaces
![Page 23: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/23.jpg)
Webdevelopment
IronPython/IronRuby + ASP.NET MVC
![Page 24: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/24.jpg)
Webdesign
Silverlight
![Page 25: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/25.jpg)
Scripting language para PowerUsers
![Page 26: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/26.jpg)
Real World Usage
![Page 27: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/27.jpg)
Second Life
![Page 28: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/28.jpg)
Resolver
![Page 29: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/29.jpg)
![Page 30: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/30.jpg)
MySpace
~2500 servers
![Page 31: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/31.jpg)
Resumindo
• Desenvolvimento rápido • Programação de alto nível
![Page 32: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/32.jpg)
Mais informação
• http://codeplex.com/ironpython • http://www.ironruby.net
• http://alcidesfonseca.com • [email protected]
![Page 33: Linguagens Dinamicas - Tech Days 2008](https://reader037.fdocument.pub/reader037/viewer/2022103016/5558c49ad8b42a995d8b4658/html5/thumbnails/33.jpg)
?