·4분 읽기

Mac용 네이티브 SQLite 편집기 — Electron 없이

Electron 기반 데이터베이스 도구는 테이블 하나 보여주는 데 수백 메가바이트의 RAM을 소비합니다. 네이티브 macOS 편집기는 '가볍다'는 말의 의미를 바꿔놓습니다.

데이터베이스 도구를 열었더니 파일을 로드하기도 전에 활동 모니터에서 이미 400MB의 RAM을 잡아먹고 있습니다. 큰 테이블을 스크롤하면 인터페이스가 버벅입니다. 키보드 단축키는 다른 Mac 앱들과 일치하지 않습니다. 이것이 SQLite 편집기가 사실은 데스크톱 앱 흉내를 내는 웹 브라우저일 때 벌어지는 일입니다.

Electron의 문제

Electron 앱은 인터페이스를 렌더링하기 위해 Chromium 브라우저 전체를 번들로 포함합니다. 대부분 텍스트로 된 테이블을 표시하는 데이터베이스 편집기 입장에서는 지나친 오버헤드입니다. 느린 시작 시간, 높은 메모리 사용량, macOS에서 결코 완전히 어울리지 않는 인터페이스를 얻게 됩니다. 파일 대화상자가 이상하게 보이고, 텍스트 렌더링이 미묘하게 다르며, Finder의 "다음으로 열기" 메뉴에도 제대로 나타나지 않습니다.

일부 개발자는 Mac, Windows, Linux에 하나의 코드베이스로 배포할 수 있다는 이유로 Electron을 선택합니다. 사업적으로는 합리적인 결정이지만, 데이터베이스를 열 때마다 그 성능 비용을 치르는 것은 사용자입니다.

Tome: 웹 브라우저가 아닌 AppKit으로 만들어진 앱

Tome은 Swift와 AppKit으로 만들어진 네이티브 macOS 애플리케이션입니다. Finder, Xcode를 비롯한 애플의 모든 순정 앱과 동일한 프레임워크를 사용합니다. 그 결과 1초도 안 되어 실행되고, 수만 개의 행을 부드럽게 스크롤하며, Electron 앱이 필요로 하는 메모리의 일부만 사용하는 SQLite 편집기가 탄생했습니다.

Tome native macOS SQLite editor with sidebar and data grid

진짜 macOS 통합

Tome은 .db, .sqlite, .sqlite3 파일의 핸들러로 등록됩니다. Finder에서 데이터베이스를 더블클릭하면 바로 열립니다. Dock 아이콘에 파일을 드래그할 수 있습니다. macOS 탭과 윈도우 관리를 사용할 수 있습니다. Mac 앱에서 기대하는 모든 것이 그대로 동작합니다 — 진짜 Mac 앱이기 때문입니다.

SQL 없이 편집하기

셀을 클릭하면 값을 인라인으로 편집할 수 있습니다. 시각적 편집기를 사용해 행을 삽입하고, 삭제하고, 새 테이블을 만들 수 있습니다. SQL이 필요할 때는 내장 쿼리 편집기가 구문 강조와 자동완성을 제공합니다 — 하지만 일상적인 편집에서는 굳이 사용할 필요가 없습니다.

설계부터 가벼움

Tome은 SQLite라는 한 가지를 잘합니다. PostgreSQL, MySQL, MongoDB에 연결하려 하지 않습니다. SQLite에만 집중함으로써 모든 기능이 실제로 다루는 형식에 최적화되어 있습니다.

Mac App Store에서 Tome 받기

다음 기사

Tome

Browse, query, and edit SQLite databases in a native Mac app.

Get Tome on the Mac App Store