[TIL 1/25] Javascript Design

Song-YunMin·2021년 1월 25일
1

TIL

목록 보기
8/29
post-thumbnail

오늘의 회고

오늘은 그동안 진행했던 Mini Project를 검토받고 이후에 있을 Mid Term Project 주제를 정하는 시간을 가졌다. 사실 오늘 Mid Term Project 기능 구현에 필요한 기능을 정의하고 나름의 스케줄 보드(칸반보드)도 만들어서 계획을 세우려고 했으나.. 아직 Mini Project에 개선해야 할 점이 많이 있었다. 그래서 내일까지는 Mini Project의 구조를 개선하는 작업을 진행하려고 한다.
확실히 회사를 들어오고 매우 실력이 좋은 CTO님께 피드백을 받다보니 대학에서와 많이 달랐다. 가장 큰 차이점을 딱 정의하자면 대학은 결과물 중심 이였고, 이곳은 철저한 코드 품질 중심이다.
어떻게든 돌아가면 코드를 하나하나 까서 리뷰받는 일은 대학에선 정말 흔치 않은 일이다. 당연히 그럴 것이다. 한과목에 적으면 40명 많으면 70명이 육박하니 하나하나 그 코드를 까보는 것도 말이 안된다. 그래서 이러한 방법을 대학에서 많이 못배워 온것 같다.

오늘 학습한 것(피드백 받은 것..?)

  • 변수 및 클래스 네이밍에 조금 더 신경쓸 것
  • 부모-자식 커플링 문제
  • javascriptremove() 메서드 문제
  • javascriptGarbage Collecting 정책 (중요)

변수 및 클래스 네이밍

구현체에 집중하다 보니 나도 모르게 변수명을'icon' 이라면 i, 'folder' 라면 f 같은 식으로 변수명을 명명했었다. 개인적으로 '아 나는 저럴일 없음 ㅋㅋ' 이라고 생각했던 나 자신이 창피해 지는 순간이였다.. 특히나 혼자하는 프로젝트가 아니라면 네이밍은 매우 중요할 것 같다. 동료가 네이밍을 보고 나랑 밥을 안먹을 수도 있다.

부모-자식 커플링 문제

부모 - 자식 커플링 문제란, 부모가 자식을 참조하는 것은 문제가 없으나, 자식이 억지로 상위 요소(부모)를 참조하면 결합도가 높아진다는 뜻이다. 이럴때 쓰일 수 있는 방법은 여러가지가 있으나, 보통 자식요소로 인해 부모요소의 변경이 필요할 때는 자식요소에 이벤트를 달아놓고 부모요소가 Listening 하면 대부분 해결이 가능하다.

Javascriptremove() 메서드 문제

remove() 메서드는 유용한 메서드다. 해당 DOM의 요소를 삭제하는 메서드인데, 문제는 DOM상에서 삭제가 되는 것이고, 정작 Memory에선 해제가 되지 않는다. 물론 이 문제는 해결이 쉽지 않다.
우선 Garbage Colletion을 이해해야 하고, 정책을 알아야 한다.
Garbage Colletion 의 정책에 관해선 아예 따로 게시글로 포스팅 하려고 한다.

profile
고독한 서버 개발 3년차

0개의 댓글