forked from everaldo/ruby-em-100-exemplos
-
Notifications
You must be signed in to change notification settings - Fork 0
/
020_um_breve_comentario_sobre_constantes.rb
51 lines (40 loc) · 1.33 KB
/
020_um_breve_comentario_sobre_constantes.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
# 05/06/2016 - Everaldo Gomes - [email protected]
#
# 020 - Um breve comentário sobre constantes
#
# Antes de nos aprofundarmos sobre os tipos básicos de
# Objetos, as estruturas de controle e como o próprio
# sistema de Objetos funciona, vamos abordar rapidamente
# sobre constantes.
#
# Vimos que as variáveis globais começam com o caractere $.
# Todas as constantes começam com a primeira letra maiúscula.
#
# Geralmente, todas as letras de uma constante são maiúsculas.
# Mas, por convenção, em classes e Módulos somente a primeira
# letra de cada palavra é posta em maiúscula.
#
# Logo, vemos que Classes e Módulos são referenciados através
# de constantes. Algumas que já vimos até o momento:
# Object, String, Fixnum, Bignum, Symbol
#
# Em Ruby, quando o valor de uma constante é alterado, apenas
# gera um warning.
#
# Essa não é uma prática recomendável.
#
# O que não gera warning é alterar uma classe ou módulo. Uma
# tarefa relativamente comum.
#
#
# Lista todas as constantes presentes na classe Object
puts Object::constants
# Lista todas as constantes presentes na classe Math
puts Math::constants
# Imprime PI
puts Math::PI
# Veremos em exemplos posteriores como o operador de escopo ::
# é utilizado para 'navegar entre as constantes' definidas
# no escopo global e dentro das classes e módulos
#
#