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
Re:Buildでのローコード開発の取り組み
Search
Takayuki
August 24, 2022
Programming
0
680
Re:Buildでのローコード開発の取り組み
株式会社Re:Buildでは数年間、受託開発を行なってきました。
その中で取り組んだローコード開発の話をします。
Takayuki
August 24, 2022
Tweet
Share
More Decks by Takayuki
See All by Takayuki
エンジニアのキャリア論
bumptakayuki
0
140
地方カンファレンス主催のススメ
bumptakayuki
1
170
Laravelで敢えて試す脆弱性のある書き方
bumptakayuki
1
920
地方でのPHPエンジニア採用って実際どうなの?
bumptakayuki
0
580
沖縄観光、名物を一挙紹介!
bumptakayuki
2
580
Laravel ShiftでLaravelのバージョンアップしてみた話
bumptakayuki
1
2.2k
flutterでイベントアプリを作ってみた
bumptakayuki
0
130
オフショア開発の辛みと学んだ事
bumptakayuki
0
360
ChatGPTにStripeのサンプルコードを書かせてみた
bumptakayuki
1
190
Other Decks in Programming
See All in Programming
Honoのおもしろいミドルウェアをみてみよう
yusukebe
1
230
推しメソッドsource_locationのしくみを探る - はじめてRubyのコードを読んでみた
nobu09
2
270
ナレッジイネイブリングにAIを活用してみる ゆるSRE勉強会 #9
nealle
0
160
Learning Kotlin with detekt
inouehi
1
130
SwiftUI Viewの責務分離
elmetal
PRO
2
270
Serverless Rust: Your Low-Risk Entry Point to Rust in Production (and the benefits are huge)
lmammino
1
150
Djangoアプリケーション 運用のリアル 〜問題発生から可視化、最適化への道〜 #pyconshizu
kashewnuts
1
260
XStateを用いた堅牢なReact Components設計~複雑なClient Stateをシンプルに~ @React Tokyo ミートアップ #2
kfurusho
1
990
React 19アップデートのために必要なこと
uhyo
8
1.5k
機能が複雑化しても 頼りになる FactoryBotの話
tamikof
0
140
データベースのオペレーターであるCloudNativePGがStatefulSetを使わない理由に迫る
nnaka2992
0
230
「個人開発マネタイズ大全」が教えてくれたこと
bani24884
1
190
Featured
See All Featured
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
10
510
Large-scale JavaScript Application Architecture
addyosmani
511
110k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
Practical Orchestrator
shlominoach
186
10k
Thoughts on Productivity
jonyablonski
69
4.5k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Designing for Performance
lara
604
68k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Rails Girls Zürich Keynote
gr2m
94
13k
Gamification - CAS2011
davidbonilla
80
5.2k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
Building Applications with DynamoDB
mza
93
6.2k
Transcript
R e : B u i l d で ͷ
ϩ ʔ ί ʔ ド ։ ൃ ͷ औ Γ Έ ླ ೭ P H P Χ ϯ ϑ Ν Ϩ ϯ ε ԭ ೄ 2 0 2 2
ࣗݾհɾձࣾհ ϩʔίʔυ։ൃͱʁ গͳ͍ͰϝοηʔδػೳΛߏங͢Δ ΞδΣϯμ
ද औ క ླ ೭ 3
P R O F I L E ʮ ԭ ೄ ͷ ՝ Λ ղ ܾ ͠ ɺ ࿑ ಇ ڥ Λ ʮ ࠶ ߏ ங ʹ Ϧ Ϗ ϧ υ ʯ ͢ Δ ʯ גࣜձࣾϑϧεϐʔυʹwebΤϯδχΞͱͯ͠ೖࣾɻϑϧεϐʔυͰɺେنͳࠂ৴αʔ Ϗεͷཧը໘։ൃΛ୲͠ɺαʔόαΠυ͔ΒϑϩϯτΤϯυ·Ͱ෯͍։ൃʹैࣄɻϑ ϦʔϥϯεΤϯδχΞͱͯ͠1΄Ͳ׆ಈޙɺ201711݄ʹԭೄͰىۀ͠ɺגࣜձࣾRe:Build Λઃཱɻ౦ژͱԭೄͷاۀ༷͔Βͷडୗ։ൃҊ݅Λ͚ɺෳϓϩδΣΫτͷϓϩδΣΫτϚ ωʔδϟʔΛܦݧɻࣗࣾαʔϏεʮTadoruʯͰϓϩμΫτϚωʔδϟʔͱ্ཱ͔ͯͪ͛͠ Βɺγʔυͷࢿۚௐୡ·ͰΛܦݧɻ
ද ླ ͷ Π ϕ ϯ τ ొ
ஃ ࣮ ʮ ʯ 4 PHPerKaigi 2020 ϑϩϯτΤϯυ ΧϯϑΝϨϯεؔ Laravel Meetup
ձ໊ࣾ גࣜձࣾRe:Build දऀ ླ೭ ઃཱ ฏ2911݄28 ࣄۀ༰ ࣗࣾαʔϏε։ൃɾӡӦɺWebγεςϜ։ൃɺΤϯδ χΞڭҭɺσβΠϯ੍࡞ ࢿຊۚ
2,600ສԁ ॴࡏ ˟900-0015 ԭೄݝಹࢢٱໜ2-2-2 λΠϜεϏϧ ి൪߸ 050-5408-4501 ैۀһ ໊̍̎ ձ ࣾ ֓ ཁ 5
3F#VJMEʹ͍ͭͯ ࣄۀ༰ Re:Build Boot Campɺԭೄٶ࡚ͳͲͷํΛڌ ͱ࣮ͨ͠ϨϕϧΛࢦ͢ϓϩάϥϛϯάεΫʔ ϧͰ͢ɻ3ϲ݄ؒͰɺʮ࣮ϨϕϧʯʹඞཁͳʮώΞ ϦϯάεΩϧʯʮ࠷ݶͷٕज़ྗʯʮࣗݾεέδϡ ʔϧཧʯͷ3ͭͷεΩϧΛʹ͚ΒΕΔΧϦΩϡ ϥϜΛ༻ҙ͍ͯ͠·͢ɻ
ํಛԽܕͷελʔτΞοϓελδΦͰ͢ɻ ʮ৽͠ ͍ϏδωεͷΞΠσΞ͕͋ͬͯɺΤϯδχΞσ βΠφʔ͕͓ΒͣɺܗʹͰ͖ͳ͍ʯͳͲͷํاۀ ༷Λखॿ͚͠·͢ɻ·ͨɺҊ݅ͷ૬ஊ૭ޱͱͳΔ͜ ͱͰɺํʹࣄΛੜΈग़͖͔͚ͬ͢Λ࡞Γ͍ͨͱ ࢥ͍ͬͯ·͢ɻ ΤϯδχΞͷҝͷΤϯδχΞʹΑΔࣄհαʔϏ εTadoruΤϯδχΞಉ࢜ͰࣄΛγΣΞ͢Δɺ ΤϯδχΞൃͷηϛΫϩʔζͳίϛϡχςΟͰ͢ɻ ελʔτΞοϓελδΦࣄۀ 8FCΤϯδχΞڭҭࣄۀ ࣗࣾαʔϏε5BEPSVͷ ӡӦɾ։ൃ
P R O J E C T 7 ड ୗ
։ ൃ ͷ ਐ Ί ํ ( ϥ Ϙ ܕ ։ ൃ ) ݟੵॻ࡞ ϢʔβʔετʔϦʔɾ σβΠϯͷ࡞ ։ൃ ϦϦʔε ൃݕ౼ ݟੵॻͷ֬ೝ ϨϏϡʔ ϨϏϡʔͷґཔ ϨϏϡʔ ϨϏϡʔͷґཔ ൃ Rebuild ΫϥΠΞϯτ ཁ݅ఆٛɾώΞϦϯά ݄ि͝ͱʹ͜ͷεϓϦϯτΛ܁Γฦ͢ ϨϏϡʔࢦఠ ྃ
ʮ ʯ ։ ൃ ࣮ ৄ ࡉ 8 ϩ
ʔ ί ʔ υ ։ ൃ ͱ ϩʔίʔυ։ൃ (Low code development) ͱɺՄ ೳͳݶΓϓϩάϥϛϯά࡞ۀΛݮΒ͠ɺϚεૢ ࡞ͳͲͰ༻ҙ͞Εͨ෦ΛΈ߹ΘͤͯΞϓϦΛ ։ൃ͢Δख๏Ͱ͢ɻ Ҿ༻ɿUdemy https://udemy.benesse.co.jp/development/system/ what-is-lowcode.html ਤ ɿ ϩ ʔ ί ʔ υ ։ ൃ ͱ ϊ ʔ ί ʔ υ ։ ൃ ɺ ै དྷ ͷ ։ ൃ ͱ ͷ ҧ ͍
9 ͜ Μ ͳ ՝ ͋ Γ · ͤ
Μ ͔ ʁ ॳظϦϦʔεͰϝοηʔδػೳΛೖ Ε͍͚ͨͲɺ։ൃʹ͕͔͔࣌ؒΔ Λ͔͚ͯϝοηʔδػೳΛ࡞ͬ ͕ͨɺػೳ͕গͳ͍͠ɺΫΦϦ ςΟ͍
ࣗࣾαʔϏε։ൃΛ͢ΔதͰࢿۚௐୡ·Ͱʹβ൛Ϩϕ ϧͷϓϩμΫτΛϦϦʔε͢Δඞཁ͕͋Γ·ͨ͠ɻ ͚ΕͲɺϝοηʔδػೳͷ։ൃʹࢥͬͨΑΓ͕࣌ؒ ͔͔ͬͯ͠·͍ɺॳɺ20193݄ʹϦϦʔε༧ఆ Ͱ͕ͨ͠ɺ6݄ࠒ·ͰҾ͍ͯ͠·͍·ͨ͠ɻ ͳͷͰɺελʔτΞοϓاۀ͕ϝΠϯػೳͷ։ൃʹઐ ೦Ͱ͖ɺॳظϦϦʔεͷ։ൃίετΛ͑ΒΕΔΑ͏ ͳϓϩμΫτΛఏڙ͍ͨ͠ͱࢥ͍·ͨ͠ɻ ࣗͷମݧஊ αʔϏεͷϝΠϯػೳʹઐ೦ͯ͠
։ൃͰ͖ͳ͔ͬͨ
11 ߟ ͑ ͨ α ʔ Ϗ ε ༰
ϝοηʔδ UIΩοτ (ΞϓϦ) API/SDK αʔόʔ ϔουϨεϝοηʔδ গͳ͍ͰϝοηʔδػೳΛߏஙͰ͖ΔϩʔίʔυπʔϧͰ͢ɻ
12 Ϣ ʔ ε έ ʔ ε ͷ Π ϝ
ʔ δ EC ϥΠϒ৴ SNS ΦϯϥΠϯ εΫʔϧ σϦόϦʔ Ϛονϯά ΞϓϦ
13 α ʔ Ϗ ε ༰ ϝοηʔδૹ৴ UIΩοτ(ΞϓϦ) ͷఏڙ
API/SDKͷఏڙ αʔόʔͷఏڙ ॖ Πϯϑϥߏங͕ෆཁ όοΫΤϯυͷ࣮ ίετܰݮ ఏڙ͢Δػೳ ಘΒΕΔޮՌ ϚονϯάΞϓϦ
14 ࠓ ޙ ఏ ڙ ༧ ఆ ͷ ϝ ο
η ʔ δ ͷ ػ ೳ ը૾ૹ৴ ಈըૹ৴ ϑΝΠϧૹ৴ ϝοηʔδ༁ Push௨ ϝʔϧ௨ SMS௨ ϥΠϒ৴ Ի௨ ϏσΦ௨ Ξϯέʔτ Webhook
શମͷॲཧΠϝʔδ
ಋೖεςοϓ
ಋೖεςοϓ STEP1 STEP2 STEP3
ݸਓ։ൃ͍ͯ͠ΔαʔϏε
Demo ϝϯλʔϚονϯά
Demo ϝοηʔδը໘
21 ಋ ೖ ํ ๏ STEP1 ཧը໘ͰαʔϏεใΛొͯ͠ɺAPIτʔΫϯͱΫϥΠΞϯτIDΛ औಘ͠·͢ɻ
22 ಋ ೖ ํ ๏ STEP2 ࣗͷΞϓϦͷAPI(Laravel)ଆʹAPIτʔΫϯɺΫϥΠΞϯτIDͷઃఆΛ .envʹ͠·͢ɻjwtΛฦ٫͢ΔϩδοΫΛॻ͖·͢ɻ
23 ಋ ೖ ํ ๏ STEP3 ϑϩϯτΤϯυଆͰόοΫΤϯυͷ API Ͱ jwt
Λੜ͠ API ܦ༝Ͱड͚औͬ ͯɺSDKͷηοτΞοϓΛ͠·͢ɻ
24 S D K ͷ ༻ ํ ๏ ͷ
ྫ CreateChannel(νϟϯωϧ࡞) νϟϯωϧ໊ͱνϟϯωϧʹॴଐ͢ΔϝϯόʔΛύϥϝʔλʹઃఆͯ͠ϦΫΤετ͢Δ͜ͱͰνϟϯωϧΛ࡞Ͱ ͖·͢ɻ SDKͰͷfunction࣮ߦ Ϩεϙϯεͷྫ
25 · ͱ Ί ɾগͳ͍ͰϝοηʔδػೳΛߏஙͰ͖Δɻ ɾಋೖ͢Δ͜ͱͰαʔϏεͷϝΠϯػೳͷ։ൃʹूதͰ͖Δɻ ɾ͜Ε͔ΒϦϦʔε༧ఆͳͷͰɺڵຯ͋ΕͬͯΈ͍ͯͩ͘͞ʂ
Ұॹʹಇ͍ͯ͘ΕΔؒΛืूͯ͠·͢ʂʂ
ࢲͨͪελʔτΞοϓاۀͷ ॳظϓϩμΫτ։ൃΛಘҙͱ͍ͯ͠·͢ɻ