Save 37% off PRO during our Black Friday Sale! »

KMMでプラットフォーム依存を抑える設計 / A KMM architecture reducing the platform dependency

KMMでプラットフォーム依存を抑える設計 / A KMM architecture reducing the platform dependency

E505897a79eede1a676f92740261e8f8?s=128

Masatoshi Kubode

November 16, 2021
Tweet

Transcript

  1. ©2021 Wantedly, Inc. KMMͰPlatformґଘΛ཈͑Δઃܭ ϞόΠϧษڧձ Wantedly × νʔϜϥϘ 2021/11/16 ٱอग़խढ़

  2. ©2021 Wantedly, Inc. XXXXBOUFEMZDPNJELVCPEF

  3. ©2021 Wantedly, Inc.  ,..Ͱ1MBUGPSNʹґଘ͢Δίʔυͷ՝୊ײ  ղܾࡦ  Ԡ༻ 

    ·ͱΊ ࿩͢͜ͱ
  4. ©2021 Wantedly, Inc. ՝୊ײ

  5. ©2021 Wantedly, Inc. 42-%FMJHIU w ,..Ͱ΋࢖͑ΔσϑΝΫτελϯμʔυͳ03. w J04$PSF%BUBɺ"OESPJE3PPNɺ3FBMNతͳ ՝୊ײ TRϑΝΠϧ͔Βੜ੒͞ΕΔ

  6. ©2021 Wantedly, Inc. 42-%FMJHIU w %#ͷΠϯελϯεΛ࡞Δʹ͸4RM%SJWFS͕ඞཁ w 4RM%SJWFS͸JOUFSGBDFͰ͋ΓɺJ04"OESPJEͰ ࣮૷Ϋϥε͕ҟͳΔ w

    "OESPJEͰ͸$POUFYU͕ඞཁ w ϩάΞ΢τ࣌ʹ%#Λ࡟আ͍͚ͨ͠Ͳɺ࡟আํ๏ ΋J04"OESPJEͰҟͳΔ ՝୊ײ
  7. ϖʔδλΠτϧ ϖʔδαϒλΠτϧ ©2021 Wantedly, Inc. ͜ͷࠩΛͲ͏΍ͬͯຒΊΔʁ

  8. ©2021 Wantedly, Inc. ղܾࡦ

  9. ©2021 Wantedly, Inc.  ΠϯλʔϑΣʔε͚ͩ,..ʹఆٛͯ͠ɺΞϓϦଆ Ͱ࣮૷ͯ͠΋Β͏  FYQFDUBDUVBMΛ࢖͏ ղܾࡦ

  10. ©2021 Wantedly, Inc.  ΠϯλʔϑΣʔε͚ͩఆٛ͢Δ ղܾࡦ J04ͰΠϯλʔϑΣʔε Λ࣮૷͢ΔʢQSPUPDPMద༻͢Δʣ "OESPJEͰΠϯλʔϑΣʔε Λ࣮૷͢Δ

  11. ©2021 Wantedly, Inc.  ΠϯλʔϑΣʔε͚ͩఆٛ͢Δ ղܾࡦ J04ͰΠϯλʔϑΣʔε Λ࣮૷͢ΔʢQSPUPDPMద༻͢Δʣ "OESPJEͰΠϯλʔϑΣʔε Λ࣮૷͢Δ

    J04"OESPJE͕42-%FMJHIUʹ௚઀ґଘͯ͠͠·͏🙅 J04"OESPJEͷ࣮૷͕૿͑ͯ͠·͏🙅
  12. ©2021 Wantedly, Inc.  FYQFDUBDUVBMΛ࢖͏ ͬͪ͜ͷ΄͏͕Αͦ͞͏👍 ղܾࡦ

  13. ©2021 Wantedly, Inc. FYQFDUBDUVBM ղܾࡦ https://kotlinlang.org/docs/multiplatform.html

  14. ©2021 Wantedly, Inc.  FYQFDUBDUVBMΛ࢖͏ ղܾࡦ

  15. ©2021 Wantedly, Inc.  FYQFDUBDUVBMΛ࢖͏ ղܾࡦ ͜Μͳײ͡Ͱ"OESPJEͷ࣮૷͚ͩҾ਺Λ௥ՃͰ͖Δ

  16. ©2021 Wantedly, Inc.  FYQFDUBDUVBMΛ࢖͏ ղܾࡦ ※SharedModule͸KMMͷϞδϡʔϧఆٛΫϥε

  17. ϖʔδλΠτϧ ϖʔδαϒλΠτϧ ©2021 Wantedly, Inc. ΞϓϦଆͷ࣮૷͕γϯϓϧʹ🎉

  18. ©2021 Wantedly, Inc. Ԡ༻

  19. ©2021 Wantedly, Inc. "OESPJEͷ$POUFYUґଘՕॴ͸ଞʹ΋͋Δ • Use-AgentͷͨΊʹPackageInfoΛऔಘ • ApolloͷNormalizedCache Ԡ༻ ແݶʹ,..Ϟδϡʔϧ΁ͷҾ਺͕૿͍͑ͯ͘🙅

    શ෦QVCMJDʹ͠ͳ͚Ε͹ͳΒͳ͍🙅 ※SharedModule͸KMMͷϞδϡʔϧఆٛΫϥε
  20. ©2021 Wantedly, Inc. 1MBUGPSNΫϥεΛ࡞Δ Ԡ༻ "OESPJEͷBDUVBM࣮૷ʹ͚ͩ$POUFYUΛ΋ͨͤΔ

  21. ©2021 Wantedly, Inc. 1MBUGPSNΫϥεΛ࢖͏ Ԡ༻

  22. ©2021 Wantedly, Inc. 1MBUGPSNΫϥεΛ࢖͏ Ԡ༻ "OESPJEͷBDUVBM࣮૷Ͱ͸1MBUGPSNDPOUFYU͕ݟ͑Δ

  23. ©2021 Wantedly, Inc. 1MBUGPSNΫϥεΛ࢖͏ Ԡ༻ JOUFSOBMʹͰ͖Δ

  24. ©2021 Wantedly, Inc. 1MBUGPSNΫϥεΛ࢖͏ Ԡ༻ ※SharedModule͸KMMͷϞδϡʔϧఆٛΫϥε #FGPSF "GUFS

  25. ©2021 Wantedly, Inc. ·ͱΊ

  26. ©2021 Wantedly, Inc. w FYQFDUBDUVBM͸͏·͘࢖͑͹ڧྗ w 1MBUGPSNͱ͍͏ϓϥοτϑΥʔϜࠩ෼Λٵऩ͢ ΔΦϒδΣΫτΛJ04"OESPJE͔Β౉͢ ·ͱΊ

  27. ϖʔδλΠτϧ ϖʔδαϒλΠτϧ ©2021 Wantedly, Inc. 🙇