Carlos E. V. Matos Fernando L. Caretti. Desenvolvida por Yukihiro Matsumoto, no Japão, início da década de 90. Lançada oficialmente em 1995. Multi-plataforma,

Slides:



Advertisements
Apresentações semelhantes
Ruby Introdução.
Advertisements

Paulo Marques Hernâni Pedroso
EQUIPE Marcelo Boavista Raphael Santos. História 1995 por Yukihiro Matsumoto Condensou as melhores características de outras linguagens da época; Marketing:
Programação Orientada aos Objectos Paulo Marques Departamento de Eng. Informática Universidade de Coimbra Set/2005 Uma Introdução Usando.
O Essencial sobre Linguagens de Programação Luís Caires Maio 2005.
LABORATÓRIO DE PROGRAMAÇÃO
PRDS - Programa de Residência em Desenvolvimento de Software Laboratório de Engenharia de Software (LES) da PUC-Rio Carlos Lucena
Orientação a Objetos Introdução. Objetos: o que são? Olhando o mundo real pode-se ver vários objetos: mesa, cadeiras, alunos, professores etc. Esses objetos.
Engenharia Reversa de Softwares Ruby on Rails
INTRODUÇÃO À PROGRAMAÇÃO
Alexandre Parra Site: Linguagem Java Alexandre Parra Site:
Universidade Federal do Espírito Santo
Uso de Orientação a Objetos em Java
Laboratório de Programação de Computadores I
Classes e objetos P. O. O. Prof. Grace.
Introdução a Programação Orientada a Objetos
Estrutura de Dados em Java
Paradigmas de programação
Desenvolvimento de Projetos e Aplicações Web
O Portal do Estudante de Computação
Curso de extensão em Desenvolvimento Web
JAVA: Conceitos Iniciais
Programação Orientada a Objetos em Delphi
Concorrência em Java Threads em Java.
Aula prática 13 Orientação a Objetos – C++ Parte 1
EQUIPE Marcelo Boa Vista Raphael Santos. História 1995 por Yukihiro Matsumoto Condensou o melhor das linguagens que trabalhava Marketing: Programming.
JAVA Linguagem Ambiente de Desenvolvimento
Conceitos de Linguagem de Programação
Tópicos avançados em internet A Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Programação I Aula 2 (Métodos)
Métodos de Construção de Software: Orientação a Objetos
Programação de SCRIPTS
Avaliação da Linguagem de Programação
Estudo dos Conceitos e Paradigmas de Programação
Paradigmas de Linguagens de Programação Linguagem Imperativa 2
Ruby Viviane Souza (vess).
Cristiano Soares Rafael di Lego Roberto Nemirovsky Thiago Nascimento
Linguagens de Programação II
Professor: Márcio Amador
PHP Orientado a Objetos Análise e Desenvolvimento de Sistemas Prof
Orientação a Objetos Parte I
Programação Orientada à Objetos
Aula 1 - Fundamentos Java SE Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros – Agosto/2009.
Paradigma funcional.
Analise Semântica aula-10-analise-semântica.pdf.
Laboratório de Programação I Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Linguagens de Programação
Java Kickstart, day 2 Semelhanças com linguagem C.
MINI CURSO J2ME Vinícius Maran SEMINÁRIO REGIONAL DE INFORMÁTICA 2008.
Classes Abstratas e Interface
Acabias Marques Luiz. I - Introdução ao Ruby Parte 1 – Introdução a linguagem  O que é Ruby  Instalação  O IRB  Operadores Aritméticos  Tipos de.
Ruby André Braga Patrícia Lustosa. Yukihiro Matsumoto (“Matz”), 1993 Perl Smalltalk Eiffel Ada Lisp “Natural, not simple” “More powerful than Perl and.
Linguagem de programação. Histórico  Concebida em 1993 por Yukihiro Matsumoto  Primeiro livro em inglês saiu em setembro de 2000  Ruby on Rails é lançado.
Acabias Marques Luiz. III – Variáveis, constantes e executáveis Parte 1 – Introdução a linguagem  Variáveis e Constantes  Atalhos na manipulação de.
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Introdução a Programação Orientada a Objetos
Java Disciplina: Programação II Professora: Mai-Ly Vanessa.
Aula Prática 13 Orientação a Objeto Monitoria
Conceitos de Orientação a Objetos zConceito de tipo zTipos Abstratos de Dados zMódulos/Pacotes zEncapsulamento.
JR: Flexible Distributed Programming in an Extended Java Elmário Gomes Dutra Jr. Gustavo Romano.
Ferramentas para desenvolvimento Java
Módulo II Capítulo 1: Orientação a Objetos
Técnico em Informática - Senac
Sistemas Distribuídos Prof. Marcus Rodrigues
Linguagem de Programação
Módulo I – Softwares: Linguagens de Programação Prof.: Rogério Morais.
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
SISTEMA DE TRANSITIVIDADE: PARTICIPANTES PROCESSOS CIRCUNSTÂNCIAS.
Laboratório de Computação Aula 06 e 07 – Implementação de classes Prof. Fábio Dias
Linguagem de Programação – Aula 04 Prof. Me. Ronnison Reges Vidal.
Transcrição da apresentação:

