Clases de fecha y hora
Trabaje con el tiempo
Clases de fecha y hora es una lección gratuita de Ruby Academy en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Ruby Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Ruby Academy incluye 4 lecciones en total.
La clase Time
La clase integrada Time de Ruby representa un momento en el tiempo. Time.now proporciona la hora actual, incluida la fecha y la hora del reloj.
t = Time.now
puts t.class
puts(t.year)Crear una hora específica
Time.new (o Time.local) crea una hora a partir de sus componentes: año, mes, día, hora, minuto y segundo.
t = Time.new(2026, 5, 30, 14, 30, 0)
puts t.year
puts t.hour
puts t.minConsultar los componentes de una hora
Time expone cada componente mediante métodos como year, month, day, hour, min, sec y wday (día de la semana; 0 = domingo).
t = Time.new(2026, 5, 30)
puts(t.month)
puts(t.day)
puts(t.wday)Segundos desde la época Unix
Internamente, un objeto Time es el número de segundos transcurridos desde la época Unix (1 de enero de 1970 UTC). Use to_i para obtenerlo y Time.at para convertirlo de nuevo.
secs = Time.new(2026, 1, 1, 0, 0, 0, '+00:00').to_i
puts secs
puts(Time.at(secs).utc.year)La clase Date
Para trabajar con calendarios sin una hora, requiera la biblioteca date y use la clase Date.
require 'date'
d = Date.new(2026, 5, 30)
puts d.class
puts(d.to_s)Hoy y ahora
Date.today proporciona la fecha actual del calendario. DateTime.now también incluye la hora del día.
require 'date'
puts(Date.today.class)
puts(DateTime.now.class)Día de la semana
Date ofrece predicados y nombres legibles para los días de la semana.
require 'date'
d = Date.new(2026, 5, 30)
puts(d.saturday?)
puts(d.wday)Date frente a Time frente a DateTime
Elija la clase adecuada:
Datesolo la fecha del calendario, sin relojTimeinstante preciso con zona horaria, de forma rápidaDateTimefecha más hora, parte de la biblioteca de fechas
El código moderno de Ruby suele preferir Time.
require 'date'
puts(Date.new(2026, 5, 30))
puts(Time.new(2026, 5, 30, 9, 0).hour)Años bisiestos
Date.leap? indica si un año es bisiesto, lo que afecta a la duración de febrero.
require 'date'
puts(Date.leap?(2024))
puts(Date.leap?(2026))UTC y hora local
Un Time puede estar en la zona local o en UTC. utc lo convierte a UTC y localtime lo devuelve a la hora local. utc? comprueba el modo actual.
t = Time.new(2026, 5, 30, 12, 0, 0, '+03:00')
puts(t.utc.hour)
puts(t.utc?)Comparar horas
Los objetos Time y Date se pueden comparar con <, > y ==, por lo que puede ordenarlos o comprobar directamente el orden.
a = Time.new(2026, 1, 1)
b = Time.new(2026, 6, 1)
puts(a < b)
puts([b, a].min.month)Comprobación rápida
¿Qué clase representa una fecha del calendario sin componente de hora del día?
Resumen: clases Time y Date
Ha aprendido los tipos fundamentales de fecha y hora:
Time.now/Time.newpara instantes- Componentes: año, mes, día, hora, min, sec, wday
- Segundos desde la época mediante
to_iyTime.at Date/DateTimede la biblioteca de fechas- UTC frente a la hora local, comparación y años bisiestos
require 'date'
puts(Date.today.year)Preguntas frecuentes
¿La lección «Clases de fecha y hora» es gratis?
Sí — el texto completo de «Clases de fecha y hora» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Ruby Academy, actualiza a CoddyKit PRO. El curso de Ruby Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Clases de fecha y hora»?
Trabaje con el tiempo Practicas Ruby Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Ruby Academy?
No se requiere experiencia previa. Ruby Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.
¿Cuánto tiempo toma la lección «Clases de fecha y hora»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Ruby Academy?
Sí. Cada lección de Ruby Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Clases de fecha y hora
- Análisis y formateo
- Aritmética temporal
- Zonas horarias