본문 바로가기

Programming359

[이펙티브 타입스크립트] 타입시스템 - 1 타입 시스템 타입스크립트를 설치하면, 아래 두 가지를 실행할 수 있다. 1. 타입스크립트 컴파일러(tsc) 2. 단독 실행가능한 타입스크립트 서버(tsserver) tsserver는 우리가 사용하는 편집기에 코드 자동완성, 검색, 리팩터링 등의 기능을 제공해줄 수 있다. 코드의 생산성과 품질을 높이려면, 편집기에서 타입스크립트 언어 서비스를 적극적으로 활용하는 것이 좋다. 타입은 값들의 집합이다 모든 변수는 런타임에 각자 고유한 값을 가진다. 하지만 코드가 실행되기 전 타입스크립트가 오류를 체크하는 순간엔 타입을 가진다. 타입을 곧 '할당 가능한 값들의 집합'이라고 생각하면 된다. type A = 'A'; type B = 'B'; type Twelve = 12; type AB = 'A' | 'B'; ty.. 2023. 7. 26.
[이펙티브 타입스크립트] 타입스크립트를 알아보자 친구랑 같이 하던 사이드 프로젝트가 드디어 끝이 났다. 이제 남는 점심시간이 생겨서 계속 미뤄뒀던 이펙티브 타입스크립트 책을 읽으며 정리하려고 한다. 현재 타입스크립트로 코드를 작성하면서, 이게 맞나? 이게 제일 효율적인 방식인가? 더 나아가 이게 효율적인 방식인가? 에 대한 의문은 항상 가지고 있는 것 같다. 질 좋은 코드를 작성하려면, 좋은 교본을 많이 봐둬야한다고 생각한다. 그래서 이 책을 선택했고, 정말 책 이름 그대로 이펙티브하게 타입스크립트를 써보고자 책 스터디를 진행한다. 예제 코드는 아래 깃헙 링크에 차곡차곡 쌓일 예정이다. https://github.com/do-not-do-that/effective-typescript do-not-do-that/effective-typescript ef.. 2023. 7. 13.
Javascript 메모리 관리 C 언어에서는 메모리 관리를 위해 malloc 과 free 를 이용해 할당하고, 해제하는 것을 개발자가 명시적으로 사용해줘야했다. 하지만 자바스크립트는 객체가 생성되었을 때 자동으로 메모리를 할당하고 더 이상 필요하지 않을 때 자동으로 해제한다. (사실 거의 대부분의 고수준 언어들이 암묵적으로 동작한다.) 많이 들어봤던 가비지 컬렉션에 대한 내용이다. 자바스크립트 메모리 할당 1. 값 초기화 자바스크립트는 값을 선언할 때 자동으로 메모리를 할당한다. 2. 함수 호출을 통한 할당 let date_time = new Date() 위와 같이 함수 호출의 결과 메모리 할당이 일어나기도 한다. 메소드가 새로운 값이나 오브젝트를 할당하는 경우도 있다. 자바스크립트 메모리 해제 C는 개발자가 더이상 메모리가 필요없을.. 2023. 7. 4.
ENOSPC ERROR 해결 기존 일반 IDC 서버에서 AWS EC2 환경에서 작업을 하다보니, 여러 문제점들이 보인다. 우선 첫번째로, Nest 서버의 메모리 사용량이 생각보다 많다. 기본 3기가 정도 든다고 한다. 우리는 서버니까, 비용 문제를 생각해서 최소한의 사양으로 만들었는데, 그거만으로는 하드웨어 사양이 많이 부족했다. 그래서 어제는 그걸 늘리는 작업을 했고, 오늘은 ENOSPC 라는 새로운 에러를 확인했다. UnhandledPromiseRejectionWarning: Error: ENOSPC: System limit for number of file watchers reached 음.. 뭐 대강 파일을 바라보고 있는 watcher의 수가 한계에 도달했다! 하는 내용이다. 현재 watcher 들의 상태를 보려면 아래 파일.. 2022. 12. 13.