1. 일렌트론 (Electron)
일렉트론(Electron)은 자바스크립트(Javascript), HTML, CSS 만으로도
데스크톱 애플리케이션을 만들 수 있도록 해주는 프레임워크(framework)이다.
노드(Node.js)를 기반으로 하며,
자바스크립트뿐만 아니라 자바스크립트를 기반으로 하는 react, nextjs로도 애플리케이션을 만들 수 있다.
윈도우(window), 맥 OS(Mac OS), 리눅스(Linux) 모두 지원한다.
우리가 많이 사용하는 디스코드(Discord), 노션(Notion), 깃헙데스크톱(GitHubDesktop) 모두
일렉트론으로 만들어진 애플리케이션이다.
2. 일렉트론의 장점
1) 낮은 진입 장벽
일렉트론의 가장 중요한 장점은 진입 장벽이 낮다는 것이다.
자바스크립트 웹 개발자가 다른 언어를 공부하지 않고도 손쉽게 데스크톱 애플리케이션을 만들 수 있다.
또한, Node.js를 사용하므로 Javascrip의 모든 기능을 사용할 수 있다.
2) 크로스 플랫폼 지원
보통 각기 다른 OS 플랫폼을 지원하기 위해선 각 OS마다 최적화 작업을 해줘야 한다.
하지만 일렉트론을 사용하면 이러한 작업을 하지 않아도 된다.
또한 윈도우(window), 맥 OS(Mac OS), 리눅스(Linux) 빌드를 한 번에 지원하며, 설치할 수 있도록 해준다.
3) 방대한 커뮤니티
위에서 말했듯이 Notion, Discord 등 다양한 애플리케이션이 일렉트론으로 만들어졌으며,
이에 맞춰 일렉트론에 대한 커뮤니티도 활발하게 이루어지고 있다.
커뮤니티가 활발하면 그에 대한 정보의 양도 많아지고,
에러가 발생할 경우 이에 대한 해결방안을 찾는 것도 조금 더 쉬워진다.
3. 일렉트론 단점
1) 큰 설치 파일 용량
브라우저(Chromium)와 Node.js를 기본 번들로 포함하기 때문에 앱 용량이 매우 커져버린다는 단점이 있다.
기본 용량이 100MB가 넘어버리기 때문에, 초기 설치에 필요한 파일 용량이 크다.
2) 상대적으로 느린 속도
일렉트론 데스크톱 애플리케이션은 시스템 리소스, RAM을 많이 차지하기 때문에
오래된 컴퓨터에서는 상대적으로 UI가 약간 느려질 수 있다.
3) 보안
사용자가 애플리케이션 소스코드를 디컴파일해서 볼 수 있기 때문에 보안에 취약하다.
4) 모바일 지원 없음
아직 일렉트론은 모바일을 지원하지 않는다.