Go lang 실습

golang wails

컴닥 2024. 3. 16. 09:43
반응형

최근 크로스 플랫폼(PC, Mac) 앱 제작을 위해 다양한 테스트를 해보았다. 

electron, nw.js, wails, flutter 

일단 이 중에 golang을 백엔드로,
웹뷰를 프론트엔드로 사용하는 wails가
나에겐 가장 생산성이 높고 편했다.

일렉트론 같은 웹 베이스 UI는
앱에 웹 브라우저를 포함해서...
빌드 후 용량이 수십~백 메가바이트 이상이 되는 단점이 있다. 

그런데 wails는 hello world를 빌드 해보면
8(?)메가바이트 정도로 매우(?) 가볍다.

(네이티브 언어와 비교할 정도는 아니지만) 

비결은 OS에 내장된 웹 브라우저(웹뷰)를 이용하기 때문에
별도의 웹 브라우저를 내장하지 않아서 가벼운 것..

이제는 익스플로러처럼 심각히 파편화된 브라우저는 없고...
브라우저 별 약간의 차이는 이미 웹 사이트 제작 경험으로 학습되어 있으니...
수십 메가바이트 이상의 브라우저를 앱마다 달고 다니는 건 상당히 불편한 선택...

참고: 웹킷 https://namu.wiki/w/WebKit

자세한 것은 웨일즈 본진을 참고하시고.. 
부분 한글화도 되어 있다.  

https://wails.io/ko/

 

The Wails Project | Wails

Go에서 아름다운 크로스 플랫폼 애플리케이션 빌드

wails.io

 

그리고 이런 GUI 위주의 작업에는
개인적으로 스벨트가 가장 편하고 빠른데..
웨일즈에서도 스벨트를 가장 먼저 두었다.. 
이 또한 마음에 듬. 

헬로우 월드 튜토리얼을 보면서 작업하니까.
앱을 바로 만들 수 있었다. 

다만 웹 GUI 특유의 백 엔드와 프론트 엔드 간 대용량 데이터를 주고 받을 때의
병목 현상은 좀 불편...

반응형