Skip to main content

Use V8 and Chromium Features in Electron

· 5 min read

Electron에서 V8과 Chromium의 최신 기능을 사용하는 방법에 대해 알아보자. 이 글에서는 Electron이 어떻게 V8 엔진과 Chromium의 최신 기능을 활용하는지 설명한다. 또한, 이러한 기능을 프로젝트에 적용하는 방법을 단계별로 안내한다.

Electron은 Node.js와 Chromium을 기반으로 동작한다. 따라서 V8 엔진과 Chromium의 최신 기능을 활용할 수 있다. 이를 통해 더 나은 성능과 최신 웹 표준을 지원하는 애플리케이션을 개발할 수 있다.

이 글에서는 다음과 같은 주제를 다룬다:

  • V8 엔진의 최신 기능과 이를 Electron에서 어떻게 활용할 수 있는지 설명한다.
  • Chromium의 최신 기능을 Electron 프로젝트에 통합하는 방법을 알아본다.
  • Electron 애플리케이션에서 이러한 기능을 사용할 때 주의해야 할 점을 살펴본다.

이 글을 통해 Electron 개발자들은 V8과 Chromium의 최신 기능을 효과적으로 활용할 수 있는 방법을 배울 수 있다. 이를 통해 더 강력하고 현대적인 애플리케이션을 개발하는 데 도움이 될 것이다.

Electron 애플리케이션을 개발하면 단일 코드베이스와 하나의 브라우저를 대상으로 설계할 수 있어 매우 편리하다. 또한 Electron은 Node.jsChromium의 최신 버전을 지속적으로 반영하기 때문에, 이들이 제공하는 훌륭한 기능들을 활용할 수 있다. 경우에 따라 웹 앱에서 필요했던 의존성을 제거할 수도 있다.


여기서 몇 가지 기능을 예제로 살펴보겠지만, 모든 기능에 대해 알고 싶다면 Google Chromium 블로그Node.js 변경 로그를 주시하면 된다. Electron이 사용하는 Node.js, Chromium, V8 버전은 electronjs.org/#electron-versions에서 확인할 수 있다.

V8을 통한 ES6 지원

Electron은 Chromium의 렌더링 라이브러리와 Node.js를 결합한다. 이 둘은 동일한 자바스크립트 엔진인 V8을 사용한다. 많은 ECMAScript 2015(ES6) 기능이 이미 V8에 내장되어 있어서, 컴파일러 없이도 Electron 애플리케이션에서 바로 사용할 수 있다.

아래는 몇 가지 예제지만, 클래스(엄격 모드에서), 블록 스코프, Promise, 타입 배열 등도 사용 가능하다. V8에서 지원하는 ES6 기능에 대한 더 많은 정보는 이 목록을 참고한다.

화살표 함수

findTime () => {
console.log(new Date())
}

문자열 보간

var octocat = 'Mona Lisa';
console.log(`The octocat's name is ${octocat}`);

New Target

Octocat() => {
if (!new.target) throw "Not new";
console.log("New Octocat");
}

// Throws
Octocat();
// Logs
new Octocat();

배열 includes

// Returns true
[1, 2].includes(2);

Rest 매개변수

// Represent indefinite number of arguments as an array
(o, c, ...args) => {
console.log(args.length);
};

크로미움 기능

구글과 기여자들의 노력 덕분에, Electron 앱을 개발할 때 다음과 같은 멋진 기능들을 활용할 수 있다. 이 기능들은 다음과 같지만, 이에 국한되지 않는다:

새로운 버전이 출시될 때마다 구글 크로미움 블로그를 통해 기능을 확인할 수 있다. 또한, Electron에서 사용하는 크로미움 버전은 여기에서 확인할 수 있다.

무엇이 가장 기대되나요?

V8이나 Chromium에 내장된 여러분이 가장 좋아하는 기능을 @ElectronJS로 트윗해 주세요.