개발 지식

개발 지식

Rust iterator 체인은 길어져도 가독성 유지할 수 있다

페이지 정보

profile_image
영삼이
0건 119회 25-03-28 15:16

본문

✅ iterator 체인은 길어져도 가독성 유지할 수 있다

줄바꿈과 정렬로 복잡한 흐름을 명확하게 만들자


Rust의 반복자(iterator)는 체이닝으로 강력한 기능을 제공한다:

let result: Vec<_> = items
    .iter()
    .filter(|x| x.is_valid())
    .map(|x| x.value * 2)
    .collect();

하지만 체인이 길어지면 한 줄에 쓰기 어렵고,
가독성이 급격히 나빠질 수 있다:

let result = data.iter().filter(|x| x.cond()).map(|x| x.proc()).filter(|x| x.is_ok()).take(10).collect::<Vec<_>>();

✅ 체인은 줄바꿈과 정렬로 정리하자

let result: Vec<_> = data
    .iter()
    .filter(|x| x.cond())
    .map(|x| x.proc())
    .filter(|x| x.is_ok())
    .take(10)
    .collect();
  • 1단계씩 줄바꿈

  • 메서드 체인 앞에 마침표 정렬

  • 읽는 순서 그대로 흐름 파악 가능


추가 팁

  • 필요하면 .inspect(|x| println!("{:?}", x))로 디버깅

  • .collect() 전에 .enumerate() 등 조합 가능


✔️ iterator 체인은 강력하지만,
구조를 드러내는 서식이 없으면 유지보수 어려워진다.
줄바꿈과 정렬로 의도를 명확히 표현하라.

댓글목록

등록된 댓글이 없습니다.