19차시. Node 이해
9. 자주 하는 실수
출처: 원본 PDF 19차시_Node이해.pdf 19쪽 · 쪽 그림 19쪽
| 실수 | 올바른 방법 |
|---|---|
| 검색과 생성을 한 노드에서 처리 | 역할당 하나씩 나눕니다. 그래야 사이에 검증을 끼울수 있습니다 |
| 노드 안에서 전역 변수를 수정 | State에서 읽고 반환값으로만 전달합니다 |
| 노드가 print만 하고 아무것도 반환안 함 | 반드시 딕셔너리를 반환합니다. 없으면 빈 dict라도 |
| 노드에서 다음에 갈 곳을 결정 | 흐름 결정은 Edge의 몫입니다 (20차시) |
| 노드 안에서 인덱스를 매번 로드 | 모듈 최상단에서 한 번만 로드하고 재사용합니다 |
| 노드 이름을 명사로 지음 (retriever) | 동사로 짓습니다 (retrieve). 함수는 동작이니까요 |
9-1) 노드가 너무 커졌다면
📏 쪼개야 할 신호
· 함수가 화면 한 장(약 40줄)을 넘어간다
· 함수 안에 주석으로 구간을 나누고 있다
· 반환하는 키가 5개를 넘는다
· 이름에 and나 또는이 들어간다
· "이 부분만 테스트하고 싶은데" 생각이 든다
하나라도 해당되면 쪼개는 것을 고려하세요.
다만 너무 잘게 쪼개도 문제입니다.
노드가 10개를 넘어가면 흐름 파악이 어려워집니다.
실무에서는 3~6개가 적당합니다.