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
740
Re:Buildでのローコード開発の取り組み
株式会社Re:Buildでは数年間、受託開発を行なってきました。
その中で取り組んだローコード開発の話をします。
Takayuki
August 24, 2022
Tweet
Share
More Decks by Takayuki
See All by Takayuki
Laravel × Clean Architecture
bumptakayuki
0
320
エンジニアのキャリア論
bumptakayuki
0
200
地方カンファレンス主催のススメ
bumptakayuki
1
210
Laravelで敢えて試す脆弱性のある書き方
bumptakayuki
2
1.1k
地方でのPHPエンジニア採用って実際どうなの?
bumptakayuki
0
670
沖縄観光、名物を一挙紹介!
bumptakayuki
2
660
Laravel ShiftでLaravelのバージョンアップしてみた話
bumptakayuki
1
2.7k
flutterでイベントアプリを作ってみた
bumptakayuki
0
160
オフショア開発の辛みと学んだ事
bumptakayuki
0
400
Other Decks in Programming
See All in Programming
The state patternの実践 個人開発で培ったpractice集
miyanokomiya
0
150
Laravel Boost 超入門
fire_arlo
1
120
AIでLINEスタンプを作ってみた
eycjur
1
200
【第4回】関東Kaggler会「Kaggleは執筆に役立つ」
mipypf
0
780
GUI操作LLMの最新動向: UI-TARSと関連論文紹介
kfujikawa
0
1k
STUNMESH-go: Wireguard NAT穿隧工具的源起與介紹
tjjh89017
0
380
Microsoft Orleans, Daprのアクターモデルを使い効率的に開発、デプロイを行うためのSekibanの試行錯誤 / Sekiban: Exploring Efficient Development and Deployment with Microsoft Orleans and Dapr Actor Models
tomohisa
0
210
新世界の理解
koriym
0
140
Rancher と Terraform
fufuhu
0
100
ライブ配信サービスの インフラのジレンマ -マルチクラウドに至ったワケ-
mirrativ
2
260
コーディングエージェント時代のNeovim
key60228
1
100
RDoc meets YARD
okuramasafumi
1
100
Featured
See All Featured
How GitHub (no longer) Works
holman
315
140k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
The Art of Programming - Codeland 2020
erikaheidi
55
13k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
Testing 201, or: Great Expectations
jmmastey
45
7.6k
Git: the NoSQL Database
bkeepers
PRO
431
65k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Speed Design
sergeychernyshev
32
1.1k
Visualization
eitanlees
147
16k
GitHub's CSS Performance
jonrohan
1031
460k
Done Done
chrislema
185
16k
YesSQL, Process and Tooling at Scale
rocio
173
14k
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 · ͱ Ί ɾগͳ͍ͰϝοηʔδػೳΛߏஙͰ͖Δɻ ɾಋೖ͢Δ͜ͱͰαʔϏεͷϝΠϯػೳͷ։ൃʹूதͰ͖Δɻ ɾ͜Ε͔ΒϦϦʔε༧ఆͳͷͰɺڵຯ͋ΕͬͯΈ͍ͯͩ͘͞ʂ
Ұॹʹಇ͍ͯ͘ΕΔؒΛืूͯ͠·͢ʂʂ
ࢲͨͪελʔτΞοϓاۀͷ ॳظϓϩμΫτ։ൃΛಘҙͱ͍ͯ͠·͢ɻ