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
390
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
250
Firebase Performance を利用したアプリの起動時間高速化
decoch
0
180
依存関係を静的解析しよう
decoch
2
420
CircleCIを使って 「完全サーバーレス運用」を 実現した話
decoch
2
500
DBFlute Introで 気軽にDBコメント変更
decoch
0
130
DBFlute-intro
decoch
0
71
Other Decks in Programming
See All in Programming
Go1.26 go fixをプロダクトに適用して困ったこと
kurakura0916
0
310
Rで始めるML・LLM活用入門
wakamatsu_takumu
0
120
Head of Engineeringが現場で回した生産性向上施策 2025→2026
gessy0129
0
200
ふん…おもしれぇ Parser。RubyKaigi 行ってやるぜ
aki_pin0
0
120
Go 1.26でのsliceのメモリアロケーション最適化 / Go 1.26 リリースパーティ #go126party
mazrean
1
310
JPUG勉強会 OSSデータベースの内部構造を理解しよう
oga5
2
220
Swift ConcurrencyでよりSwiftyに
yuukiw00w
0
220
new(1.26) ← これすき / kamakura.go #8
utgwkk
0
1.1k
Ruby x Terminal
a_matsuda
5
510
CSC307 Lecture 08
javiergs
PRO
0
690
AI活用のコスパを最大化する方法
ochtum
0
120
ご飯食べながらエージェントが開発できる。そう、Agentic Engineeringならね。
yokomachi
1
270
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Tell your own story through comics
letsgokoyo
1
830
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
140
Game over? The fight for quality and originality in the time of robots
wayneb77
1
130
My Coaching Mixtape
mlcsv
0
63
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
290
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
850
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
110
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
71
How to train your dragon (web standard)
notwaldorf
97
6.5k
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ͷί ϛϡχςΟʹߩݙͰ͖Δʁ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