0Pricing
Ruby Academy · Aula

Classes de data e hora

Trabalhe com horários.

Classes de data e hora é uma aula grátis de Ruby Academy no CoddyKit. Esta é a aula 1 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Ruby Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Ruby Academy inclui 4 aulas no total.

A classe Time

A classe Time integrada ao Ruby representa um momento no tempo. Time.now fornece o horário atual, incluindo a data e a hora.

t = Time.now
puts t.class
puts(t.year)

Criando um horário específico

Time.new (ou Time.local) cria um horário a partir de partes: ano, mês, dia, hora, minuto e segundo.

t = Time.new(2026, 5, 30, 14, 30, 0)
puts t.year
puts t.hour
puts t.min

Lendo os componentes do horário

Time expõe cada parte por meio de métodos como year, month, day, hour, min, sec e wday (dia da semana, 0 = domingo).

t = Time.new(2026, 5, 30)
puts(t.month)
puts(t.day)
puts(t.wday)

Segundos desde a época Unix

Internamente, um Time é o número de segundos desde a época Unix (1º de janeiro de 1970, UTC). Use to_i para obtê-lo e Time.at para converter de volta.

secs = Time.new(2026, 1, 1, 0, 0, 0, '+00:00').to_i
puts secs
puts(Time.at(secs).utc.year)

A classe Date

Para trabalhar com o calendário sem um horário, carregue a biblioteca date e use a classe Date.

require 'date'
d = Date.new(2026, 5, 30)
puts d.class
puts(d.to_s)

Hoje e agora

Date.today fornece a data atual do calendário. DateTime.now também inclui a hora do dia.

require 'date'
puts(Date.today.class)
puts(DateTime.now.class)

Dia da semana

Date oferece predicados e nomes legíveis para os dias da semana.

require 'date'
d = Date.new(2026, 5, 30)
puts(d.saturday?)
puts(d.wday)

Data vs Hora vs DateTime

Escolha a classe certa:

  • Date apenas a data do calendário, sem horário
  • Time instante preciso com fuso horário, de forma rápida
  • DateTime data mais horário, parte da biblioteca de datas

O código Ruby moderno geralmente prefere Time.

require 'date'
puts(Date.new(2026, 5, 30))
puts(Time.new(2026, 5, 30, 9, 0).hour)

Anos bissextos

Date.leap? informa se um ano é bissexto, o que afeta a duração de fevereiro.

require 'date'
puts(Date.leap?(2024))
puts(Date.leap?(2026))

UTC e horário local

Um objeto Time pode estar no fuso local ou em UTC. utc converte para UTC, e localtime volta para o horário local. utc? verifica o modo atual.

t = Time.new(2026, 5, 30, 12, 0, 0, '+03:00')
puts(t.utc.hour)
puts(t.utc?)

Comparando horários

Objetos Time e Date podem ser comparados com <, > e ==, portanto o senhor pode ordená-los ou verificar a ordem diretamente.

a = Time.new(2026, 1, 1)
b = Time.new(2026, 6, 1)
puts(a < b)
puts([b, a].min.month)

Verificação rápida

Qual classe representa uma data do calendário sem componente de horário?

Recapitulação: classes Time e Date

O senhor aprendeu os principais tipos de data e hora:

  • Time.now / Time.new para instantes
  • Componentes: ano, mês, dia, hora, min, seg, dia da semana
  • Segundos desde a época por meio de to_i e Time.at
  • Date / DateTime da biblioteca de datas
  • UTC e horário local, comparação e anos bissextos
require 'date'
puts(Date.today.year)

Perguntas Frequentes

A aula “Classes de data e hora” é grátis?

Sim — o texto completo de “Classes de data e hora” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Ruby Academy, atualize para CoddyKit PRO. O curso de Ruby Academy inclui 4 aulas no total.

O que vou aprender em “Classes de data e hora”?

Trabalhe com horários. Você pratica Ruby Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Ruby Academy?

Nenhuma experiência prévia é necessária. Ruby Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 4.

Quanto tempo leva a aula “Classes de data e hora”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Ruby Academy?

Sim. Cada aula de Ruby Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Classes de data e hora
  2. Análise e formatação
  3. Aritmética de horários
  4. Fusos horários
← Voltar para Ruby Academy