본문 바로가기

전체 글119

husky && lint-staged husky husky는 git hook을 쉽게 제어하도록 도와주는 매니저이다. Git hook Git도 다른 버전 관리 시스템처럼 어떤 이벤트가 생겼을 때 자동으로 특정 스크립트를 실행하도록 할 수 있다. 이것을 Git hook이라고 하고, Git hook은 클라이언트 훅과 서버 훅으로 나눌 수 있다. 클라이언트 훅은 커밋이나 Merge 할 때 실행되고 서버 훅은 Push 할 때 서버에서 실행된다. Git hook의 라이프 사이클은 아래와 같다. 각 단계는 아래와 같은 특성을 갖는다. pre-commit: 커밋 메시지를 작성하기 전에 호출된다. prepare-commit-msg: 커밋 메시지 생성 후 편집기 실행 전에 호출된다. commit-msg: 커밋 메시지와 관련된 명령을 넣을 때 호출된다. pos.. 2021. 8. 12.
Typescript basic template 만들기 1. package.json 생성하기 yarn init 2. webpack 모듈 설치 yarn add -D webpack webpack-cli webpack-dev-server html-webpack-plugin yarn add -D @babel/core @babel/preset-env babel-loader -D : devDependencies 로 설정하여 배포 서버에서는 해당 모듈들을 설치하지 않을 수 있다. webpack : 번들러 모듈 webpack-cli : webpack 명령어를 사용할 수 있게해주는 모듈 webpack-dev-server : 실시간으로 변경사항을 보여주는 live server html-webpack-plugin : template html 파일에 번들 파일을 자동으로 추가해주.. 2021. 8. 12.
TSConf 2019 Keynote - Anders Hejlsberg https://youtu.be/jmPZztKIFf4 Typescript는 6가지 원칙에 중점을 두고 그동안 발전해 왔다. Typescript를 사용하면 아래와 같은 여러 가지 기능들을 사용할 수 있다. 정적 유형은 깊은 조력자이다. 안전한 리팩토링을 가능하게 한다. Stackoverflow에서 2021년 기준 Typescript는 7위를 차지하고 있다. 또한, 언어의 성장세는 매년 엄청나게 증가 중이다. Typescript는 Community에 많은 신경을 썼다. Typescript가 커뮤니티에 신경을 많이 쓴 예들을 소개하고자 한다. Typescript는 검사기이자 트랜스 파일러 이기 때문에, 새로운 트랜스 파일러로 옮기고 싶지 않았다. 그러나 커뮤니티 의견에 따라서 빌드 파이프라인으로 바벨을 사용할 .. 2021. 8. 12.
Yarn Berry Yarn Berry 너는 무엇이야? “Berry” is the codename for the Yarn 2 release line. yarn Berry는 yarn 패키지 매니저의 2번째 새로운 버전이다. 2018년 9월 yarn의 RFC 저장소에 해당 PR로부터 시작했다. Javascript로 만들어져 있던 yarn을 이번에 새로운 버전 berry에서는 Typescript로 만들었다. 따라서, berry의 경우 yarn 레파지토리와는 독립적으로 개발되고 있다. Yarn v1의 주요 개발자인 Maël Nison님이 만드셨고, 2020년 1월 25일부터 정식 버전(v2)이 출시되었다. 이에 따라 기존의 웹사이트 주소도 옮겨졌다. yarn Github: https://github.com/yarnpkg/yarn .. 2021. 8. 11.
Javascript Package Manager Package Manager는 패키지를 설치, 업데이트, 수정, 삭제하는 작업을 편리하고 안전하게 수행하기 위해 사용되는 툴이다. Package vs Library 라이브러리: 코드의 작성을 위해 사용되는 코드의 묶음 패키지: 코드의 배포를 위해 사용되는 코드의 묶음 패키지는 라이브러리를 포함할 수 있으며, 일반적으로 라이브러리나 실행 파일을 포함한다. 패키지에는 보통 아래 3가지 정보들이 들어있다. 컴파일한 소프트웨어의 바이너리(binary) 환경 설정(configuration)에 관련된 정보 의존(dependency)에 관련된 정보 Software repository 패키지를 저장하고 관리하는 저장소를 Software repository라고 한다. 패키지를 커뮤니티에 등록하여, 다른 사람들과 공유할 .. 2021. 8. 11.
[코드스피츠] Compile Language vs Script Language 해당 게시글은 코드 스피츠 동영상의 정리 내용이다. Program은 물리적인 파일인 컴퓨터의 실행파일을 실행해서 OS가 메모리에 적재한 상태이다. 즉, 메모리에 명령과 값으로 분리되어서 올라간 것들이 프로그램이다. 적재되어있는 명령들을 다 소비하게 되면 프로그램은 종료된다. 명령(Instruction)과 값들을 메모리에 적재하는 과정을 Loading이라 한다. 명령어는 메모리에 있는 값들을 참조해서 다시 갱신하는 것이다. 프로그램이란 명령어가 값으로 메모리에 적재되고, 명령이 처음부터 끝까지 다 실행되면 종료되는 것이다. Compile Language 컴파일 언어의 경우, 컴파일된 결과물들은 아래 동작을 진행한다. ESSENTIAL DEFINITION LOADING 프로그램이 실행하기위한 가장 기초적인 .. 2021. 8. 10.