Todos (할 것) HTML 삽입 미리보기할 수 없는 소스 Finding (새로 알게 된 것) - moment - 언어팩 지원, 타임존 - dayjs - date-fns Feeling (느낀 점) - 여태 Date 관련 라이브러리는 moment만 사용했다. 가장 유명하고 보편적으로 사용되니 아무 생각없이 moment를 사용하였는데 이제보니 moment는 아직 유용하기는 하지만 레거시 라이브러리가 된 것을 보니 내가 너무 매사에 안일하기도 하고 참 프론트엔드 개발자의 트렌드가 빠르게 바뀌긴 하다는것을 또 체감하게 되었다. 역시 개발자는 평생 공부해야되는구나.. 싶었다. Affirmation(자기 선언) - 앞으로 시작하는 프로젝트에서 moment 사용하지 않기. - 이미 알고있는 라이브러리가 있다고 해서..
Todos (할 것) HTML 삽입 미리보기할 수 없는 소스 Finding (새로 알게 된 것) - ISR (Incremental Static Regeneration) - 정적인 페이지를 일정 시간마다 다시 업데이트해준다. - fallback: 'blocking' - fallback이 true와 비슷하지만 props가 올때까지 까지 다른 처리없이 그저 기다린다. - getServerSideProps - getStaticProps 와 비슷하지만 req, res, query등 을 받을 수 있다. - router의 shallow - path는 변경하지 않으면서 쿼리만 변경할 수 있게 해준다. Feeling (느낀 점) - NextJS를 사실 전회사에서 한 번 사용해본적이 있어서 이미 잘 알고있다고 생각했는데 ..
Facts (한것) - 드림코딩 TDD 완강 Finding (새로 알게 된 것) - Jest의 유용한 내장함수 ex) mock Feeling (느낀 점) - TEST가 사실 하면 좋다는 말을 듣기만 해봤는데 실제로 적용을 해보고 어떤점이 좋은지 와닿았다. 자세한 내용은 포스팅 참고 Affirmation(자기 선언) - 3주안에 회사프로젝트에 테스트 적용. - 앞으로 작성하는 모든 프로젝트에 최대한 테스트 추가하기.
TDD (Test-driven development) 테스트를 하는 이유? QA팀이 있다면 회사입장에서도 리소스 ( 병목현상, 인건비, 시간) 가 발생한다. 개발팀도 QA팀이 뒤늦게 발견한다면 에러를 나중에 수정해야한다. 테스트 자동화 에러 발생확률 낮음 꼼꼼히 작성한다면 다시 코드를 안봐도 되는 불안감 해소효과?? 리팩터링하기 부담스럽지 않음 유지보수가 용이해짐 코드의 품질향상 코드의 문서화 테스트 피라미드 Unit Test (단위 테스트){함수, 클래스, 모듈} => Integration Test(통합 테스트){상호작용 테스트} => End to End Test (UI 테스트){사용자 테스트} 피라미드라고 부르는 이유? 밑에서 위로 올라갈 수록 리소스가 많이 든다. 가장 쉬운것이 Unit 테스트 이므..
Facts (한것) - 모던 자바스크립트 Deep Dive 7, 8, 9, 10, 11 다시 읽기 - 드림코딩 TDD 구매 및 챕터 1듣기 Finding (새로 알게 된 것) - UI 테스트 Feeling (느낀 점) - TDD강의를 듣다보니 내가 하고 있는 테스트가 완전하지도 않고 또 테스트를 생각보다 넓은 범위에서 할 수 있는것을 알게되었다. Affirmation(자기 선언) - TDD강의 이번주내로 완강 후 회사 프로젝트 적용
Facts (한것) - Node JS 서버 챕터 6까지 듣기. - 자바스크립트 Deep Dive 4, 5, 6장 다시 읽기 - 개발자의 글쓰기 책 구매 Finding (새로 알게 된 것) - 파수리 라는 단어 - 세션, 쿠키, 멀터, 라우터 Feeling (느낀 점) - 글을 쓰는데 너무 정리정돈이 안되있는 느낌을 받아서 개발자의 글쓰기라는 책을 읽어보기로 했다. Affirmation(자기 선언) - 개발자의 글쓰기 책 한달안에 완전히 읽기
Facts (한것) - Express 로 REST API 구현 - 자바스크립트 Deep Dive 3장 다시 읽기 Finding (새로 알게 된 것) - Express 활용법 Feeling (느낀 점) - 역시 책은 여러번 읽어야된다.. 다시 읽어보니 다시 새롭게 읽는 느낌이다.. 자바스크립트 Deep Dive는 최소 5번은 완독해야겠다. Affirmation(자기 선언)
실행컨텍스트란? 실행컨텍스트란 자바스크립트의 실행하는 환경정보들을 모아놓은 객체이다. 이 실행컨텍스트에 대해서 알게된다면 호이스팅에 대해서도 바로 이해할 수 있다. 콜스택은 Stack구조로 되어있는 FILO 이다. 코드가 실행된다면 실행 할 코드를 콜스택에 넣는다. const context = () => { inner(); // inner함수 실행 2 console.log('inner'); // inner출력 8 const inner = () => { inner2(); // inner2함수 실행 3 console.log('inner1'); // inner1 출력 7 } const inner2 = () => { inner3(); // inner3함수 실행 4 console.log('inner2'); // ..
변수의 타입 변수의 동작 방식을 알려면 우선 변수의 타입을 먼저 알아야한다. 자바스크립트의 변수에는 크게 원시형, 참조형 두 가지가 있다. 타입이 필요한 이유 값을 저장할 때 확보해야 하는 메모리공간의 크기를 결정하기 위해 값을 참조할 때 한 번에 읽어 들여야 할 메모리 공간의 크기를 결정하기 위해 메모리에서 읽어 들인 2진수를 어떻게 해석할지 결정하기 위해 출처:모던 자바스크립트 Deep Dive 원시형이란? 식별자가 데이터가 들어있는 주소값을 갖고 있다. Number String Boolean nulll undefined Symbol 참조형이란? 식별자가 데이터들이 들어있는 주소값들을 갖고있는 주소를 갖고 있다. 즉, 참조형이란 데이터들의 집합을 갖고있는 주소의 주소를 갖고있는것이다. 아래의 타입은 ..
NodeJS란? 2009년 라이언 달이 발표한 Node JS는 구글 V8엔진으로 빌드된 자바스크립트 런타임 환경입니다. NodeJS는 단순 런타임 환경! 입니다. 간혹 NodeJS를 JS로 백엔드 언어를 사용 할 수 있게 만들어주는 라이브러리나 프레임워크 정도로 생각하는 사람이 많습니다. - 저도 그랬고.. NodeJS는 브라우저의 자바스크립트 엔진에서만 동작하던 자바스크립트를 브라우저 외에 환경에서도 동작할 수 있도록 자바스크립트 엔진을 브라우저에서 독립시킨 자바스크립트 실행 환경입니다. 독립적인 모듈, 파일 시스템, HTTP등 많은 빌트인 API를 제공합니다. Node.js 는 이벤트 기반의 논블로킹 I/O 모델을 사용해 가볍고 효율적입니다. Node.js의 패키지 생태계인 npm은 세계에서 가장 큰..