본문 바로가기

메가테라 FE 생존코스 12기

[메가테라 FE 생존코스] 6주차 회고

3L 회고

👍 Liked

  • Redux가 어떻게 구현되었는지 직접 눈으로 확인하고 머릿속으로 이해할 수 있어서 좋았다.
  • 지난 주에 테스트 코드를 작성을 열심히 해둬서 그런지 이제 테스트 코드 작성하는데 어려움을 있지만, 두려움은 없다.

📘 Learned

  • 프로그래밍에서 관심사의 분리가 필요한 이유와 Flux 아키텍처를 사용하여 관심사의 분리를 하는 구조를 배웠다.
    • Flux 아키텍처는 기존 MVC 패턴과 달리 단방향 데이터 흐름을 활용하여 데이터가 어떻게 흐르는지 이해하기 쉽다.
    • View: Store에서 제공받은 데이터를 화면에 렌더링한다.
    • Store: 데이터 및 상태를 담고있는 공간이다.
    • Dispatcher: View에게서 전달받은 Action 객체로 특정 로직을 수행하여 Store에 접근하여 데이터 및 상태를 변경하는 로직을 담당한다.
  • TSyringe 라이브러리를 사용하여 직접 External Store를 구현하는 방법을 배웠다.
    • 의존성 주입 라이브러리인 TSyringe 라이브러리를 사용하여 싱글톤 패턴을 기반으로 Store 인터페이스와 Redux를 따라해보며 직접 구현해보면서 Redux가 마법의 상자 같이 뾰로롱하고 등장한 것이 아닌 내부적으로 어떻게 구현이 되었는데 배울 수 있었다.
    • 더 나아가 usestore-ts 라이브러리의 데코레이터를 활용하여 리렌더링을 강제하는 로직(@Action), 스토어를 구현하는 로직(@Store)를 손쉽게 사용해볼 수 있다.

😅 Lacked

  • 강의를 보면서 따라칠 때는 이해가 잘 되었지만, 강의를 끝낸 후 이틀 정도 지난 후 코드를 혼자서 구현해보려고 하니 머릿속이 하얘졌다.
  • 혼자 말하면서 구현할 수 있을정도로 꾸준한 연습이 필요한 것 같다.
  • 5월에 들어서면서 연휴도 많고 약속도 많아서 공부시간을 확보하기 힘들어지는게 아쉽다.. 어떻게든 성장하기 위해서는 공부시간을 틈틈히라도 확보해야겠다.

느낀점

이번주도 지난주와 비슷하게 공부하는 시간을 확보하기가 힘들었다. 하지만 이해하기 힘들정도의 강의 내용은 또 아니어서 집중은 잘 되었던 것 같다. 확실히 비싼 돈 내고 강의를 듣는 이유를 알 것 같다. 이런 것 까지 알아야 하나? 라는 생각이 들때가 있지만 사소한 부분까지 디테일 하게 배워야 진짜 아는 것이라고 생각되었다. 앞으로 사소한 것도 놓치지 않는 프론트엔드 개발자가 되기 위해 더 노력해야겠다.