What is wrong with it
해결책
-함수를 나누고, 바로 리턴하기 !!
-고차함수 사용하기(map,filter,reduce) - 이후 강의
-명령형에서 선언형 코드로 바꿔보는 연습하기 - 이후 강의
CASE 1
이렇게 임시 객체가 생기는 순간
객체에 접근해서 CRUD(조작) 한 후에 리턴만 하면 된다고 생각하기 쉬움
리팩터링 1
- clearer
리팩터링 2
- 객체 자체 리턴하기 => CRUD 차단
- causing much less side effects
CASE 2
특정 date obj를 받아서 월,날짜,시간을 뽑아서 CRUD하고 리턴함
- 추가적인 spec을 넣거나 마케팅적인 요소로
날짜
에 대한 요구사항이 생겼을 때?
- 함수 추가
- 해당 함수를 유지보수/수정 => 이 함수를 사용하는 모든 곳에서 재확인해야함
리팩터링 1
- let 을 const로 바꾸고 (수정/재할당 금지) => 바로 리턴하도록 변경
임시변수 줄이기!
CASE 3
간단하게 연산을 return하는 함수이지만
(미래에 누군가) 중간에 코드를 넣고 조작할 수 있는 가능성 있음
하나의 역할
만 하는 함수`로 만드는 것이 중요
CASE 4
자바스크립트 초심자들이 많이 짜는 코드 sample
변수temp
의 값이 계속 바뀌면서 예측하기 어려움
- 임시 변수를 사용하지 않는 방법을 많이 고민하기!
👸원래 쉽게 감동을 잘 받는 사람이지만 이 강의도 진짜 X100
알차고 좋음!!
(feat. 하지 말라고 하는 거 다하고 있던 1인)