PDF de programación - Ruby on Rails: la revolución del desarrollo web

Imágen de pdf Ruby on Rails: la revolución del desarrollo web

Ruby on Rails: la revolución del desarrollo webgráfica de visualizaciones

Publicado el 15 de Enero del 2017
654 visualizaciones desde el 15 de Enero del 2017
1,2 MB
178 paginas
Creado hace 18a (15/10/2005)
Ruby on Rails: la revolución del desarrollo web

Esteban Manchado Velázquez

[email protected]

15 de octubre de 2005

Índice

1 Introducción

Antes de nada...
Un poco de Ruby
Estado actual del desarrollo web

2 Ruby on Rails

RoR is in tha house!
MVC
Otras comodidades
Conclusión

3 Demo

Preparación
Ejecución

Índice

1 Introducción

Antes de nada...
Un poco de Ruby
Estado actual del desarrollo web

2 Ruby on Rails

RoR is in tha house!
MVC
Otras comodidades
Conclusión

3 Demo

Preparación
Ejecución

Sobre esta charla

• Presentar Ruby y RoR

Sobre esta charla

• Presentar Ruby y RoR
• Mostrar cómo hacer una aplicación

Sobre esta charla

• Presentar Ruby y RoR
• Mostrar cómo hacer una aplicación
• Cuidado con los mensajes subliminales

Grupo Rubies

• http://www.ruby.org.es
• Noticias, wiki, lista de correo
• Traducciones, documentación, ...
• ¡Anímense!
• También, lista de RoR-es, independiente

Índice

1 Introducción

Antes de nada...
Un poco de Ruby
Estado actual del desarrollo web

2 Ruby on Rails

RoR is in tha house!
MVC
Otras comodidades
Conclusión

3 Demo

Preparación
Ejecución

¿Qué es Ruby?

• Una piedra preciosa

¿Qué es Ruby?

• Una piedra preciosa
• Un lenguaje de programación

¿Qué es Ruby?

• Una piedra preciosa
• Un lenguaje de programación
• Es de propósito general, Rails es sólo una de las posibilidades

web, y aparte hay Ruby/Qt, Ruby/GNOME, etc.

¿Qué es Ruby?

• Una piedra preciosa
• Un lenguaje de programación
• Es de propósito general, Rails es sólo una de las posibilidades

web, y aparte hay Ruby/Qt, Ruby/GNOME, etc.

• ((La combinación ganadora de la elegancia conceptual de
SmallTalk, la facilidad de uso y aprendizaje de Python y el
pragmatismo de Perl))

¿Qué es Ruby?

• Una piedra preciosa
• Un lenguaje de programación
• Es de propósito general, Rails es sólo una de las posibilidades

web, y aparte hay Ruby/Qt, Ruby/GNOME, etc.

• ((La combinación ganadora de la elegancia conceptual de
SmallTalk, la facilidad de uso y aprendizaje de Python y el
pragmatismo de Perl))

• ((Un lenguaje que es como lo mejor de SmallTalk, Perl y Lisp,

y sin ruido en la línea))

No es amor, será...

No es amor, será...

• Orientación a objetos obsesiva

No es amor, será...

• Orientación a objetos obsesiva
• Todo es un objeto y tiene métodos

No es amor, será...

• Orientación a objetos obsesiva
• Todo es un objeto y tiene métodos
• 1.upto(10) {|i| puts i}

"uno dos tres".split(/ */)

No es amor, será...

• Orientación a objetos obsesiva
• Todo es un objeto y tiene métodos
• 1.upto(10) {|i| puts i}

"uno dos tres".split(/ */)

• No hay atributos de objetos (desde fuera)

No es amor, será...

• Orientación a objetos obsesiva
• Todo es un objeto y tiene métodos
• 1.upto(10) {|i| puts i}

"uno dos tres".split(/ */)

• No hay atributos de objetos (desde fuera)
• Basado en líneas (no son necesarios ; y similares)

No es amor, será...

• Orientación a objetos obsesiva
• Todo es un objeto y tiene métodos
• 1.upto(10) {|i| puts i}

"uno dos tres".split(/ */)

• No hay atributos de objetos (desde fuera)
• Basado en líneas (no son necesarios ; y similares)
• Aspecto limpio, fácil de leer

No es amor, será...

• Orientación a objetos obsesiva
• Todo es un objeto y tiene métodos
• 1.upto(10) {|i| puts i}

"uno dos tres".split(/ */)

• No hay atributos de objetos (desde fuera)
• Basado en líneas (no son necesarios ; y similares)
• Aspecto limpio, fácil de leer
• Aunque también ((Ruby golf)), expresiones regulares...

