Life/TIL (239) 썸네일형 리스트형 20200924 T.I.L 오늘 한 일 오늘은 이제 리뷰받은 부분들을 자잘하게 수정하는 것보다 원천적인 고민을 더 오래 하는 날이었던 거 같다. 사실 코드를 요청받은 고치는 것은 어렵지 않았다. 수정 요청받은 부분들은 충분히 내가 놓치고 있는 자잘한 부분들이기도 했고 혼자서는 알 수 없었던 궁금증이 해소되는 부분들이기도 했다. 중요한 건 역시 상태 관리에 관한 내용이었던 것 같다. state의 데이터를 어떤 구조로 어떻게 관리할 것인가에 관련된 것 말이다. 계속 리액트로 컴포넌트를 만들다 보니 상태 관리 라이브러리의 중요성을 너무너무 너무 느끼고 있다 ㅜㅜㅜㅜ 와 이 과제가 이렇게 나를 자연스레 리덕스로 이끄네~ 하는 느낌이랄까. 인강에서 리덕스에 대한 부분들이 나와서 자꾸 인강으로 회귀하게 된다ㅋㅋㅋ 근데 최대 단점은 영어 강의.. 20200923 T.I.L 오늘 한 일 자료구조에 대한 건 정말 어렵다 ㅜㅜ. 오늘은 리뷰를 받았는데도 리뷰에 대하 이해가 잘 가지 않았다. 객체와 배열을 어떻게 잘 구성하는지 아직은 완전 술술 쓸 정도로 익숙해지지는 않았나 보다. 이 부분에 대한 질문을 장황하게 다시 질문으로 달아두고 다른 작은 부분들을 수정했다. 사실 자잘한 부분들은 금방금방 수정해내기도 했고 고민하는데 오래 걸리진 않았지만 중요한 부분은 큰 문제들이다. 원론적인 문제들, 자료구조를 어떻게 만들 것인가? 컴포넌트의 재사용할 때 상태 관리의 중요성과 어떻게 관리할 것인가 하는 문제들 말이다. 많이 고민해보고 또 고민해보지만 이 부분들은 혼자 고민만 하는 것이 아닌 여러 공부와 조언들이 필요한 부분인 거 같다. 오전에서 오후까지 또 계속 고민하다 고민 부분을 다시.. 20200922 T.I.L 오늘 한 일 어제 Counter App을 만들면서 제일 의문으로 남고 찝찝했던 부분이 내가 짧은 코드를 작성하고 있기도 하지만 작은 컴포넌트를 바로 적용해 주지 않고 상위 컴포넌트로 감싸서 적용시켜주는 부분이 왜 필요한지 이해가 부족했던 거였다. 물론 상위 컴포넌트의 이름을 의도가 내포되어있게 짓기는 하지만 그게 컴포넌트 파일을 하나 더 만드는 수고를 할만한 가치가 있는가 싶었다. 그게 리뷰를 받으며 조언을 받고 싶었던 부분이었는데 오늘 정말 깔끔하게 이해가 됐다. 어마어마한 양의 코드를 작성하고 여기저기서 코드를 재사용하게 된다면 그리고 그 각각들이 다 다른 부분과 기능, 스타일까지 가진다면 과연 내가 이것들을 잘 분리하고 기능과 스타일을 부여할 수 있을까? 반드시 묶어줄, 구분시켜줄 상위 컴포넌트가 .. 20200921 T.I.L 오늘 한 일 저번 주의 두 번째 과제까지 통과를 받고 오늘은 새로운 내용을 배우기 시작했다. 리액트의 기본에 대해 배우고 있는데 내가 흥미롭게 느낀 점은 클래스 컴포넌트와 함께 배우는 것이 아닌 바로 훅스를 이용한 함수 선언 컴포넌트로 넘어갔다는 것이다. 리액트 공식 사이트에서도 훅스 사용을 권장하고 있고 현업에서는 훅스가 더 많이 쓰이기 때문에 훅스로 배워두어도 상관은 없지만 그래도 전에 클래스로 리액트 컴포넌트를 배웠었던 것이 다행이라는 생각도 든다. 뭔가 이중으로 배우면 함수의 동작원리나 라이프사이클에 대한 이해가 잘된다고나 할까..(기분 탓일지도 모른다.) 리액트와 리액트 돔, 컴포넌트와 props, 그리고 useState등 리액트로 DOM을 구성하는 법의 기초를 배우고 첫 번째 과제를 하기 시작.. 20200919 T.I.L 또 다음날 쓰는 19일 T.I.L 요즘 코딩에 집중하다 보니 자꾸 T.I.L을 잊어버리나 보다.. 두 번째 다음날 잊어버리기 전에 얼른 작성하는 T.I.L 하루 종일 고민하고 노력했던 부분은 if문에서 else를 사용하지 않는 법이었다. else를 사용한다는 것 자체가 SRP위반이기도 하고 의도한 바를 더 정확하게 표현하기 위해서는 Guard Clause방식을 사용하는 것이 더 효과적이기 때문에 else문 대신 Guard Clause를사용해주어야한다. 또 중요하게 배웠던 점 하나가 파라미터의 객체화였다. 파라미터들이 늘어나면 늘어날수록 코드가 길어지면 길어질수록 가독성 면에서나 의미적인 면에서나 파라미터를 객체화시켜주는 것이 좋다. 이 부분을 이해하기까지 조금 오래 걸린듯하다. 왜냐하면 객체화를 시키면 .. 20200918 T.I.L 오늘 한 일 첫 번째 과제가 통과되고 두 번째 계산기를 구현하는 과제 올렸던 것 리뷰를 확인했다. 그 부분과 내가 더 고치고 싶었던 부분까지 고치기 시작했다. 한 작업들을 크게 나눠보자면 return 부분의 html 코드를 작성하는 부분의 onClick함수들을 return문 밖으로 빼서 함수를 분리해서 따로 선언해주었다. 가독성을 위해 꼭 필요한 부분이었는데 나중에 해야지 하다가 미루다 미쳐 잊어버리고 고치지 못했던 부분이었다. 이런 것을 보면 나는 정말 간과하고 있는 것들이 많은 것 같아 더 꼼꼼해져야겠다. 재할당 방지를 위해 render함수에 파라미터를 직접 넣어주어 화면을 재구현하는 방법으로 갔다. 또 오류가 나는 상황들을 예외처리를 해주어 해결해주었다. 연산자를 연속으로 누를 경우와 처음 숫자가 .. 20200917 T.I.L 오늘 한 일 리뷰받은 부분들: 파라미터 명을 value 같은 모호한 것이 아닌 의미 있게 짓기. 예외처리가 없도록 기본값을 정해주기. 오전에는 이 두 부분들을 간단하게 해결했다. 사실 어려운 부분이 아닌데 쉽게 간과하게 되는 부분들 인 것 같다. 이럴 때마다 내가 더 꼼꼼해져야 한다는 걸 느낀다. 또 오전에 해야하는 코딩이 일찍 끝나서 지금 과제가 통과가 아니라서 아직 다음 과제로 넘어가지는 못하지만 혼자 다음 과제를 같이 진행하기로 결정했다. jsx만으로 계산기를 구현하는 것인데 정말... 후... 자바스크립트보다도 어렵고 리액트로 만드는 것 보다도 고민이 더 되는 작업이다. 오전 내내 eval함수를 이용해서 잘 구현해냈다. 테스트 코드도 통과했는데 문제는 eval함수를 사용했다는 것... eval함수.. 20200916 T.I.L 오늘 한 일 어제 올렸던 과제의 코드 리뷰를 받았다. 과제 내용이 jsx를 이용하여 DOM을 조작하는 내용이었는데 주요 키포인트는 변수를 사용해서 데이터를 할당하는 것이 재할당을 일으키고 그렇다면 코드의 예측 가능성이 낮아지므로 좋지 않은 방법이기 때문에 다른 방법을 찾아야 한다는 점이었다. 이점은 함수 자체로 값을 변경하는 함수로 만들어 주어 해결했다. 그리고 그냥 적었던 버튼을 타입이 필요하다는 리뷰를 받았다. 이 이후에 제대로 왜 버튼에 타입을 적어줘야 하는지 찾아보기 시작했다. 그제야 button 기본 속성이 submit이라서 필요한 기능이 submit이 아니고 함수 내용을 구현해야 하는 기능이었으므로 button으로 속성을 지정해줘야 한다는 것을 알게 되었다. 또 no-use-before-def.. 이전 1 ··· 21 22 23 24 25 26 27 ··· 30 다음