Ruby 101 session 4

434 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
434
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Ruby 101 session 4

  1. 1. O R I E N T A C I O N A O B J E T O S I I M Ú L T I P L E S A R C H I V O S Ruby 101 Sergio Castillo Yrizales @scyrizales
  2. 2. Agenda  Orientación a Objetos  Múltiples archivos
  3. 3. Orientación a Objetos II
  4. 4. 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 <
  5. 5. 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
  6. 6. Accesando al padre  Una vez que hemos sobrescrito un método, se puede accesar a este mediante el uso del super
  7. 7. Definiendo Propiedades  No se puede accesar a una variable en una clase de ruby  Hay que generar un método de escritura y otro de lectura para cada variable
  8. 8. Definiendo Propiedades  Otra forma es usando los metodos especiales attr_reader y attr_writer
  9. 9. Definiendo Propiedades  Y si es de entrada y salida attr_accessor es nuestro nuevo amigo
  10. 10. Ambito: privado  Por defecto, todos los métodos son públicos  Al escribir private dentro de una clase hace que todos los metodos que vengan luego de esta sentencia sean privados
  11. 11. Ambito: privado  Y si queremos volver a hacerlo públicos escribimos public 
  12. 12. Reto: Hagamos taxonomia  Definiremos una clase mamifero  Definiremos 2 clases que hereden de mamifero  Usemos propiedades y metodos con ambitos públicos o privados
  13. 13. Múltiples Archivos
  14. 14. Trabajando en el mundo real  En el mundo real, no puedes poner todo tu código en el mismo archivo  No se ve bien y tiende a confundir a los desarrolladores  Lo que podemos hacer es separar el código en diferentes archivos
  15. 15. Llamando archivos  Para llamar un archivo que se encuentra en el mismo directorio usamos require_relative  Y para buscar a un nivel superior solo usamos require (buscar gemas)
  16. 16. Reto: Organizemos Código  Separemos el ejercicio anterior en diferentes archivos
  17. 17. Reto: Chatham Challenge 4  A financial portfolio consists of an allocation of stocks, bonds, and cash. Allocate the portfolio and based off of financial data, recalculate the portfolio each year. For example, your portfolio may start with $1,000,000, and you may distribute your allocations with 65% stock, 20% bonds, and the remainder in cash. At the end of a set number of years where rates go up and down, publish the portfolio balance. During this exercise, you will probably have to define methods, classes, and maybe even hashes.
  18. 18. Todos los archivos en:  https://github.com/scyrizales/Ruby101/tree/master /CuartaClase

×