21.08.29

Younchong·2021년 8월 29일
0

VC prep-course

목록 보기
6/9

Week 6.

이번 주

  • Prototype 공부
    과제가 지난 과제들에 비해 굉장히 어려웠고, 힘들었다.
    스스로 온전히 해낸거 같지 않아 조금 부끄럽고 반성한다.
    남은 과제들은 나에게 절대 떳떳하게 과제를 수행하자. 그래야 과정에서 더 많이 배우는 것 같다.
    그래도 처음 물꼬가 트인 후에는 쉽게 이해하고 구현했다.

    여러번읽어봤던 코어자바스크립트 prototype 부분이 강의를 듣고 들으니 확실히 이해가 됐고,
    Constructor와 prototype관계, proto 들도 모두 이해가 됐다.

    처음 이해가 안갔던 부분은 prototype chain 시에
    함수에서 function.prototype에 대해서 prototype 하면 Function.prototype이 아닌 Object.prototype으로 가는 것이었다.
    function.prototype 이 객체라고 이해한 후 (prototype은 객체이다.) 자연스레 이해 됐다.

    그리고 항상 console.log 로만 결과를 봐왔는데 debugger사용하면 디버깅하는 법 을 배우고 적용해서 조금 더 익숙해졌다.
    앞으로 꾸준히 사용하고 익숙해지자. 훨씬 더 편하게끔.

  • 코딩테스트 연습
    알고리즘 문제 이번주에 4문제 풀었다.
    오피스 아워에서 습관처럼, 꾸준히 풀라는 답변을 들어서 과제를 우선 마치고, 그리고 주말에 주로 풀었다.
    확실히 이전보다 메소드들에 익숙해졌다. (프로그래머스 level 1)

  • 생활코딩으르 git공부
    터미널 사용이 익숙치 않고, git이해가 떨어져서, CLI2 이전에 POSIX 이해완료.

코드리뷰

  1. 전달인자 변형에 따른 네이밍 고려
    전달 인자로 사용됐던 함수를 (리턴값을 배열로 바꿈) 수정했는데 그에 맞춰 네이밍을 했엇어야됐는데 그대로 두고 배열로 사용했다.
    배열로 사용했더라면 그에 맞춘 네이밍을 하거나
    아니면 전달 인자를 수정해서 가독성을 높혔어야했다.
  1. 주석을 적을 때 또한 위 아래롤 new line을 넣어주자!
  1. querySelector에서 찾고자하는 선택자가 복수라면 띄어쓰기로 구분하여 작성할 수 있다.
    예를 들어 className 이 head 이고 그안에 p가 있다면
    나는 나눠서 하나씩 선택했는데 그러지 말고
    Const aim = document.querySelector(“.head p”); 로 선택가능하다.
  1. 약어 사용은 명확하더라도 최대한 자제하자. 오해유발 가능성 높힘…
  1. 생성자함수로 만들어진 instance 네이밍시 명사 네이밍!! 함수네이밍이 아니다
  1. setInterval은 clearInterval로 사용중지 하지 않으면 메모리 누수가 생길 수 있다.
    자바스크립트 메모리누수 4가지 형태
  • 우발적으로 생성된 전역변수
  • 잊혀진 타이머 또는 콜백함수
  • DOM외부에서 참조
  • 특정한 경우의 closure

여기서 두번째에 해당하는 경우인데, setInterval을 단독으로 사용하면 내부함수가 사용에 따라 GC에 수거되지 않고, 그에 따라서 매우 큰 데이터를 가질 수도 있는 data변수들도 수집되지않는다. 그래서 큰 메모리를 가지고 있게 될 수 도 있다.
이러한 형태를 observer라고 하고, 명시적으로 제거하는게 중요하다.

  1. innerHTML 사용실수…
    innerHTML은 보안문제와 성능문제로 거의 사용하지 않는걸로 저번 피드백때 알게 됐고, textContent로 충분히 구현할 수 있는 문제 였는데, 과제 구현만 생각하다가 기본적인 부분을 놓쳤다.
    반성하자.
    절대 한번 받았던 지적은 다시 받지 말자!

오는 주!

오는 주의 과제는 더 어렵고 중요하다고 말씀하셨다.
온전히 나의 힘으로, 고민으로 구현하기를 스스로 약속하자!
너무 스트레스 받지말고 적절히 조절하자.
그래도 과제 너무 재밌고, 몰입의 평화를 느낀다.

알고리즘 문제도 과제 이후에 꾸준히 풀고, 개념도 여러자료 찾아보자!

이번주는 9시간 공부했던날도 있었고, 주말도 크게 안무너졌다.
50시간에 가장 근접했던 한 주였다. (48시간)
하지만 좀 긴장감이 무너진 것 같다.
전역하고 처음 약속했던 부분이 조금 깨졌고, 취침시간, 기상시간 조정이 있었다.
(이건 집중도 높은시간 찾으려고 했던거라 조금 애매)

오는 주는 다시 돌아봤을 때 이보다 더 열심히 할 수 있었을까 싶은 하루로 만들자.
앞으로도 쭉
긴장감이 느슨해졌다.