iOSアプリ開発のためのFunctional Architecture情報共有会2 の発表資料です。 https://connpass.com/event/194239/
TCAͰͷClient/Managerͷར༻ύλʔϯͰ෭࡞༻ͷActionErrorΛͰ͖ΔiOSΞϓϦ։ൃͷͨΊͷFunctional Architectureใڞ༗ձ2@yimajo 2020/11/22 #fa_ios
View Slide
The Composable Architecture ʹಛఆͷ෭࡞༻Λ·ͱΊΔΧελϜͳClient/Managerܕͷαϯϓϧ͕͋Δ
• DownloadClient• WebSocketClient• LocalSearchClient• WeatherClient• SpeechClient• AuthenticationClient• AudioPlayerClient• AudioRecorderClient• MotionManager• LocationManager
StateActionViewStoreDIEnvironmentClientEffectReducerError"DUJPO
Clientͷߏ
෭࡞༻࣮ߦΫϩʔδϟઐ༻ͷΤϥʔઐ༻ͷ"DUJPO
$MJFOUͷ࣮ߦΛอ࣋͢Δ%FQFOEFODJFT
TUBUJDMFUMJWFͰγϯάϧτϯతͳΠϯλϑΣʔε෭࡞༻࣮ߦΫϩʔδϟDBODFMͷఆٛ෭࡞༻࣮ߦΫϩʔδϟEPXOMPBEͷఆٛ
MJWFͷݺͼग़͠&OWJSPONFOUͰlMJWFzͷݴ༿ͷҙຯΑ͘Θ͔Βͳ͍QSFWJFXʹMJWF͏ͷͰຊ൪༻ͬͯҙຯͰͳ͍MJWF/VNCFS'BDU GPSͳͲ୯ʹ௨৴͢Δ͚ͩɻࢹͳͲΛ͍ͯ͠ΔΘ͚Ͱͳ͍ɻGBWPSJUF JEJT'BWPSJUFBTZOD"GUFSͳͷͰඇಉظॲཧ
Clientͷ෭࡞༻࣮ߦΫϩʔδϟͷݺͼग़͠
෭࡞༻࣮ߦΫϩʔδϟEPXOMPBEͷ࣮ߦ
ཧ۶ͱͯ͠ɺ$PSF.PUJPOͷTUBSU%FWJDF.PUJPO6QEBUFT VTJOH UP͜ΕͷϞʔγϣϯΛݕ͢Δͱಈ࡞͢ΔΫϩʔδϟɻ͜ͷ෭࡞༻࣮ߦΫϩʔδϟ֎෦͔ΒݺΕͣɺ෦Ͱ4VCTDSJCFS͕ΠϕϯτΛTFOEͯ͘͠ΕΔɻ
෭࡞༻࣮ߦΫϩʔδϟͷ෦ݺͼग़͠• ࣗಈͰԿ͔Λࢹͯ͠มԽ͕͋ͬͨΒAction͕ݺͼग़ͤΔ• Motion• Location• Core DataͷFetch Result Controller
%PXOMPBE$MJFOUͷ"DUJPOΛ3FEVDFSʹ͑Δ
·ͱΊ• Action/ErrorΛݸผʹఆٛ• ෭࡞༻࣮ߦΫϩʔδϟ• ΫϩʔδϟΛReducer͕֎෦ݺͼग़͠• Ϋϩʔδϟ෦Ͱউखʹ࣮ߦͤͨ͞Γ