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

ANDPAD iOS開発の生態系と課題 - 最近取り組み始めた「マルチモジュール化」について

ANDPAD iOS開発の生態系と課題 - 最近取り組み始めた「マルチモジュール化」について

shunsuke sato

November 17, 2021
Tweet

More Decks by shunsuke sato

Other Decks in Programming

Transcript

  1. "/%1"%J04։ൃͷੜଶܥͱ՝୊
    2021/11/17 @potatotips #76
    ࠷ۙऔΓ૊Έ࢝ΊͨʮϚϧνϞδϡʔϧԽʯʹ͍ͭͯ

    View Slide

  2. ࣗݾ঺հ
    w໊લࠤ౻ढ़ี!VTIJTBOUPBTPCV
    wॴଐגࣜձࣾΞϯυύουʢೖࣾʣ
    w։ൃJ04"OESPJE
    wझຯ⚽☕

    View Slide

  3. ࠓ೔࿩͢͜ͱ
    w"/%1"%ͷJ04։ൃʹ͓͚Δੜଶܥ΍՝୊ʹ͍ͭͯڞ༗
    w࠷ۙऔΓ૊Έ͸͡ΊͨʮϚϧνϞδϡʔϧԽʯʹ͍ͭͯ
    wʢԿ͔ಛఆͷٕज़ͷ஌ݟͰ͸ͳ͍🙏ʣ

    View Slide

  4. ϚϧνϞδϡʔϧԽͱ͸
    w͜͜Ͱ͸ʮΞϓϦͷػೳͷҰ෦ΛJNQPSUͯ͠ར༻͢Δ͜ͱʯͱ͢Δ

    View Slide

  5. "/%1"%ͷJ04ΞϓϦͷʮੜଶܥʯͱ՝୊
    ʮݐங%9ʯͱ͍͏ෳࡶɾ޿ൣғʹΘͨΔղ͖͍ͨ՝୊

    View Slide

  6. "/%1"%ͷJ04ΞϓϦͷʮੜଶܥʯͱ՝୊
    ʮݐங%9ʯͱ͍͏ෳࡶɾ޿ൣғʹΘͨΔղ͖͍ͨ՝୊
    εʔύʔΞϓϦઓུ ϚϧνΞϓϦઓུ

    View Slide

  7. "/%1"%ͷJ04ΞϓϦͷʮੜଶܥʯͱ՝୊
    ʮݐங%9ʯͱ͍͏ෳࡶɾ޿ൣғʹΘͨΔղ͖͍ͨ՝୊
    εʔύʔΞϓϦઓུ ϚϧνΞϓϦઓུ

    View Slide

  8. ܦҢ΍QSPTDPOTʹ͍ͭͯ͸ฐࣾࢁԼͷεϥΠυͰ
    IUUQTTQFBLFSEFDLDPNBOEQBEGVTIVGBMTFBQVSJXPUPOHTIJOJSJSJTVTJOBHBSBTBCJTVHVSPTVTBTFSVGBOHGB
    "/%1"%ͷJ04ΞϓϦͷʮੜଶܥʯͱ՝୊

    View Slide

  9. ΞϓϦ
    ͭͷओཁΞϓϦ͕͋Δ
    "/%1"%ͷJ04ΞϓϦͷʮੜଶܥʯͱ՝୊

    View Slide

  10. ΞϓϦ
    "/%1"%ͷJ04ΞϓϦͷʮੜଶܥʯͱ՝୊
    ՝୊ෳ਺ͷΞϓϦͰར༻͍ͨ͠ػೳ͕ଘࡏ͢Δ͜ͱ͕ଟʑ͋Δ

    View Slide

  11. ΞϓϦ
    Ϟδϡʔϧ
    ʢͦΕͧΕͷΞϓϦ͕ඞཁͳϞδϡʔϧΛDPDPBQPETܦ༝Ͱར༻͍ͯ͠Δʣ
    "/%1"%ͷJ04ΞϓϦͷʮੜଶܥʯͱ՝୊

    View Slide

  12. w݁ߏෳࡶͳੜଶܥΛ͍ͯ͠Δʁ🤔
    wӡ༻໘ؚΊ՝୊͕੝Γ୔ࢁͰ·ָ͍͋͠
    w͜Ε͸ʮϚϧνϞδϡʔϧԽʯͱݴ͑Δʁ🤔
    w΄ͱΜͲ͕ʮυϝΠϯඇґଘʯͳϞδϡʔϧͳͷͰͪΐͬͱҧ͍ͦ͏
    wࣾ಺Ͱ͸ʮࣾ಺4%,ʯͱݺ͹Ε͍ͯͨΓ΋͢Δ
    "/%1"%ͷJ04ΞϓϦͷʮੜଶܥʯͱ՝୊

    View Slide

  13. ΞϓϦ
    Ϟδϡʔϧ
    ࠷ۙऔΓ૊Έ͸͡ΊͨʮϚϧνϞδϡʔϧԽʯʹ͍ͭͯ

    View Slide

  14. ΞϓϦ
    Ϟδϡʔϧ
    υϝΠϯʹେ͖͘ґଘͨ͠ػೳ͕ෳ਺ΞϓϦʹଘࡏ͢Δ͜ͱ͕࠷ۙΘ͔ͬͨ
    ࠷ۙऔΓ૊Έ͸͡ΊͨʮϚϧνϞδϡʔϧԽʯʹ͍ͭͯ

    View Slide

  15. ΞϓϦ
    Ϟδϡʔϧ
    ࠷ۙऔΓ૊Έ͸͡ΊͨʮϚϧνϞδϡʔϧԽʯʹ͍ͭͯ
    ͍ۙকདྷػೳվળͷ༧ఆ͕͋ΔͷͰϞδϡʔϧԽ͍ͨ͠

    View Slide

  16. wυϝΠϯґଘͷػೳ΋ϞδϡʔϧԽ͍͖͍ͯͨ͠ػӡ
    wυϝΠϯґଘͷػೳͷϞδϡʔϧԽͳͷͰɺґଘؔ܎͸ΞϓϦຊମ͔ΒΠϯδ
    ΣΫτ͢ΔΑ͏ͳ࡞ΓΛ໛ࡧத
    wࠓޙΛݟਾ͑ͯʮϞϊϨϙʯͰϞδϡʔϧΛ؅ཧ͠Α͏ͱ໛ࡧத
    wʮ࢐৽తʯʹਐΊ͍ͯ͘΂͖ͩͱࢥ͏ͷͰɺ·ͣ͸͜ͷػೳΛϞδϡʔϧԽ͠
    ͯΈͯࠓޙͷ͜ͱΛߟ͑Δ
    ࠷ۙऔΓ૊Έ͸͡ΊͨʮϚϧνϞδϡʔϧԽʯʹ͍ͭͯ

    View Slide

  17. wυϝΠϯґଘͷػೳ΋ϞδϡʔϧԽ͍͖͍ͯͨ͠ػӡ
    wυϝΠϯґଘͷػೳͷϞδϡʔϧԽͳͷͰɺґଘؔ܎͸ΞϓϦຊମ͔ΒΠϯδ
    ΣΫτ͢ΔΑ͏ͳ࡞ΓΛ໛ࡧத
    wࠓޙΛݟਾ͑ͯʮϞϊϨϙʯͰϞδϡʔϧΛ؅ཧ͠Α͏ͱ໛ࡧத
    wʮ࢐৽తʯʹਐΊ͍ͯ͘΂͖ͩͱࢥ͏ͷͰɺ·ͣ͸͜ͷػೳΛϞδϡʔϧԽ͠
    ͯΈͯࠓޙͷ͜ͱΛߟ͑Δ
    ࠷ۙऔΓ૊Έ͸͡ΊͨʮϚϧνϞδϡʔϧԽʯʹ͍ͭͯ

    View Slide

  18. ࠷ۙऔΓ૊Έ͸͡ΊͨʮϚϧνϞδϡʔϧԽʯʹ͍ͭͯ
    $PPLQBE͞ΜͷϚϧνϞδϡʔϧ։ൃΛશྗͰࢀߟʹ͍ͯ͠Δ

    View Slide

  19. wυϝΠϯґଘͷػೳ΋ϞδϡʔϧԽ͍͖͍ͯͨ͠ػӡ
    wυϝΠϯґଘͷػೳͷϞδϡʔϧԽͳͷͰɺґଘؔ܎͸ΞϓϦຊମ͔ΒΠϯδ
    ΣΫτ͢ΔΑ͏ͳ࡞ΓΛ໛ࡧத
    wࠓޙΛݟਾ͑ͯʮϞϊϨϙʯͰϞδϡʔϧΛ؅ཧ͠Α͏ͱ໛ࡧத
    wʮ࢐৽తʯʹਐΊ͍ͯ͘΂͖ͩͱࢥ͏ͷͰɺ·ͣ͸͜ͷػೳΛϞδϡʔϧԽ͠
    ͯΈͯࠓޙͷ͜ͱΛߟ͑Δ
    ࠷ۙऔΓ૊Έ͸͡ΊͨʮϚϧνϞδϡʔϧԽʯʹ͍ͭͯ

    View Slide

  20. ΞϓϦ
    Ϟδϡʔϧ
    Ϟδϡʔϧ୯Ґ
    ϨϙδτϦ୯Ґ
    ࠷ۙऔΓ૊Έ͸͡ΊͨʮϚϧνϞδϡʔϧԽʯʹ͍ͭͯ

    View Slide

  21. ࠷ۙऔΓ૊Έ͸͡ΊͨʮϚϧνϞδϡʔϧԽʯʹ͍ͭͯ
    'JSFCBTFͷ4%,ΛΠϝʔδ

    View Slide

  22. wυϝΠϯґଘͷػೳ΋ϞδϡʔϧԽ͍͖͍ͯͨ͠ػӡ
    wυϝΠϯґଘͷػೳͷϞδϡʔϧԽͳͷͰɺґଘؔ܎͸ΞϓϦຊମ͔ΒΠϯδ
    ΣΫτ͢ΔΑ͏ͳ࡞ΓΛ໛ࡧத
    wࠓޙΛݟਾ͑ͯʮϞϊϨϙʯͰϞδϡʔϧΛ؅ཧ͠Α͏ͱ໛ࡧத
    wʮ࢐৽తʯʹਐΊ͍ͯ͘΂͖ͩͱࢥ͏ͷͰɺ·ͣ͸͜ͷػೳΛϞδϡʔϧԽ͠
    ͯΈͯࠓޙͷ͜ͱΛߟ͑Δ
    ࠷ۙऔΓ૊Έ͸͡ΊͨʮϚϧνϞδϡʔϧԽʯʹ͍ͭͯ

    View Slide

  23. ͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠😌

    View Slide