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
Hirokazu Maruta
September 27, 2019
Programming
0
51
surprise-lt-for-intern-vol-2
インターン生向けシークレット発表、第2弾。
ゲームを作ってみた話。
number-hit game bot.
Hirokazu Maruta
September 27, 2019
Tweet
Share
More Decks by Hirokazu Maruta
See All by Hirokazu Maruta
encryption
mochisuna
0
100
わかった気になるチューリングマシン
mochisuna
0
45
Elementary algorithm
mochisuna
0
24
ssh-dynamic-forward
mochisuna
0
55
ServerlessFramework-Trello
mochisuna
0
29
TechBash Slack Reaction Award
mochisuna
0
45
techbash-clasp
mochisuna
0
82
vuejs-night-publish
mochisuna
0
1k
docker-multi-stage-build
mochisuna
0
160
Other Decks in Programming
See All in Programming
AI Agent 時代のソフトウェア開発を支える AWS Cloud Development Kit (CDK)
konokenj
6
970
Rails Frontend Evolution: It Was a Setup All Along
skryukov
0
320
状態遷移図を書こう / Sequence Chart vs State Diagram
orgachem
PRO
2
250
型で語るカタ
irof
0
800
Workers を定期実行する方法は一つじゃない
rokuosan
0
130
slogパッケージの深掘り
integral0515
0
120
ZeroETLで始めるDynamoDBとS3の連携
afooooil
0
120
The Modern View Layer Rails Deserves: A Vision For 2025 And Beyond @ RailsConf 2025, Philadelphia, PA
marcoroth
2
780
What's new in AppKit on macOS 26
1024jp
0
170
Android 16KBページサイズ対応をはじめからていねいに
mine2424
0
640
TypeScriptでDXを上げろ! Hono編
yusukebe
3
860
20250704_教育事業におけるアジャイルなデータ基盤構築
hanon52_
5
1.2k
Featured
See All Featured
The Cult of Friendly URLs
andyhume
79
6.5k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.5k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Statistics for Hackers
jakevdp
799
220k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
GraphQLとの向き合い方2022年版
quramy
49
14k
How to Ace a Technical Interview
jacobian
278
23k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.8k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
840
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ͱ͍͏ ϓϥοτϑΥʔϜ
໘ന͍
ήʔϜ࡞ΕΔ
Ͱ
ਖ਼͜Εඳ͍ͯΔ ࣌ؒͷํ͕͔ͬͨ
ͦΕͱ͔͘
Πϯλʔϯ ͓͔ͭΕ͞·ʂ