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
340
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
150
Firebase Performance を利用したアプリの起動時間高速化
decoch
0
120
依存関係を静的解析しよう
decoch
2
370
CircleCIを使って 「完全サーバーレス運用」を 実現した話
decoch
2
450
DBFlute Introで 気軽にDBコメント変更
decoch
0
120
DBFlute-intro
decoch
0
57
Other Decks in Programming
See All in Programming
Ruby on cygwin 2025-02
fd0
0
150
社内フレームワークとその依存性解決 / in-house framework and its dependency management
vvakame
1
560
Multi Step Form, Decentralized Autonomous Organization
pumpkiinbell
1
750
GoとPHPのインターフェイスの違い
shimabox
2
190
定理証明プラットフォーム lapisla.net
abap34
1
1.8k
2024年のWebフロントエンドのふりかえりと2025年
sakito
3
250
sappoRo.R #12 初心者セッション
kosugitti
0
260
color-scheme: light dark; を完全に理解する
uhyo
5
390
Immutable ActiveRecord
megane42
0
140
Software Architecture
hschwentner
6
2.1k
PHPのバージョンアップ時にも役立ったAST
matsuo_atsushi
0
120
楽しく向き合う例外対応
okutsu
0
140
Featured
See All Featured
A Tale of Four Properties
chriscoyier
158
23k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
12
960
The Invisible Side of Design
smashingmag
299
50k
How to train your dragon (web standard)
notwaldorf
91
5.8k
Designing for Performance
lara
604
68k
Faster Mobile Websites
deanohume
306
31k
Rails Girls Zürich Keynote
gr2m
94
13k
Code Reviewing Like a Champion
maltzj
521
39k
Unsuck your backbone
ammeep
669
57k
Agile that works and the tools we love
rasmusluckow
328
21k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
30
4.6k
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ͷί ϛϡχςΟʹߩݙͰ͖Δʁ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