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
730
Re:Buildでのローコード開発の取り組み
株式会社Re:Buildでは数年間、受託開発を行なってきました。
その中で取り組んだローコード開発の話をします。
Takayuki
August 24, 2022
Tweet
Share
More Decks by Takayuki
See All by Takayuki
Laravel × Clean Architecture
bumptakayuki
0
300
エンジニアのキャリア論
bumptakayuki
0
190
地方カンファレンス主催のススメ
bumptakayuki
1
210
Laravelで敢えて試す脆弱性のある書き方
bumptakayuki
2
1.1k
地方でのPHPエンジニア採用って実際どうなの?
bumptakayuki
0
650
沖縄観光、名物を一挙紹介!
bumptakayuki
2
650
Laravel ShiftでLaravelのバージョンアップしてみた話
bumptakayuki
1
2.7k
flutterでイベントアプリを作ってみた
bumptakayuki
0
160
オフショア開発の辛みと学んだ事
bumptakayuki
0
390
Other Decks in Programming
See All in Programming
プロダクトという一杯を作る - プロダクトチームが味の責任を持つまでの煮込み奮闘記
hiliteeternal
0
330
React 使いじゃなくても知っておきたい教養としての React
oukayuka
18
5k
Quality Gates in the Age of Agentic Coding
helmedeiros
PRO
1
120
変化を楽しむエンジニアリング ~ いままでとこれから ~
murajun1978
0
640
Flutterと Vibe Coding で個人開発!
hyshu
1
200
Jakarta EE Meets AI
ivargrimstad
0
540
中級グラフィックス入門~効率的なメッシュレット描画~
projectasura
4
2.3k
QA x AIエコシステム段階構築作戦
osu
0
230
React は次の10年を生き残れるか:3つのトレンドから考える
oukayuka
41
16k
「次に何を学べばいいか分からない」あなたへ──若手エンジニアのための学習地図
panda_program
3
700
DatadogのArchived LogsをSnowflakeで高速に検索する方法(Archive Searchでオワコンにならないことを祈って) / How to search Datadog Archived Logs quickly with Snowflake (hoping Datadog Archive Search doesn’t make this obsolete)
civitaspo
0
100
Reactの歴史を振り返る
tutinoko
1
160
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Designing Experiences People Love
moore
142
24k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
Bash Introduction
62gerente
613
210k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.5k
Scaling GitHub
holman
461
140k
Statistics for Hackers
jakevdp
799
220k
Producing Creativity
orderedlist
PRO
346
40k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
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 · ͱ Ί ɾগͳ͍ͰϝοηʔδػೳΛߏஙͰ͖Δɻ ɾಋೖ͢Δ͜ͱͰαʔϏεͷϝΠϯػೳͷ։ൃʹूதͰ͖Δɻ ɾ͜Ε͔ΒϦϦʔε༧ఆͳͷͰɺڵຯ͋ΕͬͯΈ͍ͯͩ͘͞ʂ
Ұॹʹಇ͍ͯ͘ΕΔؒΛืूͯ͠·͢ʂʂ
ࢲͨͪελʔτΞοϓاۀͷ ॳظϓϩμΫτ։ൃΛಘҙͱ͍ͯ͠·͢ɻ