C.W.K.
Stream
Lesson 02 of 06 · published

안 보낸 Electron

~14 min · tauri, electron, tradeoffs, bundle-size

Level 0웹 관광객
0 XP0/56 lessons0/13 achievements
0/100 XP to next level100 XP to go0% complete
"Tauri는 'Electron인데 더 좋은 거'가 아냐. 다른 거래야. 그리고 뭘 거래하는지 정확히 알아야 해."

다들 인용하는 숫자들

헤드라인 비교는 진짜고, 몸에 새겨둘 만해. 최소 Tauri 앱은 몇 메가로 번들돼. 같은 Electron 앱은 Chromium이랑 Node를 짊어지니까 80~150MB쯤에서 시작하고. 런타임엔 Tauri가 OS가 이미 띄워둔 웹뷰에 기대니까 기본 메모리가 Electron의 몇 분의 일이야. 콜드 스타트도 같은 이유로 빠르지 — 띄울 150MB짜리 엔진이 없으니까.

이래서 Tauri가 존재해. 근데 번들 크기 통계 외운다고 이해한 건 아냐. 재미있는 건 그 숫자를 위해 뭘 포기하는가지.

정직한 거래

Electron의 초능력은 어디서나 엔진 하나야. 특정 Chromium 버전을 번들하니까, 네 기계에서 되는 CSS 기능이나 JS API가 모든 사용자 기계에서 똑같이 돼. 엔진을 통제하니 편차를 통제하지.

Tauri는 그걸 포기해. OS 웹뷰 셋을 빌리는데 각자 출시 주기가 따로야. flexbox 엣지 케이스, date-input 위젯, 비디오 코덱 — 이런 게 WKWebView, WebView2, WebKitGTK 사이에서 다를 수 있어. 그 대신 작고 빠르고 메모리 적게 먹는, 네이티브 같은 앱을 얻지. 거의 모든 앱한텐 환상적인 거래야. 근데 희한한 Chromium 기능 하나를 전 플랫폼에서 픽셀 단위로 똑같이 그려야 하는 앱이라면, Electron의 일관성이 진짜 제값을 할 수도 있어.

네이티브 코드가 사는 곳

구조적 차이도 있어. Electron에선 '백엔드'가 Node.js야 — 파일시스템이랑 OS 접근 되는 JavaScript, 프론트엔드랑 같은 언어. Tauri에선 권한 가진 쪽이 Rust고, IPC 다리 뒤의 별개 언어야. 처음엔 마찰이 더 크지만, 진짜 보안 업그레이드야 — 웹뷰가 'JavaScript니까' 파일시스템을 만질 수 있는 게 아냐. 네가 노출한 특정 Rust 함수만, capability가 허락할 때만 호출할 수 있어. security 트랙 전체가 이 구분 위에 세워져.

Code

승리만이 아니라 거래·text
대략의 자릿수 (GUI '헬로 월드' 앱, 2026):

                     Electron            Tauri 2
  설치 파일 크기      ~85-120 MB          ~3-10 MB
  기본 RAM           ~120-250 MB         ~30-90 MB (OS 웹뷰 공유)
  콜드 스타트        느림 (번들된         빠름 (웹뷰가 OS에
                     Chromium 기동)      이미 상주)
  UI 엔진            네가 통제하는        플랫폼마다 물려받는
                     Chromium 하나       OS 웹뷰 셋
  권한 언어          Node.js (JS)        Rust (IPC 뒤)

숫자는 앱마다 천차만별. 블로그 인용하지 말고 네 걸 직접 재.

External links

Exercise

네가 진짜 관심 있는 앱 아이디어 하나 골라. 두 칸으로 적어봐: Tauri로 가서 얻는 것(크기, 속도, 네이티브 느낌, Rust 코어)이랑 감수하는 위험(플랫폼별 웹뷰 편차, 두 번째 언어, OS마다 테스트). 그리고 결정해 — 한 문장으로 근거를 대. 기술은 '승자' 고르기가 아니라 거래를 소리 내어 이름 붙이는 거야.
Hint
앱이 대부분 폼·텍스트·표준 위젯이면 웹뷰 편차 위험은 아주 작아. 최신 CSS나 특정 미디어 코덱에 기대면 그 위험을 더 무겁게 쳐.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.