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-1
Search
Hirokazu Maruta
June 21, 2019
Technology
0
44
surprise-lt-for-intern-vol-1
インターン生の課題がLINEBot作成だったので、インターン生が制作物の発表を終えた後に社員からのサプライズLTとして登壇しました。
Hirokazu Maruta
June 21, 2019
Tweet
Share
More Decks by Hirokazu Maruta
See All by Hirokazu Maruta
encryption
mochisuna
0
87
わかった気になるチューリングマシン
mochisuna
0
33
Elementary algorithm
mochisuna
0
14
ssh-dynamic-forward
mochisuna
0
36
ServerlessFramework-Trello
mochisuna
0
22
TechBash Slack Reaction Award
mochisuna
0
36
techbash-clasp
mochisuna
0
45
vuejs-night-publish
mochisuna
0
730
surprise-lt-for-intern-vol-2
mochisuna
0
38
Other Decks in Technology
See All in Technology
WebアプリケーションにおけるPDOの使い方入門 / phpcon odawara 2024
meihei3
2
420
「ふりかえりのふりかえり」をふりかえり、実のあるふりかえりにする
naitosatoshi
0
210
PHPカンファレンス小田原2024
ysknsid25
2
650
なぜ NOT A HOTEL が Web3 に取り組むのか - NOT A HOTEL TECH TALK
ynunokawa
0
160
Databricks における 『MLOps』
databricksjapan
2
120
Autonomous Database Cloud 技術詳細 / adb-s_technical_detail_jp
oracle4engineer
PRO
13
35k
Databricks:『生成AI World Cup』のご案内
databricksjapan
1
130
スタートアップの技術顧問を3年間続けて発生した事と気付き
biwakonbu
0
150
コンテナセキュリティの基本と脅威への対策
kyohmizu
3
660
2024/4/26 コンピュータ歴史博物館解説告知
toshi_atsumi
0
190
SPI原点回帰論:事業課題とFour Keysの結節点を見出す実践的ソフトウェアプロセス改善 / DevOpsDays Tokyo 2024
visional_engineering_and_design
4
1.3k
LLM とプロンプトエンジニアリング/チューターをビルドする / LLM and Prompt Engineering and Building Tutors
ks91
PRO
0
210
Featured
See All Featured
For a Future-Friendly Web
brad_frost
171
8.9k
jQuery: Nuts, Bolts and Bling
dougneiner
59
7.1k
5 minutes of I Can Smell Your CMS
philhawksworth
199
19k
Fireside Chat
paigeccino
19
2.6k
Creatively Recalculating Your Daily Design Routine
revolveconf
209
11k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
153
14k
Done Done
chrislema
178
15k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
75
41k
Building Flexible Design Systems
yeseniaperezcruz
318
37k
Reflections from 52 weeks, 52 projects
jeffersonlam
343
19k
A designer walks into a library…
pauljervisheath
199
23k
Transcript
LINEBotͰLTձΛྑ͍ͨ͘͠ giftee SaaS div. Engineer ·ΔͨͻΖ͔ͣ
ࣗݾհ • ؙాʢ·ΔͨͻΖ͔ͣʣ • Twitter: @mochi_suna • giftee.co SaaSνʔϜΤϯδχΞ •
झຯɿϐΞϊɺϘυήɺΞΠίϯ࡞ʢΧούʣ • ࣗಈԽେ͖ɻख࡞ۀ͖Β͍ɻ • github
ٕज़໘
͔݁Β
LINEBot ࡞Γ·ͨ͠
Agenda • LINEBotΛ࡞ͬͯΈͨ • ઃܭࢥ • LINEBotͰͰ͖Δ͜ͱ • ࢥ͍ͷৎ
LINEBot
࡞ͬͨͷ ʮLTձBotʯ ΠϕϯτͷࢀՃͱΞϯέʔτ • Πϕϯτͷ։࠵ɾऴྃ • ΠϕϯτͷࢀՃɾ • Πϕϯτͷථ •
ूܭʢະ࣮ʣ
LTձBot • ΠϕϯτΛ։࠵ LINEBot Φʔφʔʢొஃऀʣ Πϕϯτ ʢ-5ձͳͲʣ Πϕϯτ࡞ Πϕϯτ։࠵
LTձBot • ։࠵ࡁΈͷΠϕϯτʹࢀՃ ࢀՃऀ LINEBot Φʔφʔʢొஃऀʣ Πϕϯτ ʢ-5ձͳͲʣ ΠϕϯτࢀՃ
LTձBot • ࢀՃதͷΠϕϯτʹථ ࢀՃऀ LINEBot Φʔφʔʢొஃऀʣ Πϕϯτ ʢ-5ձͳͲʣ ථ
LTձBot • ूܭʢ͜ΕͲ͏͠Α͔ͬͳ͊ɾɾɾʣ ࢀՃऀ LINEBot Φʔφʔʢొஃऀʣ Πϕϯτ ʢ-5ձͳͲʣ ूܭ
ઃܭࢥ
ઃܭࢥ 1. goݴޠ • Standard package layout 2. dockerͰϗοτϦϩʔυ •
σϓϩΠ༻Πϝʔδ = ϩʔΧϧͷΠϝʔδ 3. DDDʹ։ൃ࣌ʹؾྗ͕͚࣋ͭؒͩଇΔ ίʔυ
Why Go? 1. ࣮༻తͳϗοτϦϩʔυͷ࿅श • realizeΛ༻͍ͨϗοτϦϩʔυ • DockerΠϝʔδ࡞ˠϩʔΧϧىಈ 2. ࣮ߦ
3. *͕ͭ͘ͱͪΐͬͱมΘΔʢϙΠϯλతͳҙຯͰʣ ܾͯ͠RailsΛ͍ͨ͘ͳ͔͔ͬͨΒͱ͔Ͱͳ͍
What’s DDD? • ΤΠϓϦϧϑʔϧͳͷͰӕͭ͘ • ͍͍ͩͨ͜Μͳײ͡
What’s DDD? • ΤΠϓϦϧϑʔϧͳͷͰӕͭ͘ • ͍͍ͩͨ͜Μͳײ͡ ґଘؔͷ໌֬ͳ͕Մೳ
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 localhost:3306 "DUJPO)BOESJOH ΅͘ͷͺͦ͜Μ
LINEBotͰͰ͖Δ͜ͱ
ΞΫγϣϯςϯϓϨʔτ ֬ೝςϯϓϨʔτ ϘλϯςϯϓϨʔτ ΧϧʔηϧςϯϓϨʔτ બςϯϓϨʔτ ͳͲ
Ϧονϝχϡʔ
Ϧονϝχϡʔ • LINE@ίϯιʔϧ͔ΒઃఆՄೳ
ࠓճ͜ͷลΛશྗͰར༻ • ϢʔβʔʹίϚϯυΛ֮͑ͤͨ͘͞ͳ͍ • ײతʹૢ࡞͍ͨ͠ • ී௨ʹͬͯΈ͍ͨ • ઃఆΛָʹ͍ͨ͠
શମతʹࡶʁ
શମతʹࡶʁ
·ͱΊ • LTձͰʹཱͪͦ͏ͳbotΛ࡞Γ·ͨ͠ • LINEBot͍͢͝ • ׂͱଟػೳ • ͿͬͪΌ͚͜ΜͳʹϦονͳΈʹ͢Δඞཁͳ͔ͬͨ •
ngrokΫιศར • ߏ͏গ͠ਪᏏ͕ඞཁ͔ͳ͊
·ͱΊ • LTձͰʹཱͪͦ͏ͳbotΛ࡞Γ·ͨ͠ • LINEBot͍͢͝ • ׂͱଟػೳ • ͿͬͪΌ͚͜ΜͳʹϦονͳΈʹ͢Δඞཁͳ͔ͬͨ •
ngrokΫιศར • ߏ͏গ͠ਪᏏ͕ඞཁ͔ͳ͊ ί ϯ τ Ϧ Ϗϡ ʔ λ ʔ ਵ ࣌ ื ू ͯ͠ · ͢
Πϯλʔϯ ͓͔ͭΕ͞·ʂ