Archive: 2023/11

0

WebAssembly 기술 동향

WebAssembly (WASM)웹어셈블리(WebAssembly 또는 Wasm)는 다양한 프로그래밍 언어와 많은 실행 환경 사이의 중간 계층으로, 30여 가지 이상의 언어로 작성된 코드를 .wasm 파일로 컴파일한 다음 브라우저나 다른 실행 환경에서 실행할 수 있다. 원래 웹에서 코드 실행 속도를 높이기 위해 개발되었지만 이제는 브라우저 이외의 다양한 환경

0

JavaScript Object의 생명주기 관리

Node.js Core 에서 JavaScript 생명주기를 관리하는 방법을 알기 위해서는 V8 API를 통해 메모리를 관리하는 컨셉을 이해할 필요가 있다. 모든 JavaScript 값은 V8 API를 통해 소위 핸들이라는 것을 통해 액세스된다. 이 핸들은 메모리 관점에서 Local과 Global이란 타입으로 나뉜다. 메모리 관리 타입v8::Localv8::

0

Node.js C++ Core Concept

JavaScript와 C++ 간의 효율적인 연결은 Node.js에서 중요한 문제 중 하나이다. 이러한 연결을 가능하기 위해 Node.js Core에서는 기본 C++ 클래스로 BaseObject 사용한다. BaseObject는 JavaScript 객체와 C++ 객체를 함께 묶는 주요 추상화 수단으로, 이를 통해 메모리 관리와 더불어 객체의 수명 주기를 관리할

0

Realm Class

2022년 Node.js 에는 Realm Class가 추가되었다. Realm은 주로 실행 환경을 정의하고 코드 간의 격리와 분리를 유지하기 위한 목적으로 사용된다. 기존 Node.js VM 모듈이 있으나 Node.js 자체 기능이고 JavaScript Object Graph가 노출될 가능성이 있다. 그에비해 새롭게 도입된 Realm은 보안측면에서 강화된

0

Server JavaScript Runtime 기술 동향

브라우저 외부에서 JavaScript를 사용할 수 있는 Node.js가 등장한 이후 산업전반에서 다양하게 활용되며 De-facto 표준으로 자리잡았다. 현재는 Node.js의 결점을 보완하거나, 각 회사에 최적화 된 자체 솔루션으로 대체하는 방향으로 JavaScript 런타임이 파편화되고 있으며, 개발자들에게 통합된 개발 API을 제공하기 위한 각 런타임