はじめに 社内勉強会の資料をSlideShareのUPしました。 iOS/Androidアプリエンジニアが理解すべき「Model」の振る舞い これについての要点をまとめます。 この資料はiOS/Androidのような クライアントアプリケーションにおける「Model」とは何か、という話です。 Modelとは何か? Modelに「データやビジネスロジックを扱うコンポーネント」という役割を担わせるというのは多くの人がやっていることだと思います。しかし、サーバ側のWebアプリケーションとは異なり、クライアント側のiOS/AndroidアプリのModelには次の2つの振る舞いがとても重要です。 基本死なない(Singleton的である) 「通知」で変更を伝える(Callback的ではなく) そのようなModelがなぜ必要か? この2点の役割を持つコンポーネントがなく、特に何も考えずにスマホ
![要約:iOS/Androidアプリエンジニアが理解すべき「Model」の振る舞い - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/68a4a8ffc5bc25dbdf390f2c9f74958c708c0f7c/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9JUU4JUE2JTgxJUU3JUI0JTg0JUVGJUJDJTlBaU9TJTJGQW5kcm9pZCVFMyU4MiVBMiVFMyU4MyU5NyVFMyU4MyVBQSVFMyU4MiVBOCVFMyU4MyVCMyVFMyU4MiVCOCVFMyU4MyU4QiVFMyU4MiVBMiVFMyU4MSU4QyVFNyU5MCU4NiVFOCVBNyVBMyVFMyU4MSU5OSVFMyU4MSVCOSVFMyU4MSU4RCVFMyU4MCU4Q01vZGVsJUUzJTgwJThEJUUzJTgxJUFFJUU2JThDJUFGJUUzJTgyJThCJUU4JTg4JTlFJUUzJTgxJTg0JnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LWNsaXA9ZWxsaXBzaXMmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz05MzQxYjU0ZjJmMjllNGNmMTk3MmQ5ZTg1MDQzMjhhMg%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwbW9rZW1va2VjaGlja2VuJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz0yMmE5ZTk4YzI3OWRkOTIwNmIzY2Y2MGY2ODdjNzNhNg%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3Deb8ef244cf3bd96549fad65504bd770e)