Carlos E. V. Matos Fernando L. Caretti

Desenvolvida por Yukihiro Matsumoto, no Japão, início da década de 90. Lançada oficialmente em Multi-plataforma, orientada a objetos, interpretada e de propósito geral.

A sintaxe de Ruby incorpora elementos de várias outras linguagens, principalmente Perl e Smalltalk. Por ser interpretada, não há necessidade de declaração de tipos de variáveis. Variáveis não são associadas a um tipo em particular, até o momento da execução. Não há compilação prévia.

Criada com o objetivo de oferecer um equilíbrio entre as programações funcional e imperativa. Multi-plataforma através do YARV, a “máquina virtual” de Ruby. Tudo o que se manipula em Ruby são objetos, e os resultados destas manipulações são objetos.

Exemplo de implementação de classe: class Filme def initialize(nome, ano, diretor) nome = nome ano = ano diretor = diretor end

Exemplo de criação de objetos: filme1 = Filme.new("Apocalypse Now”, 1979, “Francis Ford Coppola”) filme2 = Filme.new("Three Days of the Condor", 1975, “Sydney Pollack”) Declaração de 2 objetos Filme, como na classe anterior. Note que não foi declarado um tipo de variável antes. O código é interpretado no tempo de execução, alocando a memória correta para o tipo requisitado.

Exemplo de definição de métodos: def saudacoes(nome) puts "olá #{nome}" end saudacoes("Maria") Saída do código: olá Maria

Outras curiosidades sobre Ruby: → Ruby possui classes abertas. → Não possui suporte à herança múltipla. Ao invés disso, usa módulos, ou “mixins”, para emular. → As funções get e set, por exemplo, possuem substitutos mais práticos como o attr_accessor :atributo, que desempenha as duas funções. → Todos os atributos são objetos, portanto: int i = Math.abs(-1992) // Java i = abs # Ruby

Tela do RPG Maker VX, com o utensílio de edição de scripts em linguagem Ruby.

Exemplo de aplicação Web desenvolvida com Ruby on Rails

“Often people, especially computer engineers, focus on the machines. They think, "By doing this, the machine will run faster. By doing this, the machine will run more effectively. By doing this, the machine will something something something." They are focusing on machines. But in fact we need to focus on humans, on how humans care about doing programming or operating the application of the machines. We are the masters. They are the slaves.” Yukihiro Matsumoto

Referências: Programming Ruby: The Pragmatic Programmer´s Guide → David Thomas, Andrew Hunt; 2001 v1.0 The Book of Ruby → Huw Collingbourne, 2008, Dark Leon Ltd. website Ruby Brasil → ruby-br.org website Ruby, a Programmer´s Best Friend → ruby-lang.org/en/ website RGSS - Ruby Game Scripting System → rgss.com.br/rgss/index.html