Ejemplo algo más ((real))

class Pokemon

attr_reader :evolucionado, :nombre
def initialize(nombre)

@nombre
@evolucionado = false

= nombre

end
def evoluciona

puts "Soy el Pokemon #{@nombre}"
@evolucionado = true

end

end

Ejemplo algo más ((real))

class Pokemon

attr_reader :evolucionado, :nombre
def initialize(nombre)

@nombre
@evolucionado = false

= nombre

end
def evoluciona

puts "Soy el Pokemon #{@nombre}"
@evolucionado = true

end

end

Ejemplo algo más ((real))

class Pokemon

attr_reader :evolucionado, :nombre
def initialize(nombre)

@nombre
@evolucionado = false

= nombre

end
def evoluciona

puts "Soy el Pokemon #{@nombre}"
@evolucionado = true

end

end

Ejemplo algo más ((real))

class Pokemon

attr_reader :evolucionado, :nombre
def initialize(nombre)

@nombre
@evolucionado = false

= nombre

end
def evoluciona

puts "Soy el Pokemon #{@nombre}"
@evolucionado = true

end

end

Ejemplo algo más ((real))

class Pokemon

attr_reader :evolucionado, :nombre
def initialize(nombre)

@nombre
@evolucionado = false

= nombre

end
def evoluciona

puts "Soy el Pokemon #{@nombre}"
@evolucionado = true

end

end

Ejemplo algo más ((real))

ruby> pika = Pokemon.new(’Pikachu’)
=> #<Pokemon:0x4030d154 @evolucionado=false, ...>
ruby> pika.evolucionado
=> false
ruby> pika.evoluciona
Soy el Pokemon Pikachu
=> true
ruby> pika.evolucionado
=> true
ruby> pika.class
=> Pokemon
ruby> pika.methods.grep(/evoluciona/)
=> ["evoluciona", "evolucionado"]

Ejemplo algo más ((real))

ruby> pika = Pokemon.new(’Pikachu’)
=> #<Pokemon:0x4030d154 @evolucionado=false, ...>
ruby> pika.evolucionado
=> false
ruby> pika.evoluciona
Soy el Pokemon Pikachu
=> true
ruby> pika.evolucionado
=> true
ruby> pika.class
=> Pokemon
ruby> pika.methods.grep(/evoluciona/)
=> ["evoluciona", "evolucionado"]

Ejemplo algo más ((real))

ruby> pika = Pokemon.new(’Pikachu’)
=> #<Pokemon:0x4030d154 @evolucionado=false, ...>
ruby> pika.evolucionado
=> false
ruby> pika.evoluciona
Soy el Pokemon Pikachu
=> true
ruby> pika.evolucionado
=> true
ruby> pika.class
=> Pokemon
ruby> pika.methods.grep(/evoluciona/)
=> ["evoluciona", "evolucionado"]

Ejemplo algo más ((real))

ruby> pika = Pokemon.new(’Pikachu’)
=> #<Pokemon:0x4030d154 @evolucionado=false, ...>
ruby> pika.evolucionado
=> false
ruby> pika.evoluciona
Soy el Pokemon Pikachu
=> true
ruby> pika.evolucionado
=> true
ruby> pika.class
=> Pokemon
ruby> pika.methods.grep(/evoluciona/)
=> ["evoluciona", "evolucionado"]

Ejemplo algo más ((real))

ruby> pika = Pokemon.new(’Pikachu’)
=> #<Pokemon:0x4030d154 @evolucionado=false, ...>
ruby> pika.evolucionado
=> false
ruby> pika.evoluciona
Soy el Pokemon Pikachu
=> true
ruby> pika.evolucionado
=> true
ruby> pika.class
=> Pokemon
ruby> pika.methods.grep(/evoluciona/)
=> ["evoluciona", "evolucionado"]

Ejemplo algo más ((real))

ruby> pika = Pokemon.new(’Pikachu’)
=> #<Pokemon:0x4030d154 @evolucionado=false, ...>
ruby> pika.evolucionado
=> false
ruby> pika.evoluciona
Soy el Pokemon Pikachu
=> true
ruby> pika.evolucionado
=> true
ruby> pika.class
=> Pokemon
ruby> pika.methods.grep(/evoluciona/)
=> ["evoluciona", "evolucionado"]

Ejemplo algo más ((real))

