본문 바로가기

Life/TIL

20200925 T.I.L

 

 

오늘 할 일 

 

상태 관리에 대해 많은 정리가 되는 날이었다. 

머리로 간단히 이해를 하고 코드숨 슬랙에서 어떤 분이 나와 같은 고민을 하셔서 글로 정리를 해서 올렸더니 정리가 착착 잘 되는 느낌이었다. 

 

const [todoList, setTodoList] = useState([]);
const [todoInput, setTodoInput] = useState('');

 

이 코드에 대한 답변으로 이렇게 답했다. 

 

"간단한 앱을 만들 때는 저렇게 상태 관리를 하면 todoInput값과 todoList값 이렇게 두 개로 서로 연동이 되지 않게 관리를 해주어서 todoInput값이 변화할 때 쓸데없이 todoList값까지 재할당이 되지 않는 장점이 있지만  관리하는 상태 값들이 많아지면 코드 자체가 길어져 가독성이 떨어질 수도 있을 것 같습니다.  또 한 번에 여러 개의 상태 값을 변경하는 경우는 오히려 재할당이 더 많이 이루어지기도 할 거고요. 그래서 const [state, setState] = useState({ todoInput: '',  todoList: []}); 이 코드가 크게 봤을 때 더 효과적인 상태 관리라고 저는 생각합니다. 이렇게 하면 하나의 상태로 관리도 가능하고 spread 문법으로 어떤 값 만을 변경하는지도 명시해줄 수 있는 장점이 있습니다." 

 

+ 이것말고도 리덕스의 상태 구조와 같다는 사실도 있다.

 

또 무언가 early return을 할 때 이렇게 방어하는 로직보다는 먼저 그 방어할만한 것을 원천적으로 할 수 없도록 하는 방법을 먼저 찾아봐야 한다는 걸 느끼게 됐다.  

그리고 언제나 이름짓기는 최종 보스다. 최종 보스 마스터하는 날이 왔으면 좋겠다 ㅋㅋㅋ

 

 

+ 다른 분들의 풀 리퀘를 보면서 나는 참 글을 못쓴다는 생각이 들었다 ㅜㅜㅜ 글 쓰고 정리하고 이게 증말 너무 힘들다. 다들 어쩜 그리 정리를 잘하시는지.. 부럽다. 나도 점점 노력해서 잘 써 봐야겠다. 

 

 

 

'Life > TIL' 카테고리의 다른 글

20200928 T.I.L  (0) 2020.09.28
20200926 T.I.L  (0) 2020.09.26
20200924 T.I.L  (0) 2020.09.24
20200923 T.I.L  (0) 2020.09.23
20200922 T.I.L  (0) 2020.09.22