Ruby 변수와 상수 - (3)
Ruby 변수와 상수
1. 변수의 선언과 할당
- Ruby에서 변수를 선언하고 값을 할당하는 방법은 변수 이름을 정의한 후 할당 연산자 "="를 사용하여 값을 할당한다.
name = "AR"
age = 30
active = true
2. 변수 이름 규칙
2-1) 변수이름은 영문자와 숫자, 언더스코어 로 구성가능한다.
2-2) 변수 이름은 숫자로 시작할 수 없다.
2-3) 대소문자를 구분한다.(Name 과 name 은 서로 다른 변수이다.)
2-4) 예약어(키워드)는 변수 이름으로 사용할 수 없다.
name, age, student_1, totalScore, user123
잘못된 변수 이름
123name, user-name, total stoce, string, if, class
주로 관례적으로 사용되는 변수 이름 스타일
1) Snake Case : my_project, user_name, total_cose
2) Camel Case : myProject, userName, totalCost
3. 변수의 범위(Scope)
- Ruby에서 변수의 범위는 해당 변수가 접근 가능한 영역을 의미하고 변수의 범위는 선언된 변수의 위치에 따라 결정될 수 있다.
3-1) 지역변수(Local Variables)
- 변수가 선언된 블록 내에서만 유효한 변수로 메소드나 함수 내부에서 선언된 경우에 해당하는 메소드나 함수 내부에서만 접근할 수 있다.
- 지역변수의 이름은 소문자로 시자갛고 변수의 스코프는 변수가 선언된 블록의 범위로 제한한다.
def method
name = "AR"
puts name
end
3-2) 전역변수(Global Variables)
- 전역변수는 프로그램안의 어느 곳에서나 접근 가능한 변수로 "$" 기호로 시작된다.
- 다른 프로그래밍언어와 비교했을때 전역변수의 개념은 비슷하지만 많이 사용하면 유지보수가 여려워지기 때문에 상황에 따라 지역변수와 전역변수를 나누어 사용하는 것이 좋다.
$name = "AR"
3-3) 인스턴스변수(Instance Variables)
- 인스턴스 변수는 클래스의 객체 내부에서 사용되며 @기호로 시작하고 인스턴스 내에서만 유효한 변수이다.
class Age
def getLength
puts @hello
end
def setLength
@hello = 30
end
end
3-4) 클래스변수(Class Variables)
- 클래스 변수는 클래스와 그 하위 클래스 간에 공유되는 변수로 @@기로호 시작된다.
class Age
@@age = 20
def getLength
put @@age
end
end