깔끔한 코드를 원하면 "Rule of Six"만 기억하세요
(davidamos.dev)- 읽기 쉽고 이해하기 쉬운 코드는 한줄 한줄이 짧아야 함
- 인간의 뇌는 장기기억(LTM)/단기기억(STM)/작업기억(WM) 세 기능이 같이 동작
- 단기기억과 작업기억 공간은 매우 작아서 한번에 4~6개만 저장 가능
- 즉 코드 한줄이 6+개 이상의 정보를 가지고 있다면, 간소화 해야한다는 것이 "Rule of Six"
- 코드가 복잡하면 분할 - SIMPLE : Split Into MultiPle LinEs
map(lambda x: x.split('=')[1], s.split('?')[1].split('&')[-3:])
을 분할해 보면
query_params = s.split('?')[1].split('&')[-3:]
map(lambda x: x.split('=')[1], query_params)
아직도 6개가 넘으니 다시 분할해 보면
url_query_string = s.split('?')[1]
query_params = url_query_string.split('&')[-3:]
map(lambda x: x.split('=')[1], query_params)
- MORF(Move Out and Rewrite as a Function)전략을 이용하면
def query_params(url):
ㅤㅤquery_string = url.split('?')[1]
ㅤㅤreturn query_string.split('&')[-3:]
map(lambda x: x.split('=')[1], query_params(s))
링크된 글 본문 마지막에 소개된 책은 국내에 프로그래머의 뇌: 훌륭한 프로그래머가 알아야 할 인지과학의 모든 것이라는 이름으로 번역 출간되었습니다. 본문에 소개된 내용이 좀 더 자세히 나와 있지요.