- Deno에서 JavaScript가 운영체제를 제어하기 위해 Ops(API 인터페이스)를 활용하는 내용을 설명 🧐
- 2019년부터 시작된 오랫동안 발전시켜온 Ops 체계는 최근 Op2를 통해 성능 개선과 효율성 증대 📈
- Op2는 Rust의 타입 시스템을 활용하여 V8(JavaScript 엔진)와의 연동을 안전하게 구현 🛡️
- 진동형으로 처리되는 Synchronous(동기적) vs. Asynchronous(비동기적) API 두 가지 제공
- 동기적 API는 'fast call', 'slow call' 두 가지 타입으로 구분되며, 비동기적 API는 'auto', 'deferred', 'lazy' 세 가지 모드를 지원 ⚡️
- fast call은 매개변수의 타입에 따라 V8 엔진에서 최적화된 처리 🏎️
- Error 처리를 위해 Rust의 결과 타입을 활용하고, JavaScript에서 자연스럽게 Error를 제어 가능 🫂
- Deno 제공되는 Permission 기능을 활용하여 특정 작업에 대한 권한을 제어 🗝️
- Stateful한 작업을 처리하기 위해 Resource API를 제공하여 Rust Struct를 JavaScript에서 관리 🤝