23년 12월 후반기 뉴스레터

·

2 min read

고와 타입스크립트로 풀 스택 개발 튜토리얼

고 API 백엔드와 타입스크립트 프론트 프로젝트를 어떻게 구성하고, 만들어야 할지에 대한 튜토리얼 문서입니다.

많은 초보자 분들에게 도움이 될 거라 기대됩니다.

Go + TypeScript full stack web app, with nextjs, PostgreSQL and Docker - DEV Community


무슨 말인지 어렵지만 재밌는 일이 벌어지고 있어요

proposal: sync: support for sharded values · Issue #18802 · golang/go (github.com)


권한 검증에 대한 솔루션

여러분들은 어떤 권한 부여 방식을 사용하나요?

여기 2가지 솔루션이 있으니 한번 구경해보세요!

Best-Practices for API Authorization | Permit

warrant-dev/warrant: Warrant is a highly scalable, centralized authorization service based on Google Zanzibar, used for defining, querying, and auditing application authorization models and access control rules. (github.com)


알뜰한 아키텍처를 위한 7가지 원

The Frugal Architecture – 알뜰한 아키텍처를 위한 7가지 원칙 :: Channy's Blog (creation.net)


어째서 링크드인은 gRPC를 선택했는가

Why LinkedIn chose gRPC+Protobuf over REST+JSON: Q&A with Karthik Ramgopal and Min Chen (infoq.com)


일단 무지성으로 MSA를 선택하고 보십니까?

한번 더 생각해 보도록 하죠.

Microservices without reason (felixseemann.de)


고에서 프레임워크 맛보기

고에서 주로 쓰이는 echo, gin, fiber는 제 기준에서 프레임워크보다는 라이브러리에 가까운 친구들입니다.

프레임워크라는 건 내 코드가 프로젝트 구조에 맞춰져야 하니까요.
그리고 상당히 오래 고에는 프레임워크처럼 동작하는 프로젝트를 보기 어려웠다고 생각합니다.
그러니 이제 슬슬 하나씩 맛봐야 할 시기가 온 것같습니다...

https://github.com/aperturerobotics/controllerbus


또 다른 캐시 라이브러리

이전에 ristretto라는 캐시 라이브러리를 소개했던 적이 있습니다.

개인적으로 인 메모리 캐시가 필요하면 잘 썼는데, 다른 걸 써볼 때가 온 것같네요.

maypok86/otter: Fastest golang in-memory cache library based on S3-FIFO algorithm. many times faster than Ristretto and friends (github.com)


간단하게 쓸만한 패스워드 해시 라이브러리가 필요하신가요?

여기 있습니다.

lemon-mint/authstring: Password Hashing Library (github.com)


고로 쓰여진 아이메시지 클라이언트

Beeper라는 메시징 앱을 만드는 곳에서 고로 아이메시지 클라이언트를 만들었습니다 ㄷㄷ

beeper/imessage: A Matrix-iMessage puppeting bridge. (github.com)


좀 더 고루틴과 채널 최적화 해보기

Demystifying Golang Channels, Goroutines, and Optimal Concurrency (scribe.rip)


자바는 과거로 돌아갈 것같아요

Writing C Code in Java (foojay.io)


다른 언어에서 고 코드 좀 써볼까요?

c ffi를 통해 다른 언어에서 호출하는 게 가능은 하지만, 고의 특성 상 cgo를 통한 ffi가 달갑진 않지만, 반대니까~ 괜찮을 지도?

Extending Python with Go - DEV Community

How to use GoLang in Flutter Application - Golang FFI - DEV Community


새해 복 많이 받으세요!

2023년도에 많은 게 변하셨나요?

제가 좋아하는 노래 중 하나엔 "내일을 바꾸려면 오늘을 바꿔야해"라는 가사가 있습니다.

하루하루를 급격하게 바꾸는 건 불가능하지만, 작년 12월 31일과 올해 12월 31일, 그리고 올해 1월 1일과 내년 1월 1일의 차이는 내일을 바꾸기에 충분한 시간인 것같아요.

물론 저도 그렇게 바뀌진 않았지만, 더 나은 미래를 위해 이번 8760시간도 노력해볼까요?