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
1
750
Re:Buildでのローコード開発の取り組み
株式会社Re:Buildでは数年間、受託開発を行なってきました。
その中で取り組んだローコード開発の話をします。
Takayuki
August 24, 2022
Tweet
Share
More Decks by Takayuki
See All by Takayuki
Laravel × Clean Architecture
bumptakayuki
0
380
エンジニアのキャリア論
bumptakayuki
1
210
地方カンファレンス主催のススメ
bumptakayuki
1
220
Laravelで敢えて試す脆弱性のある書き方
bumptakayuki
2
1.2k
地方でのPHPエンジニア採用って実際どうなの?
bumptakayuki
0
690
沖縄観光、名物を一挙紹介!
bumptakayuki
2
680
Laravel ShiftでLaravelのバージョンアップしてみた話
bumptakayuki
1
2.9k
flutterでイベントアプリを作ってみた
bumptakayuki
0
160
オフショア開発の辛みと学んだ事
bumptakayuki
0
400
Other Decks in Programming
See All in Programming
CSC509 Lecture 08
javiergs
PRO
0
240
チームの境界をブチ抜いていけ
tokai235
0
220
なぜGoのジェネリクスはこの形なのか? - Featherweight Goが明かす設計の核心
qualiarts
0
240
Go言語の特性を活かした公式MCP SDKの設計
hond0413
1
490
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
440
What's new in Spring Modulith?
olivergierke
1
170
Introduce Hono CLI
yusukebe
6
3.1k
AkarengaLT vol.38
hashimoto_kei
1
120
マンガアプリViewerの大画面対応を考える
kk__777
0
150
Server Side Kotlin Meetup vol.16: 内部動作を理解して ハイパフォーマンスなサーバサイド Kotlin アプリケーションを書こう
ternbusty
3
240
EMこそClaude Codeでコード調査しよう
shibayu36
0
370
SwiftDataを使って10万件のデータを読み書きする
akidon0000
0
240
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Agile that works and the tools we love
rasmusluckow
331
21k
How to Think Like a Performance Engineer
csswizardry
27
2.1k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.2k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Mobile First: as difficult as doing things right
swwweet
225
10k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.7k
Designing for humans not robots
tammielis
254
26k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Product Roadmaps are Hard
iamctodd
PRO
55
11k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.1k
Practical Orchestrator
shlominoach
190
11k
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 · ͱ Ί ɾগͳ͍ͰϝοηʔδػೳΛߏஙͰ͖Δɻ ɾಋೖ͢Δ͜ͱͰαʔϏεͷϝΠϯػೳͷ։ൃʹूதͰ͖Δɻ ɾ͜Ε͔ΒϦϦʔε༧ఆͳͷͰɺڵຯ͋ΕͬͯΈ͍ͯͩ͘͞ʂ
Ұॹʹಇ͍ͯ͘ΕΔؒΛืूͯ͠·͢ʂʂ
ࢲͨͪελʔτΞοϓاۀͷ ॳظϓϩμΫτ։ൃΛಘҙͱ͍ͯ͠·͢ɻ