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
surprise-lt-for-intern-vol-2
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Hirokazu Maruta
September 27, 2019
Programming
59
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
surprise-lt-for-intern-vol-2
インターン生向けシークレット発表、第2弾。
ゲームを作ってみた話。
number-hit game bot.
Hirokazu Maruta
September 27, 2019
More Decks by Hirokazu Maruta
See All by Hirokazu Maruta
encryption
mochisuna
0
120
わかった気になるチューリングマシン
mochisuna
0
62
Elementary algorithm
mochisuna
0
30
ssh-dynamic-forward
mochisuna
0
65
ServerlessFramework-Trello
mochisuna
0
36
TechBash Slack Reaction Award
mochisuna
0
51
techbash-clasp
mochisuna
0
100
vuejs-night-publish
mochisuna
0
1.2k
docker-multi-stage-build
mochisuna
0
170
Other Decks in Programming
See All in Programming
セキュリティの専門家じゃなくてもできる。「セキュリティ意識」をアップデートして サプライチェーン攻撃への耐性を高めよう。
tk3fftk
5
710
TypeScript+Orvalで実現する型安全かつ堅牢でスケーラブルなマルチチャネル通知基盤 / TSKaigi Night talks ~after conference~
d0riven
0
320
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
560
JavaDoc 再入門
nagise
0
320
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
170
Java × distroless で 軽量なコンテナイメージを / Java on Distroless
contour_gara
0
520
Contextとはなにか
chiroruxx
0
290
New "Type" system on PicoRuby
pocke
1
810
AI 時代のソフトウェア設計の学び方
masuda220
PRO
29
12k
jQueryをバージョンアップする前に使いたいjQuery Migrate
matsuo_atsushi
0
200
ECSアプリログをFireLensでコスト削減しようとしたけど諦めた話 in Fargate×Node.js
akihisaikeda
2
4k
Observability in Practice:Grafana 與 Edge Device SRE 的那些事
blueswen
0
160
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
23k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
56k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
970
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
200
The SEO Collaboration Effect
kristinabergwall1
1
480
Statistics for Hackers
jakevdp
799
230k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
190
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
290
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
940
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
160
How to Think Like a Performance Engineer
csswizardry
28
2.6k
Transcript
γʔΫϨοτൃද giftee SaaS div. Engineer ·ΔͨͻΖ͔ͣ
ࣗݾհ • ؙాʢ·ΔͨͻΖ͔ͣʣ • Twitter: @mochi_suna • giftee.co SaaSνʔϜΤϯδχΞ •
झຯɿϐΞϊɺϘυήɺΞΠίϯ࡞ʢΧούʣ • ࣗಈԽେ͖ɻख࡞ۀ͖Β͍ɻ • githubɿ @mochisuna
ٕज़໘
͔݁Β
LINEBot ࡞Γ·ͨ͠
ͳ͔ͥͬͯʁ
ωλ͕ࢥ͍͍͔ͭͨΒ
Agenda • LINEBotΛ࡞ͬͯΈͨ • ઃܭࢥ • LINEBotͰͰ͖Δ͜ͱ
࡞ͬͨͷ ʮͯήʔϜʯ bot͕1ʙ100·Ͱͷ ࣈΛϥϯμϜʹهԱ͢Δ • 10ճҎʹͯΕΫϦΞ • Ͱ͖ͳ͚ΕήʔϜΦʔόʔ • େ͖͍/খ͍͞Λڭ͑ͯ͘ΕΔ
Ͳ͏͍͏͜ͱɾɾɾʁ • ήʔϜελʔτʂ • bot͕దʹࣈΛه
Ͳ͏͍͏͜ͱɾɾɾʁ • Ϣʔβʔ͕దʹࣈΛૹΔ • bot͕ฦ͢Δ ͬͱେ͖͍
Ͳ͏͍͏͜ͱɾɾɾʁ • 10ճҎʹͯΔ • Ͱ͖ͳ͔ͬͨΒήʔϜΦʔόʔ ճϛε͔ͬͨΒ ήʔϜΦʔόʔ
ઃܭࢥ
ઃܭࢥ 1. goݴޠ • Standard package layout 2. dockerͰϗοτϦϩʔυ •
σϓϩΠ༻Πϝʔδ = ϩʔΧϧͷΠϝʔδ 3. DDDʹ։ൃ࣌ʹؾྗ͕͚࣋ͭؒͩଇΔ ίʔυ
Why Go? 1. ࣮༻తͳϗοτϦϩʔυͷ࿅श • realizeΛ༻͍ͨϗοτϦϩʔυ • DockerΠϝʔδ࡞ˠϩʔΧϧىಈ 2. ࣮ߦ
3. ظʢࡢͷ͔Βͩ͠ɾɾɾʣ
Standard Package Layout ϧʔτύοέʔδυϝΠϯλΠϓͷͨΊʹ ଘࡏ͢Δ 3PVUFS 4FSWJDF 3FQPTJUPSZ *OGSBTUSVDUVSF .Z42-
*OUFSGBDF NBJO 4FSWJDF 3FQPTJUPSZ Handler Service Action Entity Call DB ORM
Standard Package Layout ϧʔτύοέʔδυϝΠϯλΠϓͷͨΊʹ ଘࡏ͢Δ 3PVUFS 4FSWJDF 3FQPTJUPSZ *OGSBTUSVDUVSF .Z42-
*OUFSGBDF NBJO 4FSWJDF 3FQPTJUPSZ Handler Service Action Entity Call DB ORM DDDͱ ͷ ૬ ੑ ͕ ྑ ͍
͜͏͍ͤͣ localhost:8080 "DUJPO)BOESJOH ΅͘ͷͺͦ͜Μ CloudFirestore
Why FireStore? 1. LINE UIDݻఆ 2. ࠓճେͨ͠σʔλΛ࣋ͨͳ͍ • ͜ͷ࣌ͰKVS͔ͳΓޮՌత •
ͦΕҎ্ʹͬͯΈ͔ͨͬͨϕʔε • ศརͩͬͨΑɻΈΜͳ͓͏
·ͱΊ
LINEBotͱ͍͏ ϓϥοτϑΥʔϜ
໘ന͍
ήʔϜ࡞ΕΔ
Ͱ
ਖ਼͜Εඳ͍ͯΔ ࣌ؒͷํ͕͔ͬͨ
ͦΕͱ͔͘
Πϯλʔϯ ͓͔ͭΕ͞·ʂ