Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Ruby 101 session 3

357 views

Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Ruby 101 session 3

  1. 1. H A S H E S , S Y M B O L S Y O R I E N T A C I O N A O B J E T O S I Ruby 101 Sergio Castillo Yrizales @scyrizales
  2. 2. Agenda  Hashes y Simbolos  Orientacion a Objetos
  3. 3. Hashes y Simbolos
  4. 4. Extra: case when else end  Es una estructura de control especial  Te permite estructurar diversos casos de equivalencias  Puede usarse sin variable inicial:
  5. 5. Hashes. Valor por defecto  El valor que se usa en el constructor será el valor por defecto
  6. 6. Símbolos (Symbol)  Es un tipo de nombre  NO ES UNA CADENA  Las cadenas iguales son objetos diferentes  Los símbolos iguales son el mismo objeto
  7. 7. Para que usamos Symbols?  Para los keys de los hashes  Ahorran memoria
  8. 8. Convirtiendo strings en symbols  Mediante el método to_sym  Para regresar, se hace mediante el método to_s
  9. 9. Otra forma de escribir Hashes  Antes era asi (sin Symbols)  Ahora es asi (con Symbols)
  10. 10. Buscando en Hashes  Buscando por key  Buscando por value
  11. 11. Recorriendo Hashes por…  Las keys  Los values
  12. 12. Eliminando una llave  Usamos el método delete
  13. 13. Reto: Rating para Peliculas  Escribiremos un programa que se haga cargo de nuestros ratings  Copien la estructura en nuevo archivo y rellenen en donde haga falta
  14. 14. Orientación a Objetos
  15. 15. Por qué Objetos  Ruby es un lenguaje OO  Todo en Ruby es un objeto  Y todo el tiempo hemos usado métodos
  16. 16. Class  Es el mapa para generar nuevos objetos
  17. 17. Constructor  Es el método que inicia todo en Ruby  Se llama al usar el .new  Se define mediante initialize
  18. 18. Variables  Variables de Instancia: @  Variables de Clase: @@  Variables Globales: $
  19. 19. Métodos  Constructor  De instancia  De clase
  20. 20. Herencia  Una clase puede heredar de otra  Se usa para definir la relación “es un”  Adulto es un Humano  En Ruby se usa el operador <
  21. 21. Sobreescribiendo  Un método de la clase padre puede ser reescrito por la clase hija  En general todos los otros métodos se pasan directamente a la clase hija
  22. 22. Accesando al padre  Una vez que hemos sobrescrito un método, se puede accesar a este mediante el uso del super
  23. 23. Reto: Computadora virtual  Escribamos un clase que represente a una computadora  Cada computadora tiene un usuario y un password  Debe guardar un Hash con las computadoras creadas donde el key sea el usuario y el value sea el pass.  Debe tener un metodo de clase que retorne este hash  Debe tener 2 metodos, uno para crear archivos y el otro que sea el constructor.
  24. 24. Más Ejemplos  Los ejercicios de esta clase se encuentran en:  https://github.com/scyrizales/Ruby101/tree/master /TerceraClase  Contacto a @scyrizales (twitter, skype)

×