🤦♀️ 2주 회고
처음 강의 목록만 봤을 땐 이미 다 배운 내용이고, 길이가 짧아 금방 다 들을 거라 생각했습니다.
하지만 8분짜리 강의는 1시간짜리 의문을 만들어 냈고. 분명 배운 내용임에도 제대로 알지 못 했더군요..
그리고, 자료구조를 직접 구현해 본 적이 없어서 더욱 낯설고 어려웠습니다.
내가 알던 지식과 달랐던 개념
1️⃣ 강의
let,const도 호이스팅이 된다?
let과 const 는 호이스팅이 아예 일어나지 않는다고 알았는데, 사실 둘다 선언자체는 호이스팅이 일어나나 할당이 동시에 이뤄지지 않아서 참조할 수 없을 뿐이었습니다.
const로 선언한 배열에 값을 추가할 수 있다?
const는 값이 변하면 안되기 때문에 값을 추가할 수 없다고 생각했습니다. 이벤트 리스너나, for문으로 계속 새로운 const 변수를 만드는 경우가 아니라면 재할당도 불가능하다고 말이죠. 그런데, 예문에서 const로 선언한 배열에 그냥 push로 값을 추가하는 것을 보고 멘붕이 왔습니다.
이는, 배열이 스택엔 주소를 힙엔 실제값을 저장하기 때문입니다.
따라서 push를 해도 스택에 저장된 const 배열의 주소 값은 변하지 않습니다.
2️⃣ 과제
현업에선 for()문 보다 고차배열함수 사용!
//전 for(const [key,child] of currentNode.children){} //후 [...currentNode.children.values()].forEach((node) =>{})
이전엔 for문으로 절차형 코딩이 편해서 고차배열함수보다 더 자주 썼는데, 현업에선 잘 쓰지 않는 형태라는 걸 처음 알았습니다.
파일 마지막 줄바꿈
github에 파일을 올리고 마지막 줄에 no newline at end of file이란 경고문을 봤지만 컴파일에 문제가 없어 무시했습니다. 그런데 관용적으로 줄바꿈을 하고 c언어의 경우 에러가 날 수 있단 점을 알게 됐습니다.
🤔 느낀점
선택과 집중!
2주동안 저의 한계를 깨닳았습니다. 몇개월 동안 그 모든 내용을 머리에 담아 기억하고 전문가가 될 수 있다면 전국민이 개발자가 되지 않았을까요... 전 범인이라 당장 해야할 일에 집중해야 될 것 같습니다.
오프님은 어떻게 공부를 할까?
강의를 들으면서 모르거나, 궁금한 내용이 생기면 멈췄다 이해를 한 후에 이어보는 게 습관입니다. 그런데 데브코스의 경우 심화 과정이라 그런지 간단히 설명만하고 넘어가는 경우가 많아 제가 찾아 볼 내용이 방대했습니다.
😥 당연히 한 번 멈춘 강의는 오랬동안 재생되지 못했고.. 전 망부석처럼 계속 컴퓨터 앞에 앉아있게 됐습니다.

이건 아니다 싶어서 저번주부턴 1회독은 이해가 안되도 그냥 계속 보고, 2회독 부턴 이해가 안된 내용을 간략히 찾아보고 있습니다.
지금 방법이 좀 더 나은 거 같긴 한데, 혹시 오프님만의 공부 팁이 있다면 나눔해 주시겠어요?