안녕하세요 멋사3기 Kyunni입니다.
지난 포스팅에 이어서 네 번째 강의에 대한 포스팅을 진행합니다. 강의에서 메인으로 학습하였던 루비의 문법에 대해 주요하게 다루어 보도록 하겠습니다. :)
Ruby에서 가장 기초가 되는 변수의 사용법과 배열의 사용법 및 관련 함수들에 대해 알아보겠습니다.
(프로젝트명: test, 컨트롤러명: lion, 액션명: kyunni.erb)
변수(Variable)
Ruby의 변수는 크게 네 가지로 분류됩니다. 참고로 루비에는 변수의 선언이 존재하지 않습니다.
var |
지역 변수 | - 이름이 소문자나 밑줄(_)로 시작 |
@var |
인스턴스 변수 | - 변수 영역은 self가 가리키는 객체 내부로 제한 (public이 아님) |
@@var |
클래스 변수 | - 해당 클래스의 모든 객체가 공유하며, 클래스 메서드를 통해 접근 가능 |
$var |
젼역 변수 | - 프로그램의 어떠한 곳에서도 사용 가능 |
이제 직접 변수를 생성하고, erb 파일에서 사용하는 방법에 대하여 알아보도록 하겠습니다.
1. controller에서 변수에 값 대입하기
주석의 설명과 같이, hello라는 인스턴스 변수인 @hello 에 "Hello world!"라는 문자열을 대입한 코드 입니다.
2. action에서 변수 출력하기
[결과 화면]
변수에 대입된 문자열이 출력됨을 확인해볼 수 있습니다.
배열(Array)
아래의 코드는 루비에서 배열을 사용하는 방법입니다.
@변수명 = [요소1, 요소2, 요소3, …, ]
ex) @arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
하나의 배열에는 다양한 타입의 객체가 들어갈 수 있습니다.
1. 배열에서 랜덤 값 추출하기
@변수명 = [요소1, 요소2, 요소3, …, ].sample
ex) @sam = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10].sample
@sam이라는 인스턴스 변수에 한 개의 샘플된 값이 대입됩니다.
2. 배열에서 n개의 랜던 값 추출하기
@변수명 = [요소1, 요소2, 요소3, …, ].sample(n)
ex) @samtwo = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10].sample(2)
@samtwo라는 인스턴스 변수에 두 개의 샘플된 값이 대입됩니다.
[결과화면_2]
3. 범위로 배열 대입하기
@변수명 = (start .. end).to_a
ex) @bum = (1..45).to_a
코드 설명을 간단히 하자면, 1부터 45까지의 범위를 to_a라는 함수를 통해서 배열로 변환을 해준 후에, 이를 @bum이라는 변수에 대입해주었음을 의미합니다.
3. 배열 정렬하기
@변수명 = (start .. end).to_a.sample(n).sort
ex) @sorting = (1..45).to_a.sample(5).sort
n개의 랜덤 값이 오름차순으로 정렬됩니다.
[결과화면_3]
'RUBY ON RAILS' 카테고리의 다른 글
Array Hash & 외부 라이브러리 사용법 (0) | 2015.07.20 |
---|---|
Ruby의 기본 문법 (반복문과 조건문) + <form> 태그 (0) | 2015.07.14 |
Ruby 언어의 정의 및 특징 (0) | 2015.07.12 |
Ruby 프로젝트의 전반적인 이해 (0) | 2015.07.08 |
크롬 개발자도구 (1) | 2015.07.08 |