ruby> pika = Pokemon.new(’Pikachu’)
=> #<Pokemon:0x4030d154 @evolucionado=false, ...>
ruby> pika.evolucionado
=> false
ruby> pika.evoluciona
Soy el Pokemon Pikachu
=> true
ruby> pika.evolucionado
=> true
ruby> pika.class
=> Pokemon
ruby> pika.methods.grep(/evoluciona/)
=> ["evoluciona", "evolucionado"]

Ejemplo algo más ((real))

ruby> pika = Pokemon.new(’Pikachu’)
=> #<Pokemon:0x4030d154 @evolucionado=false, ...>
ruby> pika.evolucionado
=> false
ruby> pika.evoluciona
Soy el Pokemon Pikachu
=> true
ruby> pika.evolucionado
=> true
ruby> pika.class
=> Pokemon
ruby> pika.methods.grep(/evoluciona/)
=> ["evoluciona", "evolucionado"]

Ejemplo algo más ((real))

ruby> pika = Pokemon.new(’Pikachu’)
=> #<Pokemon:0x4030d154 @evolucionado=false, ...>
ruby> pika.evolucionado
=> false
ruby> pika.evoluciona
Soy el Pokemon Pikachu
=> true
ruby> pika.evolucionado
=> true
ruby> pika.class
=> Pokemon
ruby> pika.methods.grep(/evoluciona/)
=> ["evoluciona", "evolucionado"]

Ejemplo algo más ((real))

ruby> pika = Pokemon.new(’Pikachu’)
=> #<Pokemon:0x4030d154 @evolucionado=false, ...>
ruby> pika.evolucionado
=> false
ruby> pika.evoluciona
Soy el Pokemon Pikachu
=> true
ruby> pika.evolucionado
=> true
ruby> pika.class
=> Pokemon
ruby> pika.methods.grep(/evoluciona/)
=> ["evoluciona", "evolucionado"]

Ejemplo algo más ((real))

ruby> pika = Pokemon.new(’Pikachu’)
=> #<Pokemon:0x4030d154 @evolucionado=false, ...>
ruby> pika.evolucionado
=> false
ruby> pika.evoluciona
Soy el Pokemon Pikachu
=> true
ruby> pika.evolucionado
=> true
ruby> pika.class
=> Pokemon
ruby> pika.methods.grep(/evoluciona/)
=> ["evoluciona", "evolucionado"]

Ejemplo algo más ((real))

ruby> pika = Pokemon.new(’Pikachu’)
=> #<Pokemon:0x4030d154 @evolucionado=false, ...>
ruby> pika.evolucionado
=> false
ruby> pika.evoluciona
Soy el Pokemon Pikachu
=> true
ruby> pika.evolucionado
=> true
ruby> pika.class
=> Pokemon
ruby> pika.methods.grep(/evoluciona/)
=> ["evoluciona", "evolucionado"]

Ejemplo algo más ((real))

ruby> pika = Pokemon.new(’Pikachu’)
=> #<Pokemon:0x4030d154 @evolucionado=false, ...>
ruby> pika.evolucionado
=> false
ruby> pika.evoluciona
Soy el Pokemon Pikachu
=> true
ruby> pika.evolucionado
=> true
ruby> pika.class
=> Pokemon
ruby> pika.methods.grep(/evoluciona/)
=> ["evoluciona", "evolucionado"]

Bloques/iteradores

• ((Subrutinas anónimas)) como ((parámetro))

Bloques/iteradores

• ((Subrutinas anónimas)) como ((parámetro))
• P.ej., para recorrer objetos

Bloques/iteradores

• ((Subrutinas anónimas)) como ((parámetro))
• P.ej., para recorrer objetos
• [1, 2, 3, 4].each do |i|

puts i

end

Bloques/iteradores

• ((Subrutinas anónimas)) como ((parámetro))
• P.ej., para recorrer objetos
• [1, 2, 3, 4].each do |i|

puts i

end

• "jander klander gronder".split(" ").each do |i|

puts i =~/ander$/ ? "#{i} rulz" : "#{i} sobra"

end

Bloques/iteradores

• ((Subrutinas anónimas)) como ((parámetro))
• P.ej., para recorrer objetos
• [1, 2, 3, 4].each do |i|

puts i

end

• "jander klander gronder".split(" ").each do |i|

puts i =~/ander$/ ? "#{i} rulz" : "#{i} sobra"

end

• button.connect(PUSH EVENT) do |sender,sel,event|

puts "Botón pulsado"

end

Índice

1 Introducción

Antes de nada...
Un poco de Ruby
Estado actua
  • Links de descarga
http://lwp-l.com/pdf1924

Comentarios de: Ruby on Rails: la revolución del desarrollo web (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad