javascript 3

SDK 고도화 및 경량화 (부제 : 우리 이제 최소한 ES6는 써요...)

사내 SDK 고도화 및 경량화 발표 자료 용어 jasmine - js 테스트 프레임워크 (테스트 케이스를 작성하고 구조화하는 도구) karma - js 테스트 러너 (테스트 실행하는 환경을 제공하는 도구) babel - 브라우저 간 호환성을 위한 js 트랜스파일러 (최신 js 문법 지원) parcel-bundler - (js 번들러 parcel의 이전 버전 === 이하 parcel v1) ex: webpack 친구 parcel - (js 번들러 parcel의 최근 버전 === 이하 parcel v2) browserlist - (대상 브라우저 및 노드 버전을 명시하는 config 파일) es6 - (ECMAScript 6번째 : 2015년에 발표한 표준화된 스크립트 프로그래밍, ES5 이하 명세에서 문제가..

Nest.js 도입 및 느낀점 (Express와 비교)

주제 : Nest.js 도입 및 느낀점 (이번 포스팅은 회사 발표용이라 자료 내용이 딱딱합니다.) 정의 Nest.js 는 Node.js 런타임 위에서 동작하는 TypeScript용 오픈 소스 백엔드 웹 프레임워크. 선정 이유 (Express를 사용하며 아쉬웠던 점) 인턴 기간 때, 언어 : JS, 프레임워크 : Express를 활용한 백엔드 엔지니어링 역량 강화의 경험이 존재. 올해 업무 시작하면서, Express 기반의 프로젝트들의 개발을 진행하거나 참고하는 경험이 많았음. Express는 사용이 쉽고, 자유롭다는 장점이 있지만, 아키텍처에 관한 정의나 기능을 제공하지 않아, 프로젝트 구성 디렉토리가 개발자마다 다양함을 확인. 프로젝트 규모가 커질수록, 개발자마다 아키텍처가 다르면 이를 이해하기 위한 ..

Programming/Backend 2023.01.29

Parcel 번들러 Migration 후기 (parcel-bundler -> parcel)

인턴 때부터 지금까지 맡은 프로젝트 중 하나는 데이터 수집 SDK이다. 사내 웹/앱 서비스 개발자 분들이, SDK를 이용하여 브라우저에 생성하면, 기 정의된 로그 포맷에 해당하는 data들을 서버로 전송하는 역할을 한다. 해당 SDK는 여러가지의 js 파일로 구성되어 있고, 번들러를 이용하여 빌드 된 파일을 다른 개발자분들이 로드해서 사용한다. 번들러에는 webpack, RequireJS, Browserify, Rollup, Parcel 등이 있는데, 해당 프로젝트에는 Parcel v1이 적용되어 있었다. 올해(2022) 업무 중 하나는 번들러인 Parcel의 마이그레이션 작업이었다. (버전 업그레이드) Parcel v1은 npm에서 parcel-bundler로 명시되어있고, v2는 parcel로 명시되..