앞으로 1주일, 1개월 단위로 회고록을 작성하고자 한다.

Jest

회사 동료분과 미니 프로젝트를 진행하면서 node.js를 공부해볼 겸 사용해보기로 했고, 그래서 MongoDB, express.js, jest, TypeScript 등 평소에 써보고 싶었던 것들을 사용하기로 했다.

jest를 약 1주일간 사용해보면서 느낀 바로는 JUnit계열보다 사용하기 더 편리하다는 것이다. 나는 지금 회사에서 PHP개발자로 있기 때문에 주로 PHPUnit을 사용해왔는데, 일단 테스트 객체를 만들고 여기에 메서드를 추가해가면서 테스트코드를 짜는게 describetest(it)으로 테스트 코드를 짜는 것과 크게 다르진 않았다.

다만, describe가 하나의 스코프를 생성한다는 점, setUp이나 tearDown함수들인 beforeafter계열이 이런 스코프와 연계하여 동작한다는 점 등이 마음에 들었다. 이 엄청난 자유도... 여윽씨 자바스크립트👍

TypeScript

나는 자바스크립트를 좋아한다. 그런데 동적타입언어를 좋아하진 않는다. 개인적으로 프로그래밍은 예측가능한게 좋다고 생각한다. 진짜 예외의 경우가 아니고서야, 보통 버그가 발생하면

  1. 내가 코드를 개떡같이 짰다.
  2. 내가 논리를 멍청하게 생각했다.

내가 잘못했을 가능성이 99%이다. 컴퓨터는 잘못이 없다. 컴퓨터는 정말 시키는대로만 하는 아주 정직한 녀석이다. 컴퓨터는 태생이 이런 녀석이니 예측가능한 결과가 나와야 좋은게 아닐까 하고 생각한다. 타입스크립트는 자바스크립트에 이런 예측가능성을 부여해주기 때문에 너무 좋은 것 같다. 앞으로 자바스크립트를 개발할 땐 타입스크립트를 무조건 쓸 것 같다.

DDD

DDD를 공부하긴 했는데, 실제로 적용해보진 못했었다. 그런데 확실히 매번 느끼지만, 공부만으로 끝나면 답이 없다. 무조건 만들어봐야 한다. 일단 만들고, 공부했던 내용을 찾아가면서 적용을 해봐야 조금 알게 된다. 공부는 일종의 인덱싱 과정이라고 생각한다. 아 그런게 있었지? 라는 것을 느끼는 과정이라고 생각한다.

난 암기력이 좋지 못하다. 날 잘 아는 사람들은 내가 잘 까먹는다는 것을 알고 있다. 군생활 할 때에도 군수행정병으로 있었는데, 행보관님이 시키신 일을 맨날 까먹어서 항상 털렸었다. 행보관님 입장에선 거의 폐급수준이었겠지(죄송합니다 행보관님 😭)...

아무튼, 그래서 메모하는 습관을 늘리고 있고 요즘은 Notion을 많이 활용하고 있다. 그리고 회사 동료분이 TIL에 대해 알려주셔서 이것도 시작했다 :-)

결론은 나는 암기력이 좋지 못하다. 그러니까 이걸 인정하고, 공부할 때 외우려고 하지 않는다. 어차피 까먹을거니깐. 대신 느낌을 얻어가려고 많이 노력한다. 이런게 있었지? 이것만 되면 나는 성공했다고 생각한다.

이번에 DDD로 개발하면서 예전에 정리했던 노트들을 많이 뒤적거렸다. 결국 다 까먹었더라... 그래도 큰 그림은 어느 정도 잡혀있어서 좀 수월했던 것 같다.

(그런데 글을 적다보니 DDD에 관한 글이 아니라 깨달음을 적었네)

총평

아무튼 자바스크립트는 재밌다. 타입스크립트는 더재밌다. DDD는 좀 더 익숙해지면 좋을 것 같다. 테스트 코드를 작성하는 것도 재밌다.