ruby, simples e expressivo

Post on 18-Dec-2014

893 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Palestra de Ruby, Simples e Expressivo. Aplicada no FLISOL, em Vitória-ES.

TRANSCRIPT

Ruby, simples e expressivo!

@rr_martinsRodrigo Martinsrodrigo@rrmartins.comrrmartins.github.com

Quem sou?

Rodrigo Martins

@rr_martins

rodrigo@rrmartins.com

www.rrmartins.com → rrmartins.github.com

Já Trabalhei com:

→ Zim

→ PHP

→ Clipper

→ Java

O que faço hoje:

→ Ruby

→ Rails

→ Python

→ PHP (pouco)

→ Estudando sempre novas tecnologias... :D

https://github.com/rrmartins/

Contribuições Comunidades

Rails-br

Android Brasil – Projetos

Android Developers Brasil

Comunidade Tux-ES :D

Ruby on Rails: Talk

Ruby!?

Que jóia Linda... Eu quero!!! :D

O que é Ruby?

O que é Ruby?

Interpretada multiparadigmas;

O que é Ruby?

Interpretada multiparadigmas; Tipagem dinâmica e forte;

O que é Ruby?

Interpretada multiparadigmas; Tipagem dinâmica e forte; Gerenciamento de memória automático;

O que é Ruby?

Interpretada multiparadigmas; Tipagem dinâmica e forte; Gerenciamento de memória automático; Suporta programação funcional;

O que é Ruby?

Interpretada multiparadigmas; Tipagem dinâmica e forte; Gerenciamento de memória automático; Suporta programação funcional; Orientada a objetos, OO;

Ruby disponivel para:

Microsoft Windows

Ruby disponivel para:

Microsoft Windows

Ruby disponivel para:

Linux

Ruby disponivel para:

Mac OS X

Ruby disponivel para:

Ruby + Java = JRuby

Ideais do Matz

→ “...tentar tornar o Ruby natural, não é simples...”

http://www.ruby-lang.org/en/about/

Ideais do Matz

→ “...tentar tornar o Ruby natural, não é simples...”

→ “Ruby é simples na aparência, mas é muito complexo no interior, assim como nosso corpo humano.”

http://www.ruby-lang.org/en/about/

Conversando com o Codigo

Java

Ruby

Ruby

Ruby

Ruby

Ruby

Ruby

Ruby

Ruby

Model Rails

DSL - Metaprogramação

→ Difinição: “Programe sua Programação!” || “Codigo Fazendo Codigo!”

→ Difinição: “Programe sua Programação!” || “Codigo Fazendo Codigo!”

→ Faça-lhe uma linguagem específica de domínio.

DSL - Metaprogramação

→ Difinição: “Programe sua Programação!” || “Codigo Fazendo Codigo!”

→ Faça-lhe uma linguagem específica de domínio.

→ Programa em uma linguagem desenhada para o problema que você está resolvendo.

DSL - Metaprogramação

→ Rails aproveita metaprogramação pesadamente.

DSL - Metaprogramação

→ Rails aproveita metaprogramação pesadamente.

→ Para efeito ótimo!

DSL - Metaprogramação

→ Rails aproveita metaprogramação pesadamente.

→ Para efeito ótimo!

→ Ruby é uma natural para metaprogramação.

DSL - Metaprogramação

→ XML

→ XML

→ JSON

→ XML

→ JSON

→ Rspec (Gem)

→ XML

→ JSON

→ Rspec (Gem)

→ XML

→ JSON

→ Rspec (Gem)

→ Cocumber (Gem)

http://www.slideshare.net/fnando/testando-rails-apps-com-rspec

Desenvolvendo uma linguagem com RubyO Poder das DSL

com Metaprogramação!

Começando com a Class

Inicializando a Classe

http://apidock.com/ruby/Object/instance_eval

Criando os metodos da Linguagem

Imprimindo o resultado final

Executando

Saída

Ruby, Simples e Expressivo!

http://blog.caelum.com.br/codigo-conciso-claro-e-breve/

Muito Obrigado!

Rodrigo Martins

@rr_martins

rodrigo@rrmartins.com

www.rrmartins.com → rrmartins.github.com

top related