잡담

이벤트를 이용한 반복문과 루비 자체의 반복문은 극심한 차이를 보이네요

by revolutia posted Jun 17, 2016
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

연산 성능이 극과 극을 달리는 듯 합니다. 루비 자체 명령어를 애용해보세요. 분명 차이가 느껴지실겁니다. 실시간으로 처리하는 스크립트가 많다면 특히나요.

 

(1) 루비 자체의 반복문을 사용하는 경우

(a..b).each do |i|
(i번째 실행할 스크립트)
end

 

이 결과는

 

(2) c언어로 치자면

for(i=a;i<=b;i++)

와 같은 효과를 가지게 되고,

 

(3) 이벤트로 보면

변수 i에 a를 대입한다.

라벨 1

조건분기 변수 i가 b보다 작거나 같다

 (i번째 실행할 스크립트)

 변수 i에 1을 가산한다.

 라벨 1로 돌아간다.

종료

 

(2)번의 케이스는 C라이브러리를 임포트하기전엔 못본다 치더라도, (1), (3)의 연산속도차이는 엄청납니다.