전체 글 103

(항해99)의 4주차 (220328-220403) WIL

항해를 시작하고 가장 어려웠던 한 주가 지나갔다. 재밌게만 느껴지던 코드가 정말 어렵다는 생각이 들었고 남들은 잘 이해하는 것 같은 개념도 잘 이해가 되지 않아 힘들었다. 특히 과제로 단어장을 만들어보면서 여러 번 위기가 있었는데 결국 마지막에 가서는 잘 마무리할 수 있어서 다행이었다. 하지만 이런 고민들이 있어서 리액트와 좀 더 깊이 알게 된 것 같다. 중간에 한 번 코드를 통째로 갈아엎을 때는 무섭기도 했지만 그러면서 state를 어떤 방식으로 써야 하는지도, props가 왜 중요한 개념인지도 조금은 느낄 수 있었다. 코드가 눈에 들어오지 않아 손으로 쓰면서 분석해보기도 했는데 화면으로 다른 사람 코드를 읽는 연습도 필요하다는 생각이 들었다. 리덕스에 파이어베이스까지 사용하다보니 구조가 점점 복잡해지..

promise와 then / async와 await

자바스크립트의 함수 실행 - 위에서 아래로 읽어내려오면서 코드를 실행한다. - 선언된 함수가 아닌 호출된 함수를 실행한다. - 싱글스레드 언어로 작업을 순차적으로 하나씩 실행한다. - 하지만 웹API에 비동기작업을 위임하고 동시에 다음 작업을 진행할 수 있다. 비동기작업의 처리 과정: ① 콜스택(실행할 함수가 쌓이는 곳)에 콜이 쌓인다. ② 비동기작업은 웹API로 위임한다. (웹API는? : Ajax, setTimeout(), Dom등 브라우저에서 제공하는 API) ③ 웹API에서 작업이 완료되면 콜백큐에 결과(콜백함수)를 전달 ④ 콜백큐에서는 콜스택으로 다시 함수를 보내고, 콜스택에서 함수가 처리된다. 비동기 작업이 중첩되는 경우 관리가 힘들어지고 이를 콜백헬이라고 부른다. promise는 비동기작업의..

Today I Learned 2022.04.03

(항해27일차) 220401 리액트 주특기 15일차

달이 바뀌었다! 동시에 항해에서의 마지막 주특기 주차도 시작됐다. 어제까지의 뿌듯함을 비웃기라도 하듯 새로 받은 강의와 과제는 엄청났다. 한 편으로는 걱정하면서도 이번 주차를 보내면 비로소 로그인 기능이 있는, 있을게 다 있는 사이트를 만들 수 있다는 사실이 기대된다. 강의는 시작부터 만만치 않았다. 분명 공부하면서 어디선가 봤거나, TIL에 까지 썼던 내용들인데 또 새로운 내용들이 많다. 오늘 가장 열심히 공부한 부분은 폴더구조이다. 지난번 파이어베이스를 쓰면서 잘 정리된 프로젝트의 중요성을 뼈저리게 실감해 더 집중해서 강의를 들을 수 있었다. 이번 프로젝트에서 얼마나 잘 정리된 코드를 작성할 수 있을지는 모르겠지만 최대한 신경써야겠다. 또 한가지 목표는 컴포넌트를 잘 구성해보는 것이다. 1. 위에서부..