Java
Balance On Rails
Fabio Akita
Original de Jim Weirich
Apresentação
• Jim Weirich
– Consultor da Compuware
– Programador Java
– Entusiasta Ruby
• Fabio Akita
–
–
–
–
–
Consultor da Balance Consulting
Integrador SAP
Programador Java
Entusiasta Ruby on Rails
Autor de “Repensando a Web com Rails”
Começando do Começo
• Quando ensinava C para funcionários de uma grande empresa, era fácil saber qual linguagem os estudantes usavam olhando o estilo do código C que faziam.
• Certamente “você pode escrever Fortran em qualquer linguagem”.
• Programadores Java investigando Ruby encontrarão muitas semelhanças.
• Existem classes e módulos, namespaces e escopos, variáveis de instância e métodos.
• Um programador Java se sentirá em cada nessa linguagem orientada a objetos.
• Portanto a tentação será de continuar programando em estilo Java.
• Claro, algumas coisas serão diferentes (a falta de declaração de tipos será o primeiro choque). • Mas nada que não possa ser trabalhado com um pouco de esforço, ou perderemos uma oportunidade de ouro.
• “Uma linguagem que não afeta seu jeito de pensar sobre programação não vale a pena aprender”
• Alan Perlis
The Ruby Way
• Isto não é mais um artigo do tipo
“Ruby é melhor que Java”.
• Esta apresentação visa ajudar programadores Java interessados a evitar o “escrever Java em Ruby” e aprender o “Ruby Way”.
#10 aprenda convenções Ruby
•
•
•
•
•
•
•
NomesDeClasse nomes_de_metodos e nomes_de_variaveis metodos_fazendo_pergunta? metodos_perigosos!
@variaveis_de_instancia
$variaveis_globais
ALGUMAS_CONSTANTES ou OutrasConstantes
• Algumas convenções são reforçadas pela linguagem, outras são padrões usadas pela comunidade. #9 tudo é um objeto
• Tudo que puder ser ligado a um nome de variável é um objeto completo.
• Isso tem consequências interessantes.
Classes são Objetos!
• Array é um nome constante ligado a um objeto de classe Array.
• Criar novos objetos não exigem sintaxe