Leptos 후기

2024. 11. 2. 16:39잡담

https://leptos.dev/

 

Home - Leptos

Your favorite language Leptos makes it easy to integrate Rust backend code with your user interface in a few lines of code. #[server] functions let you cross the client-server boundary without the boilerplate of setting up a new API endpoint, making it eas

leptos.dev

Counter 컴포넌트는 못참지

 

한동안 무심했던 rust 공부도 할 겸, Leptos를 사용해서 간단한 SPA를 만들어봤다.

 

https://github.com/Jonghakseo/leptos-study

 

GitHub - Jonghakseo/leptos-study

Contribute to Jonghakseo/leptos-study development by creating an account on GitHub.

github.com

 

뭔가 실무적인 유즈케이스를 상상하면서 구현을 해보려고 했는데, 결론부터 말하자면 앞으로 굳이 rust로 웹 프론트엔드 개발을 하게 될 일이 있을까? 싶은 기분이 들었다.

 

생각보다 Leptos 내에 구현된 브라우저 JS 환경과의 접점 인터페이스가 꼼꼼하게 작성되어서 놀랐는데, 그와 별개로 NativeJS 객체를 rust로 다루는게 너무 번거로웠달까.

 

JSX style의 렌더링 코드나 props 바인딩을 보니 새삼 React 진영의 최고의 발명품은 JSX라는 생각도 들고...

 

확실히 rust가 재미있긴 하다. rust 에서의 closure 명시 문법이 꼼꼼하다며 감탄하다가도 참조 카운터(RC)로 만든 시그널이 해당 제약 우회하는걸 보며 편의성도 느꼈다.

 

이번 공부때는 copilot이 아닌 gpt를 좀 적극적으로 사용하면서 이것저것 물어보고 공부하면서 진행하니 더 도움도 되고 재미있었다. rust를 꾸준히 공부하려면 rust로 뭔가 만들어야 할 것 같은데 web은 생산성 측면에서 큰 재미가 없고 알고리즘도 좀 애매하고.

 

결국 성능적으로 이점이 큰 CLI를 만드는게 좋을 것 같은데 문제는 지금 만들고 싶은게 없다.