20210807 알고리즘 대폭격 스물아홉번째 주

지난 주는 껌이라고 생각될 정도로 알고리즘 대폭격 당함

배운 것들

알고리즘

  • DFS/BFS 응용 및 Flood Fill
  • 중복순열, 순열, 조합
  • 그래프 자료구조: 인접행렬, 인접리스트 경로탐색
  • Dynamic Programming(동적 계획법): 냅색 알고리즘, LCS(Longest Common Subsequence, 최대부분수열)
  • Union & Find 알고리즘
  • 이분검색, 결정알고리즘
  • Trie 자료구조와 플로이드 워셜 알고리즘

React

  • Hooks의 도입 배경과 만들어진 이유
    • 로직을 추상화하여 사용하면서 class component에서 일어날 수 있는 this 바인딩 혼란을 미연에 방지
    • Life Cycle마다 중복되어있던 로직를 응집시킴으로써 코드응집도를 높인다.
  • Hook 규칙
    • 함수의 최상위에서만 호출 가능하며 반복문, 조건문 등으로 감쌀 수 없다.
    • 이는 React가 여러 component에서 hook을 사용하면서 처음에 전달받은 값이나 반환하는 값을 순서대로 저장하기 때문에, hook의 호출순서가 항상 지켜져야 한다.
  • Error Boundary를 component로 만들기
  • Sentry로 에러 기록 및 관리하기
  • Context API로 전역상태 관리하기

느낀 점

  • React 복습을 채 못한 채로 새로운 수업을 들어서 산처럼 쌓이고 있다. 얼른 복습해야지…
  • 다양한 알고리즘 기법을 고안해낸 사람들이 정말 천재같아서 감탄만 나온다.