Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Designing libraries in Go way

ktr
March 10, 2021

Designing libraries in Go way

ktr

March 10, 2021
Tweet

More Decks by ktr

Other Decks in Programming

Transcript

  1. $ curl https://api.github.com/repos/ktr0731/apigen { "id": 312020626, "node_id": "MDEwOlJlcG9zaXRvcnkzMTIwMjA2MjY=", "name": "apigen",

    "full_name": "ktr0731/apigen", "private": false, "owner": { "login": "ktr0731", "id": 12953836, "node_id": "MDQ6VXNlcjEyOTUzODM2", …
  2. ίϚϯυϥΠϯʜʁ $ apigen --package api --out api_gen.go \ "curl example.com/post"

    "GetPost" \ "curl -d "{...}" example.com/posts" "CreatePost"
  3. ίϚϯυϥΠϯʜʁ $ apigen --package api --out api_gen.go \ "curl example.com/post"

    "GetPost" \ "curl -d "{...}" example.com/posts" "CreatePost" ੜ੒ର৅"1*͕૿͑ΔͨͼʹҾ਺͕૿͑Δ🤔 ҉໧తʹʮDVSMίϚϯυʯʮϝιου໊ʯͷϖΞΛཁٻ͍ͯͯ͠௚ײతͰ͸ͳ͍ʜ
  4. $ cat .goreleaser.yaml builds: - skip: true $ git tag

    v0.1.0 main $ goreleaser ϥΠϒϥϦͷ഑෍