Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Re:Buildでのローコード開発の取り組み

Takayuki
August 24, 2022

 Re:Buildでのローコード開発の取り組み

株式会社Re:Buildでは数年間、受託開発を行なってきました。
その中で取り組んだローコード開発の話をします。

Takayuki

August 24, 2022
Tweet

More Decks by Takayuki

Other Decks in Programming

Transcript

  1. R e : B u i l d で ͷ

    ϩ ʔ ί ʔ ド ։ ൃ ͷ औ Γ ૊ Έ ླ ໦ ޹ ೭ P H P Χ ϯ ϑ Ν Ϩ ϯ ε ԭ ೄ 2 0 2 2
  2. ࣗݾ঺հɾձࣾ঺հ ϩʔίʔυ։ൃͱ͸ʁ গͳ͍޻਺ͰϝοηʔδػೳΛߏங͢Δ ΞδΣϯμ

  3. ୅ ද औ క ໾ ླ ໦ ޹ ೭ 3

    P R O F I L E ʮ ԭ ೄ ͷ ՝ ୊ Λ ղ ܾ ͠ ɺ ࿑ ಇ ؀ ڥ Λ ʮ ࠶ ߏ ங ʹ Ϧ Ϗ ϧ υ ʯ ͢ Δ ʯ גࣜձࣾϑϧεϐʔυʹwebΤϯδχΞͱͯ͠ೖࣾɻϑϧεϐʔυͰ͸ɺେن໛ͳ޿ࠂ഑৴αʔ Ϗεͷ؅ཧը໘։ൃΛ୲౰͠ɺαʔόαΠυ͔ΒϑϩϯτΤϯυ·Ͱ෯޿͍։ൃʹैࣄɻϑ ϦʔϥϯεΤϯδχΞͱͯ͠1೥΄Ͳ׆ಈޙɺ2017೥11݄ʹԭೄͰىۀ͠ɺגࣜձࣾRe:Build Λઃཱɻ౦ژͱԭೄͷاۀ༷͔Βͷडୗ։ൃҊ݅Λ੥͚ɺෳ਺ϓϩδΣΫτͷϓϩδΣΫτϚ ωʔδϟʔΛܦݧɻࣗࣾαʔϏεʮTadoruʯͰ͸ϓϩμΫτϚωʔδϟʔͱ্ཱ͔ͯͪ͛͠ Βɺγʔυͷࢿۚௐୡ·ͰΛܦݧɻ
  4. ୅ ද ླ ໦ ͷ Π ϕ ϯ τ ొ

    ஃ ࣮ ੷ ʮ ʯ 4 PHPerKaigi 2020 ϑϩϯτΤϯυ ΧϯϑΝϨϯεؔ੢ Laravel Meetup ୆࿷
  5. ձ໊ࣾ גࣜձࣾRe:Build ୅දऀ ླ໦޹೭ ઃཱ ฏ੒29೥11݄28೔ ࣄۀ಺༰ ࣗࣾαʔϏε։ൃɾӡӦɺWebγεςϜ։ൃɺΤϯδ χΞڭҭɺσβΠϯ੍࡞ ࢿຊۚ

    2,600ສԁ ॴࡏ஍ ˟900-0015 ԭೄݝಹ೼ࢢٱໜ஍2-2-2 λΠϜεϏϧ ి࿩൪߸ 050-5408-4501 ैۀһ਺ ໊̍̎ ձ ࣾ ֓ ཁ 5
  6. 3F#VJMEʹ͍ͭͯ ࣄۀ಺༰ Re:Build Boot Camp͸ɺԭೄ΍ٶ࡚ͳͲͷ஍ํΛڌ ఺ͱ࣮ͨ͠຿ϨϕϧΛ໨ࢦ͢ϓϩάϥϛϯάεΫʔ ϧͰ͢ɻ3ϲ݄ؒͰɺʮ࣮຿ϨϕϧʯʹඞཁͳʮώΞ ϦϯάεΩϧʯʮ࠷௿ݶͷٕज़ྗʯʮࣗݾεέδϡ ʔϧ؅ཧʯͷ3ͭͷεΩϧΛ਎ʹ෇͚ΒΕΔΧϦΩϡ ϥϜΛ༻ҙ͍ͯ͠·͢ɻ

    ஍ํಛԽܕͷελʔτΞοϓελδΦͰ͢ɻ ʮ৽͠ ͍ϏδωεͷΞΠσΞ͕͋ͬͯ΋ɺΤϯδχΞ΍σ βΠφʔ͕͓ΒͣɺܗʹͰ͖ͳ͍ʯͳͲͷ஍ํاۀ ༷Λखॿ͚͠·͢ɻ·ͨɺҊ݅ͷ૬ஊ૭ޱͱͳΔ͜ ͱͰɺ஍ํʹ࢓ࣄΛੜΈग़͖͔͚ͬ͢Λ࡞Γ͍ͨͱ ࢥ͍ͬͯ·͢ɻ ΤϯδχΞͷҝͷΤϯδχΞʹΑΔ࢓ࣄ঺հαʔϏ εTadoru͸ΤϯδχΞಉ࢜Ͱ࢓ࣄΛγΣΞ͢Δɺ ΤϯδχΞൃͷηϛΫϩʔζͳίϛϡχςΟͰ͢ɻ ελʔτΞοϓελδΦࣄۀ 8FCΤϯδχΞڭҭࣄۀ ࣗࣾαʔϏε5BEPSVͷ ӡӦɾ։ൃ
  7. P R O J E C T 7 ड ୗ

    ։ ൃ ͷ ਐ Ί ํ ( ϥ Ϙ ܕ ։ ൃ ) ݟੵॻ࡞੒ ϢʔβʔετʔϦʔɾ σβΠϯͷ࡞੒ ։ൃ ϦϦʔε ൃ஫ݕ౼ ݟੵॻͷ֬ೝ ϨϏϡʔ ϨϏϡʔͷґཔ ϨϏϡʔ ϨϏϡʔͷґཔ ൃ஫ Rebuild ΫϥΠΞϯτ ཁ݅ఆٛɾώΞϦϯά ݄΍ि͝ͱʹ͜ͷεϓϦϯτΛ܁Γฦ͢ ϨϏϡʔࢦఠ ׬ྃ
  8. ʮ ʯ ։ ൃ ࣮ ੷ ৄ ࡉ 8 ϩ

    ʔ ί ʔ υ ։ ൃ ͱ ͸ ϩʔίʔυ։ൃ (Low code development) ͱ͸ɺՄ ೳͳݶΓϓϩάϥϛϯά࡞ۀΛݮΒ͠ɺϚ΢εૢ ࡞ͳͲͰ༻ҙ͞Εͨ෦඼Λ૊Έ߹ΘͤͯΞϓϦΛ ։ൃ͢Δख๏Ͱ͢ɻ Ҿ༻ɿUdemy https://udemy.benesse.co.jp/development/system/ what-is-lowcode.html ਤ ɿ ϩ ʔ ί ʔ υ ։ ൃ ͱ ϊ ʔ ί ʔ υ ։ ൃ ɺ ै དྷ ͷ ։ ൃ ͱ ͷ ҧ ͍
  9. 9 ͜ Μ ͳ ՝ ୊ ͋ Γ · ͤ

    Μ ͔ ʁ ॳظϦϦʔεͰϝοηʔδػೳΛೖ Ε͍͚ͨͲɺ։ൃʹ͕͔͔࣌ؒΔ ޻਺Λ͔͚ͯϝοηʔδػೳΛ࡞ͬ ͕ͨɺػೳ਺͕গͳ͍͠ɺΫΦϦ ςΟ΋௿͍
  10. ࣗࣾαʔϏε։ൃΛ͢ΔதͰࢿۚௐୡ·Ͱʹβ൛Ϩϕ ϧͷϓϩμΫτΛϦϦʔε͢Δඞཁ͕͋Γ·ͨ͠ɻ ͚ΕͲɺϝοηʔδػೳͷ։ൃʹࢥͬͨΑΓ΋͕࣌ؒ ͔͔ͬͯ͠·͍ɺ౰ॳɺ2019೥3݄຤ʹϦϦʔε༧ఆ Ͱ͕ͨ͠ɺ6݄ࠒ·Ͱ௕Ҿ͍ͯ͠·͍·ͨ͠ɻ ͳͷͰɺελʔτΞοϓاۀ͕ϝΠϯػೳͷ։ൃʹઐ ೦Ͱ͖ɺॳظϦϦʔεͷ։ൃίετΛ཈͑ΒΕΔΑ͏ ͳϓϩμΫτΛఏڙ͍ͨ͠ͱࢥ͍·ͨ͠ɻ ࣗ෼ͷମݧஊ αʔϏεͷϝΠϯػೳʹઐ೦ͯ͠

    ։ൃͰ͖ͳ͔ͬͨ
  11. 11 ߟ ͑ ͨ α ʔ Ϗ ε ಺ ༰

    ϝοηʔδ UIΩοτ (ΞϓϦ) API/SDK αʔόʔ ϔουϨεϝοηʔδ গͳ͍޻਺ͰϝοηʔδػೳΛߏஙͰ͖ΔϩʔίʔυπʔϧͰ͢ɻ
  12. 12 Ϣ ʔ ε έ ʔ ε ͷ Π ϝ

    ʔ δ EC ϥΠϒ഑৴ SNS ΦϯϥΠϯ εΫʔϧ σϦόϦʔ Ϛονϯά ΞϓϦ
  13. 13 α ʔ Ϗ ε ಺ ༰ ϝοηʔδૹ৴ UIΩοτ(ΞϓϦ) ͷఏڙ

    API/SDKͷఏڙ αʔόʔͷఏڙ ޻਺୹ॖ Πϯϑϥߏங͕ෆཁ όοΫΤϯυͷ࣮૷ ίετܰݮ ఏڙ͢Δػೳ ಘΒΕΔޮՌ ϚονϯάΞϓϦ
  14. 14 ࠓ ޙ ఏ ڙ ༧ ఆ ͷ ϝ ο

    η ʔ δ ͷ ػ ೳ ը૾ૹ৴ ಈըૹ৴ ϑΝΠϧૹ৴ ϝοηʔδ຋༁ Push௨஌ ϝʔϧ௨஌ SMS௨஌ ϥΠϒ഑৴ Ի੠௨࿩ ϏσΦ௨࿩ Ξϯέʔτ Webhook
  15. શମͷॲཧΠϝʔδ

  16. ಋೖεςοϓ

  17. ಋೖεςοϓ STEP1 STEP2 STEP3

  18. ݸਓ։ൃ͍ͯ͠ΔαʔϏε

  19. Demo ϝϯλʔϚονϯά

  20. Demo ϝοηʔδը໘

  21. 21 ಋ ೖ ํ ๏ STEP1 ؅ཧը໘ͰαʔϏε৘ใΛొ࿥ͯ͠ɺAPIτʔΫϯͱΫϥΠΞϯτIDΛ औಘ͠·͢ɻ

  22. 22 ಋ ೖ ํ ๏ STEP2 ࣗ෼ͷΞϓϦͷAPI(Laravel)ଆʹAPIτʔΫϯɺΫϥΠΞϯτIDͷઃఆΛ .envʹ͠·͢ɻjwtΛฦ٫͢ΔϩδοΫΛॻ͖·͢ɻ

  23. 23 ಋ ೖ ํ ๏ STEP3 ϑϩϯτΤϯυଆͰόοΫΤϯυͷ API Ͱ jwt

    Λੜ੒͠ API ܦ༝Ͱड͚औͬ ͯɺSDKͷηοτΞοϓΛ͠·͢ɻ
  24. 24 S D K ͷ ࢖ ༻ ํ ๏ ͷ

    ྫ CreateChannel(νϟϯωϧ࡞੒) νϟϯωϧ໊ͱνϟϯωϧʹॴଐ͢ΔϝϯόʔΛύϥϝʔλʹઃఆͯ͠ϦΫΤετ͢Δ͜ͱͰνϟϯωϧΛ࡞੒Ͱ ͖·͢ɻ SDKͰͷfunction࣮ߦ Ϩεϙϯεͷྫ
  25. 25 · ͱ Ί ɾগͳ͍޻਺ͰϝοηʔδػೳΛߏஙͰ͖Δɻ ɾಋೖ͢Δ͜ͱͰαʔϏεͷϝΠϯػೳͷ։ൃʹूதͰ͖Δɻ ɾ͜Ε͔ΒϦϦʔε༧ఆͳͷͰɺڵຯ͋Ε͹࢖ͬͯΈ͍ͯͩ͘͞ʂ

  26. Ұॹʹಇ͍ͯ͘ΕΔ஥ؒΛืूͯ͠·͢ʂʂ

  27. ࢲͨͪ͸ελʔτΞοϓاۀͷ ॳظϓϩμΫτ։ൃΛಘҙͱ͍ͯ͠·͢ɻ