Ruby - code block

Minsoo·2021년 9월 21일
0

Ruby

목록 보기
3/8
post-thumbnail
 # 루비 점점 흥미로워진다. 파이썬보다 훨씬 매력적인 언어라고 생각한다.  

code block

1. block + function

4.times() {code}
5.times() {|i| puts i} # 0부터 4까지 코드 반복
a= 3
a.upto() {code}

2. block + iteration

5.times() {|i| puts i}

i =0 
while i <5
 puts i 
 i += 1
end
  • 같은 결과를 갖는 코드. 위의 코드가 직관적이고 코드양도 적으며 여러가지 간섭, 영향받을 가능성이 더 적다. 사실 times 코드를 뜯어보면 반복문 함수가 들어있으므로 while을 이해하는 것이 중요.
  • 짧은 반복정도는 첫번째 코드 사용이 권장되지만, 이것외에는 다목적 사용에 한계가 있고 두번째는 다목적으로 사용가능하다.
  • trade off. 두개 코드 장단점 서로 다름 좋은 선택은 개발자의 몫임을 잊지말자.

2. block + Array

  • 어레이 안 요소를 하나하나 꺼내는 방법
>1번

["A", "b", "C"].each() {|i| puts i.downcase()}
- 더 직관적임 
>2번

arr = ["A", "b", "C"]
for i in arr 
 puts value
end

- 목표가 좀 더 분명하게 드러남
  • 요소 삭제
arr = [1,2,56,13,7,52]
arr.delete_if() {|i| i > 7}
puts arr

>> output 
1
3
7
  • block이 여러줄인 경우 do end 권장.
    1줄이면 { } 권장
arr = [1,2,56,13,7,52]
arr.delete_if() do|i| 
i > 7 
end

puts arr
profile
Hello all 👋🏻 📍London

0개의 댓글