Programming Language(41)
-
TypeScript에 대한 간단한 정리 - 04. 타입 및 할당 단언(Assertions)
타입의 단언(Assertion)이란 사용자가 이 값은 내가 특정 타입임을 확신한다라고 컴파일러에게 알려주는 방법이다.이건 컴파일러가 추론한 타입이나 지정한 타입과는 관계 없이 사용자가 원하는 타입으로 강제로 인식하게 하는 역할을 하한다.이는 자바스크립트의 런타입에는 영향을 미치지 않고 컴파일 단계에서만 작동한다. 타입단언의 특징은 컴파일러의 타입 추론을 덮어쓴다 - 컴파일러가 추론한 결과를 무시하고 사용자가 직접 타입을 지정할 수 있다런타임 동작에 영향을 주지않는다 - 컴파일에서만 영향을 주고 런타임 코드에는 반영되지 않기에 런타임에서 오류를 발생시킬 여지가 있다.타입 단언을 사용하는 방식은 크게 두가지 표기법이 있는데 as 키워드를 사용변수명 as 타입으로 타입 단언을 사용할 수 있다.let valu..
2024.12.16 -
TypeScript에 대한 간단한 정리 - 02. 타입 종류 알아보기 - 문자부터 함수까지, 03. 타입 추론(Inference)
이전에 main.ts에서 시작해보자.이 포스트에서는 타입스크립트에서 어떤 종류의 타입을 사용할 수 있는지를 알아보도록 하자. 타입스크립트에서는 크게 기본타입, 복합타입, 특수타입, 사용자 정의 타입으로 분류된다. 기본타입(Primative Types)TypeScript의 기본 타입은 JavaScript의 원시 타입(primitive types)에서 시작됐으며 변수에 저장할 수 있는 가장 작은 단위의 값을 표현한다.이건 ECMAScript 사양에 정의된 원시데이터 유형과 타입스크립트에서 추가된 타입이 합쳐져 있다. 1. string문자열 데이터를 나타낸다.작은 따옴표('), 큰 따옴표("), 또는 백틱(`)으로 감쌀 수 있다.let 변수명 : string = '문자열'; // '', 작은 따옴표를 사용le..
2024.12.15 -
TypeScript에 대한 간단한 정리 - 01. 빠른 개발 환경 구성
01. 빠른 개발 환경 구성타입스크립트는 자바스크립트에 추가적인 내용이 들어간거라고 생각하면 된다.타입스크립트는 자바스크립트의 기능을 확장하여 정적 타입 검사(static type checking)를 제공하는 프로그래밍 언어이다.타입스크립트는 자바스크립트의 문법을 그대로 따르지만, 타입 시스템을 추가하여 코드의 안정성을 높이고, 큰 프로젝트에서 발생할 수 있는 오류를 미리 방지하는 데 도움을 준다. 여기서 정적 타입 검사란 기존에 자바스크립트와는 다르게 타입스크립트는 변수, 함수 등의 타입을 명시할 수 있어, 코드 작성 중에 타입 오류를 미리 파악하고 수정할 수있게 되는 것을 말한다. 자바스크립트의 경우에는 런타임, 동작하는 환경에서 동작할때 오류를 확인하기 때문에 동작 환경에서만 타입 오류를 발견할 수..
2024.12.14 -
Node.js 패키지 관리
01. npm이란?npm이란npm은 node package manager의 줄임말로 Node.js 환경에서 JavaScript 라이브러리와 패키지를 설치, 관리, 공유하는 도구이다.npm은 웹사이트를 통해 패키지 검색과 관리 정보를 제공하고 CLI(Command Line Interface) 도구로 터미널에서 명령어를 입력해 패키지를 설치하거나 관리한다.레지스트리는 전 세계 개발자들이 공유하는 패키지 저장소로, 여기에서 패키지를 다운로드하거나 업로드할 수 있다 02. npm package 설치하기npm은 프로젝트를 생성하는 방법은 Visual Studio Code로 프로젝트를 하나 생성하고 터미널을 연 후에 npm init -y 로 입력해주면 이런 로그가 나오면서 package.json파일이 생성된다.이 ..
2024.12.14 -
Node.js의 모듈 시스템
01. Module이란?모듈이란필요한 함수들의 집합이라고 보면 된다.모듈은 애플리케이션을 구성하는 기본 단위로 기능을 분리하고 재사용할 수 있게 해준다. 쉽게 말해, 모듈은 물건을 만들 때 사용하는 부품과 같다. 여러 개의 모듈을 조합하여 하나의 애플리케이션을 구성할 수 있다. 이 모듈은 Nodejs에서 제공해주는 모듈도 있고, 사용자가 모듈을 만들어서 사용할 수 도 있다. 또한 다른 사용자가 만들어둔 모듈 또한 쉽게 가져다가 사용할 수 도 있다.이 모듈을 가져와서 사용할때에는 require라는 키워드를 통해서 가져다가 사용할 수 있다. 모듈의 종류는 크게 나눠서 Core Module - Node.js에 기본적으로 포함되어 있는 모듈로 예를 들면, http, fs, path 등이 있다.Local Modu..
2024.12.10 -
Node.js의 내부
01. Node.js가 작업을 처리하는 방법런타임 환경에서 자바스크립트로 처리할 수 있는 작업은 V8 엔진이 처리를 할 수있으나 파일을 읽는 것과 같은 작업은 처리하지 못한다. 그래서 이런 부분은 libuv를 통해서 작업을 한다.그리고 이 둘을 연결(binding)해주는 것이 Node.js이다. Node.js의 API는 많은 기능을 갖고 있는데 파일 시스템이나 crypto 암호화 처리등의 기능은 V8엔진이 처리할 수 없기 때문에 V8이 이런 기능이 필요하다 싶으면 Node.js의 API를 호출한다.그러면 그걸 Node.js가 확인하고 자바스크립트로 처리할 수 있는 부분을 제외하고는 libuv 한테 전달해서(Node.js의 바인딩을 사용해서) 처리하게 해준다. 이 libuv는 비동기적으로 input/out..
2024.12.05