Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
GOで作るCLIツール
Search
Akifumi Tominaga
December 03, 2018
Programming
1
330
GOで作るCLIツール
Go言語で作ったGoogle Cloud Pub/Sub のCLIツールの紹介です。
Akifumi Tominaga
December 03, 2018
Tweet
Share
More Decks by Akifumi Tominaga
See All by Akifumi Tominaga
Firebase Remote Config を利用した Feature Flags の導入
decoch
0
140
Firebase Performance を利用したアプリの起動時間高速化
decoch
0
120
依存関係を静的解析しよう
decoch
2
370
CircleCIを使って 「完全サーバーレス運用」を 実現した話
decoch
2
450
DBFlute Introで 気軽にDBコメント変更
decoch
0
120
DBFlute-intro
decoch
0
55
Other Decks in Programming
See All in Programming
どうして手を動かすよりもチーム内のコードレビューを優先するべきなのか
okashoi
3
870
非ブラウザランタイムとWeb標準 / Non-Browser Runtimes and Web Standards
petamoriken
0
430
令和7年版 あなたが使ってよいフロントエンド機能とは
mugi_uno
10
5.2k
Flatt Security XSS Challenge 解答・解説
flatt_security
0
740
Scaling your build logic
antalmonori
1
100
Rubyでつくるパケットキャプチャツール
ydah
0
170
Итераторы в Go 1.23: зачем они нужны, как использовать, и насколько они быстрые?
lamodatech
0
1.4k
Внедряем бюджетирование, или Как сделать хорошо?
lamodatech
0
950
Azure AI Foundryのご紹介
qt_luigi
1
210
盆栽転じて家具となる / Bonsai and Furnitures
aereal
0
1.9k
return文におけるstd::moveについて
onihusube
1
1.4k
Package Traits
ikesyo
1
210
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
18k
Navigating Team Friction
lara
183
15k
A Modern Web Designer's Workflow
chriscoyier
693
190k
VelocityConf: Rendering Performance Case Studies
addyosmani
327
24k
A designer walks into a library…
pauljervisheath
205
24k
Faster Mobile Websites
deanohume
305
30k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Building Applications with DynamoDB
mza
93
6.2k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
960
How to train your dragon (web standard)
notwaldorf
89
5.8k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
173
51k
Transcript
GOͰ࡞ΔCLIπʔϧ 2018/12/03 Gopherಓ @decoch
ࣗݾհ • ࢯ໊ : Ӭ ߊ࢙ @decoch • Github: @decoch
• Twitter: @decoch718 • Smart phone app engineer & Server side • ར༻ݴޠ • Java -> Swift -> Kotlin -> Golang • Open source • DBFlute Intro(https://github.com/dbflute/dbflute-intro)
Agenda • ࡞ͨ͠πʔϧ • ࡞͖͔͚ͬͨͬ • ՝ͱղܾࡦ • λεΫ •
·ͱΊ
࡞ͨ͠πʔϧ
࡞ͨ͠πʔϧ $-*
࡞ͨ͠πʔϧ $-*
࡞ͨ͠πʔϧ
͖͔͚ͭͬͨͬ͘ • GCP + Golnag Ͱ৽نϓϩμΫτΛ։ൃ • Pub/SubͷSubscriptionsͷఆٛΛίʔυཧ ͍ͨ͠ •
ϩʔΧϧͷΤϛϡϨʔλͰςετ͍ͨ͠
࡞͖͔͚ͬͨͬ
࡞͖͔͚ͬͨͬ IUUQTDMPVEHPPHMFDPNQVCTVCEPDTFNVMBUPS IMKBVTJOH@UIF@FNVMBUPS
՝ͱղܾࡦ • ՝ • EmulatorͰͷςετ͕؆୯Ͱͳ͍ • GUIͰPub/SubͷઃఆΛՃ͢Δͱݕূͱຊ൪ͰζϨ͕ى͖ΔՄೳੑ͕ ͋Δ • ղܾࡦ
• ϑΝΠϧΛಡΈࠐΜͰPub/SubʹઃఆΛө͢Δ • Pub/SubͷઃఆΛಡΈࠐΈϑΝΠϧͱͯ͠ు͖ग़͢ • ϑΝΠϧͷϑΥʔϚοτyamlܗࣜͱ͢Δ
λεΫ • Pub/Subͷੜͱऔಘ͔͠ରԠ͍ͯ͠ͳ͍ • SubscriptionͷPullܕʹରԠͰ͖͍ͯͳ͍
Appendix • ࢀߟʹ͍͖ͤͯͨͩ͞·ͨ͠ • nshmura/dsio: https://github.com/ nshmura/dsio • ༻ϥΠϒϥϦ •
urfave/cli: https://github.com/urfave/cli
·ͱΊ • Pub/SubͷΫϥΠΞϯτΛ࡞ͬͨ • GolangͩͱCLIπʔϧ͕؆୯ʹ࡞Ͱ͖Δ • ·ͩπʔϧ͕͍ͬͯͳ͍ͷͰGolangͷί ϛϡχςΟʹߩݙͰ͖Δʁ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