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
58
0
Share
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
57
Elementary algorithm
mochisuna
0
29
ssh-dynamic-forward
mochisuna
0
64
ServerlessFramework-Trello
mochisuna
0
35
TechBash Slack Reaction Award
mochisuna
0
49
techbash-clasp
mochisuna
0
99
vuejs-night-publish
mochisuna
0
1.2k
docker-multi-stage-build
mochisuna
0
170
Other Decks in Programming
See All in Programming
SPMマルチモジュールで テストカバレッジを取得する技法
yosshi4486
0
120
新規プロダクトを高速で生み出すハーネスエンジニアリング
seanchas116
3
270
Cloudflare で始める Data Platform
ta93abe
0
300
継続的な負荷検証を目指して
pyama86
3
1.5k
Java × distroless で 軽量なコンテナイメージを / Java on Distroless
contour_gara
0
160
権限チェックの一貫性を型で守る TypeScript による多層防御
mnch
3
590
oxlintはeslint/typescript-eslintを置き換えられるのか
shomafujita
2
210
関係性から理解する"同一性"の型用語たち
pvcresin
2
520
TSKaigi 2026 TypeScriptバックエンドのオブザーバビリティ戦略 — Datadog × NestJSの実践
taiseiyamamotoan
1
190
横断組織出身のQAEがインプロセスQAEでつまずいたこと・活かせたこと
ty89
0
180
開発とはなにか、Essenceカーネルで見えるもの
ukin0k0
0
210
AlarmKitで明後日起きれるアラームアプリを作る
trickart
0
150
Featured
See All Featured
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.3k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.8k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.3k
We Are The Robots
honzajavorek
0
230
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.7k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.5k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
560
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
170
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.9k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
140
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.7k
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ͱ͍͏ ϓϥοτϑΥʔϜ
໘ന͍
ήʔϜ࡞ΕΔ
Ͱ
ਖ਼͜Εඳ͍ͯΔ ࣌ؒͷํ͕͔ͬͨ
ͦΕͱ͔͘
Πϯλʔϯ ͓͔ͭΕ͞·ʂ