자바스크립트는 싱글 스레드 언어로써 동시성을 처리하기 위해 실행 컨텍스트와 Lexical Environment, Environment Record, Outer Environment Reference와 같은 개념들을 사용합니다. 이 포스팅에서는 이러한 개념들을 살펴보고, 어떻게 상호작용하는지 이해해봅시다. 실행 컨텍스트 (Execution Context) 실행 컨텍스트는 코드가 실행되는 환경을 나타냅니다. 자바스크립트 엔진은 실행 컨텍스트 스택을 사용하여 실행 중인 코드의 컨텍스트를 추적합니다. 이 스택에는 전역 컨텍스트와 함수 컨텍스트가 포함될 수 있으며, 호출 스택이라고도 합니다. 전역 컨텍스트 전역 컨텍스트는 코드가 처음 실행될 때 생성되며, 전역 객체와 관련된 변수와 함수를 포함합니다. 전역 컨텍스..
HTTP/2: 무엇이며 왜 중요한가? HTTP/2는 Hypertext Transfer Protocol의 두 번째 주요 버전으로, 웹의 핵심 프로토콜입니다. 이 프로토콜은 웹 브라우저와 웹 서버 간의 통신 방식을 정의합니다. 2015년에 공식적으로 표준화되었으며, 이전 버전인 HTTP/1.1의 한계를 극복하기 위해 설계되었습니다. HTTP/2의 주요 특징 HTTP/2는 다음과 같은 주요 특징을 가지고 있습니다: 다중화(Multiplexing): HTTP/2는 단일 TCP 연결을 통해 여러 요청과 응답 메시지를 동시에 전송할 수 있습니다. 이를 통해 "Head-of-line blocking"이라는 HTTP/1.1의 문제를 해결했습니다. 서버 푸시(Server Push): 이 기능은 서버가 클라이언트의 요청을..
next.js https://dane-itview.tistory.com/entry/Nextjs-datafetch-method Next.js 이 4가지는 뭐가 다를까요? 🤔 getInitialProps / getServerSideProps / getStaticPaths / getStaticProps 여러분, 안녕하세요! Next.js 프레임워크로 멋진 웹사이트를 만들려는 분들을 위해, 제가 오늘 여러분들에게 Next.js에서 사용하는 4가지 데이터 가져오기 기법을 소개해드릴 거예요! 이 글을 통해 dane-itview.tistory.com https://dane-itview.tistory.com/entry/SSR-vs-SSG-Nextjs SSR vs SSG: Next.js의 렌더링 대결! 어떤 것을 택할까..
axios 내부에서 import 구문을 사용해서 생기는 에러로 보인다. babel 설정등을 수정하면 해결될 문제이지만 CRA 특성상 커스텀하는게 더 귀찮다. "test": "react-scripts test --transformIgnorePatterns \"node_modules/(?!axios)/\"", 이런식으로 package.json 에서 test script에 옵션을 추가하면 해결된다. axios 최신 버전에서 생기는 이슈로 보인다. 일반적인 에러가 아니라서 원인을 찾는데 꽤 어려웠음. https://github.com/axios/axios/issues/5101 Jest tests failed after upgrading axios to v1.1.2 · Issue #5101 · axios/axio..
React는 현대 웹 애플리케이션 개발에 널리 사용되는 자바스크립트 라이브러리입니다. 웹 애플리케이션의 성능을 최적화하는 방법 중 하나는 리소스 파일의 크기를 줄이는 것입니다. 이 포스트에서는 React 프로젝트에서 GZIP 압축을 사용하여 성능을 향상시키는 방법에 대해 설명하겠습니다. 왜 GZIP 압축을 사용해야 하는가? 웹 애플리케이션에서 성능 최적화를 위해 GZIP 압축을 사용하면 다음과 같은 이점이 있습니다. 속도 향상: 파일 크기가 줄어들면 웹 브라우저가 빠르게 리소스를 다운로드할 수 있으며, 이로 인해 페이지 로딩 시간이 단축됩니다. 대역폭 절약: 압축된 파일을 전송함으로써 네트워크 대역폭을 절약할 수 있습니다. 이는 특히 모바일 환경에서 중요한 요소입니다. React 프로젝트에서 GZIP 압..
FIRST 원칙 안녕하세요 여러분, 오늘은 소프트웨어 테스트 분야에서 중요한 원칙 중 하나인 FIRST원칙에 대해 알아보도록 하겠습니다. 이 원칙은 테스트 과정을 더 효과적이고 체계적으로 수행할 수 있도록 도와주며, 전반적인 테스트의 품질을 높이는 데 기여합니다. [F]ast [I]solated [R]epeatable [S]elf-validating [T]imely Fast (빠른) 단위 테스트는 빨라야 합니다. 그렇지 않으면 개발 / 배포 시간이 느려지고 통과 또는 실패하는 데 더 오래 걸립니다. 일반적으로 복잡한 시스템에는 수천 개의 단위 테스트가 있습니다. 예를 들어 2000개의 단위 테스트가 있습니다. 평균 단위 테스트를 실행하는 데 200밀리초가 걸리는 경우(빠른 것으로 간주됨) 전체 제품군을..
자바스크립트의 반복문 종류 및 사용법 👉 for, for...in, for...of, forEach 안녕하세요! 오늘은 자바스크립트에서 사용할 수 있는 반복문의 종류와 각각의 사용법에 대해 알아보겠습니다. 자바스크립트에서는 주로 4가지 종류의 반복문을 사용합니다: `for`문, `for...in`문, `for...of`문, 그리고 `forEach`문입니다. 이 포스팅을 통해 각각의 반복문이 어떻게 사용되는지 이해할 수 있을 것입니다. 👉 for문 `for`문은 가장 기본적인 반복문입니다. 반복 횟수가 정해진 경우에 사용하며, 초기값, 조건식, 증감식을 통해 반복문을 제어합니다. 다음은 `for`문의 기본 구조입니다. for (초기값; 조건식; 증감식) { // 실행할 코드 } //예시: for (let ..