Ruby 101 session 5

445 views

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
445
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
5
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Ruby 101 session 5

  1. 1. I N T R O D U C C I O N A S I N A T R A Ruby 101 Sergio Castillo Yrizales @scyrizales
  2. 2. Agenda  Sinatra  Repaso
  3. 3. Sinatra
  4. 4. ¿Qué es Sinatra?  Es un DSL para desarrollar aplicaciones web  Permite crear aplicaciones web con Ruby mediante el esfuerzo mínimo
  5. 5. Verbos HTTP  Existen varios verbos en http para obtener recursos web.  En sinatra podemos usar:
  6. 6. Trabajando con vistas  Se pueden enviar vistas éstaticas con sinatra  Creamos un folder “views”  Servimos los archivos mediante el metodo erb
  7. 7. Que es erb?  Es un lenguaje para escribir templates en ruby  Combina el html con tags para variables ruby
  8. 8. Sentencias útiles de erb  Llamando variables  Recorriendo bucles  Comments
  9. 9. Estructura a una aplicación Sinatra  Usaremos sinatra/base  Luego definimos una clase que herede de base:  Ingresamos las rutas dentro de esta clase y ejecutamos
  10. 10. Recibiendo parametros de un form  Para recibir parametros de un form usamos:
  11. 11. Accesando a objeto request  Se puede llamar desde cualquier ruta  Propiedades más usadas
  12. 12. Repaso
  13. 13. Algunos métodos útiles  reverse  Invertir una cadena  upcase  Mayúsculas  downcase  Minúsculas  gsub  Reemplazar una cadena por otra  include?  Busca una cadena en otra # para comentarios =begin comentarios de varias lineas =end
  14. 14. ! Y ?  En ruby, las funciones que terminan en ! significan una modificación del objeto original  Es bueno recordar que esto es solo una recomendación del lenguaje para funciones que modifican el objeto original
  15. 15. ! Y ?  En ruby, las funciones que terminan en ? devuelven un valor boolean (true or false)  Es bueno recordar que esto es solo una recomendación del lenguaje para escribir funciones que retornen booleanos.
  16. 16. If / unless
  17. 17. case when else end  Es una estructura de control especial  Te permite estructurar diversos casos de equivalencias  Puede usarse sin variable inicial:
  18. 18. Bucles - While  Se repite mientras la condición sea verdadera  Cuidado con los bucles infinitos
  19. 19. Bucles - Until  Se repite mientras la condición sea falsa
  20. 20. Bucles - For  Cuando sabes cuantas veces vas a ejecutar un bucle  3 puntos para no incluir el numero final  2 puntos para incluirlo
  21. 21. Bucles - Loop  Para ejecutar una sintaxis compleja de codigo  Break sirve para terminar  Next para continuar con otro valor
  22. 22. .times  Sirve para repetir un bloque cierto numero de veces
  23. 23. Iterando sobre arreglos  Se usa el comando .each para recorrer arreglos
  24. 24. Creando un Hash  En otros lenguajes los pueden encontrar como diccionarios
  25. 25. Iterando sobre Hashes  Con el comando each y la sintaxis |key, value|
  26. 26. Otra forma de escribir Hashes  Antes era asi (sin Symbols)  Ahora es asi (con Symbols)
  27. 27. Constructor  Es el método que inicia todo en Ruby  Se llama al usar el .new  Se define mediante initialize
  28. 28. Variables  Variables de Instancia: @  Variables de Clase: @@  Variables Globales: $
  29. 29. Métodos  Constructor  De instancia  De clase
  30. 30. Examen  Realizar un pequeño sistema de marcas (Timesheet para Katia)  Debe generar un objeto por cada día marcado el cual consigne hora de entrada y de salida  Se debe calcular las horas transcurridas por cada día  Debe haber un objeto que englobe a todas las marcas del mes  El sistema debe de marcar automáticamente la hora de entrada y de salida mediante un solo metodo de marca. (Usar condicionales)  Se debe imprimir un consolidado de todas las marcas del mes y el tiempo trabajado en total.  Se tomará en cuenta el uso de clases (6ptos), hashes(4ptos), condicionales(2ptos), bucles(4ptos) y creatividad(4ptos)

×