{"id":6179,"date":"2020-08-20T16:32:09","date_gmt":"2020-08-20T11:02:09","guid":{"rendered":"https:\/\/www.innovationm.com\/blog\/?p=6179"},"modified":"2020-08-20T16:32:09","modified_gmt":"2020-08-20T11:02:09","slug":"mvvm-architecture-advantage-android","status":"publish","type":"post","link":"https:\/\/www.innovationm.com\/blog\/mvvm-architecture-advantage-android\/","title":{"rendered":"MVVM Architecture Advantage &#8211; Android"},"content":{"rendered":"<p><span style=\"font-weight: 400;\">For a good application developer whether android or iOS should follow an architecture to build a project. The better the architecture the better will be the code structure and better will be its readability. If you don&#8217;t follow any architecture then start following one.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">In this blog, we will focus on the <\/span><b>Android platform<\/b><span style=\"font-weight: 400;\">.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">There are many architectures in <\/span><b>Android, <\/b><span style=\"font-weight: 400;\">some of them are <\/span><span style=\"font-weight: 400;\">MVP, FLUX, MVI, MVVM, etc. Out of which MMVM comes out to be the good one.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Let us see what are the advantages of using this architecture.<\/span><\/p>\n<ul>\n<li><b>Maintenance of Code<\/b><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Keeping MVVM apart for a few seconds if you are developing your project without using architecture then definitely you will write your view and application logic in the same file and if your project is too big then it will create difficulty <\/span><b>or<\/b><span style=\"font-weight: 400;\"> in other words, it will take a huge amount of time for you when you will try to handle your code <\/span><b>or<\/b><span style=\"font-weight: 400;\">\u00a0 try to add some more functionality into your code in future. So, that\u2019s why we use MVVM architecture into our project.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">So, It makes the project simple , easy to handle and\u00a0 maintain.\u00a0 If any developer is assigned to the already build project which follows the architecture then they will require less time to understand and build their logic into the project.<\/span><\/p>\n<ul>\n<li><b>Testing<\/b><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">You can easily test the ViewModel without involving its View because view and application logic are separated from each other.So, you can easily test your project in a quick way.<\/span><\/p>\n<ul>\n<li><b>Reusability<\/b><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Following the architecture helps to reduce the redundancy of code by reusing the module again and again.<\/span><\/p>\n<p><b>Concluding the above advantages into the following points :<\/b><\/p>\n<p><b>i)<\/b> <span style=\"font-weight: 400;\">The project is easier to maintain.<\/span><\/p>\n<p><b>ii)<\/b> <span style=\"font-weight: 400;\">The team members can add new features more easily.<\/span><\/p>\n<p><b style=\"font-size: 1rem;\">iii) <\/b> <span style=\"font-weight: 400;\">The code is easily testable.<\/span><\/p>\n<p><b>iv) <\/b> <span style=\"font-weight: 400;\">The presentation layer and logic are loosely coupled.<\/span><\/p>\n<p><b>v) <\/b> <span style=\"font-weight: 400;\">Easy to reusable.<\/span><\/p>\n<p><b>vi)<\/b> <span style=\"font-weight: 400;\">Loosely coupled code.<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>For a good application developer whether android or iOS should follow an architecture to build a project. The better the architecture the better will be the code structure and better will be its readability. If you don&#8217;t follow any architecture then start following one.\u00a0 In this blog, we will focus on the Android platform. There [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":6184,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[14,536],"class_list":["post-6179","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-android","tag-innovationm","tag-mvvm-architecture-advantage-android"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>MVVM Architecture Advantage - Android - InnovationM - Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.innovationm.com\/blog\/mvvm-architecture-advantage-android\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"MVVM Architecture Advantage - Android - InnovationM - Blog\" \/>\n<meta property=\"og:description\" content=\"For a good application developer whether android or iOS should follow an architecture to build a project. The better the architecture the better will be the code structure and better will be its readability. If you don&#8217;t follow any architecture then start following one.\u00a0 In this blog, we will focus on the Android platform. There [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.innovationm.com\/blog\/mvvm-architecture-advantage-android\/\" \/>\n<meta property=\"og:site_name\" content=\"InnovationM - Blog\" \/>\n<meta property=\"article:published_time\" content=\"2020-08-20T11:02:09+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2020\/08\/MVVM-Android.png\" \/>\n\t<meta property=\"og:image:width\" content=\"960\" \/>\n\t<meta property=\"og:image:height\" content=\"540\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"InnovationM Admin\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"InnovationM Admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mvvm-architecture-advantage-android\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mvvm-architecture-advantage-android\\\/\"},\"author\":{\"name\":\"InnovationM Admin\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#\\\/schema\\\/person\\\/a831bf4602d69d1fa452e3de0c8862ed\"},\"headline\":\"MVVM Architecture Advantage &#8211; Android\",\"datePublished\":\"2020-08-20T11:02:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mvvm-architecture-advantage-android\\\/\"},\"wordCount\":325,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mvvm-architecture-advantage-android\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2020\\\/08\\\/MVVM-Android.png\",\"keywords\":[\"InnovationM\",\"MVVM Architecture Advantage - Android\"],\"articleSection\":[\"Android\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mvvm-architecture-advantage-android\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mvvm-architecture-advantage-android\\\/\",\"url\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mvvm-architecture-advantage-android\\\/\",\"name\":\"MVVM Architecture Advantage - Android - InnovationM - Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mvvm-architecture-advantage-android\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mvvm-architecture-advantage-android\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2020\\\/08\\\/MVVM-Android.png\",\"datePublished\":\"2020-08-20T11:02:09+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#\\\/schema\\\/person\\\/a831bf4602d69d1fa452e3de0c8862ed\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mvvm-architecture-advantage-android\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mvvm-architecture-advantage-android\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mvvm-architecture-advantage-android\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2020\\\/08\\\/MVVM-Android.png\",\"contentUrl\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2020\\\/08\\\/MVVM-Android.png\",\"width\":960,\"height\":540},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mvvm-architecture-advantage-android\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"MVVM Architecture Advantage &#8211; Android\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/\",\"name\":\"InnovationM - Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#\\\/schema\\\/person\\\/a831bf4602d69d1fa452e3de0c8862ed\",\"name\":\"InnovationM Admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g\",\"caption\":\"InnovationM Admin\"},\"sameAs\":[\"http:\\\/\\\/www.innovationm.com\\\/\"],\"url\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/author\\\/innovationmadmin\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"MVVM Architecture Advantage - Android - InnovationM - Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.innovationm.com\/blog\/mvvm-architecture-advantage-android\/","og_locale":"en_US","og_type":"article","og_title":"MVVM Architecture Advantage - Android - InnovationM - Blog","og_description":"For a good application developer whether android or iOS should follow an architecture to build a project. The better the architecture the better will be the code structure and better will be its readability. If you don&#8217;t follow any architecture then start following one.\u00a0 In this blog, we will focus on the Android platform. There [&hellip;]","og_url":"https:\/\/www.innovationm.com\/blog\/mvvm-architecture-advantage-android\/","og_site_name":"InnovationM - Blog","article_published_time":"2020-08-20T11:02:09+00:00","og_image":[{"width":960,"height":540,"url":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2020\/08\/MVVM-Android.png","type":"image\/png"}],"author":"InnovationM Admin","twitter_misc":{"Written by":"InnovationM Admin","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.innovationm.com\/blog\/mvvm-architecture-advantage-android\/#article","isPartOf":{"@id":"https:\/\/www.innovationm.com\/blog\/mvvm-architecture-advantage-android\/"},"author":{"name":"InnovationM Admin","@id":"https:\/\/www.innovationm.com\/blog\/#\/schema\/person\/a831bf4602d69d1fa452e3de0c8862ed"},"headline":"MVVM Architecture Advantage &#8211; Android","datePublished":"2020-08-20T11:02:09+00:00","mainEntityOfPage":{"@id":"https:\/\/www.innovationm.com\/blog\/mvvm-architecture-advantage-android\/"},"wordCount":325,"commentCount":0,"image":{"@id":"https:\/\/www.innovationm.com\/blog\/mvvm-architecture-advantage-android\/#primaryimage"},"thumbnailUrl":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2020\/08\/MVVM-Android.png","keywords":["InnovationM","MVVM Architecture Advantage - Android"],"articleSection":["Android"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.innovationm.com\/blog\/mvvm-architecture-advantage-android\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.innovationm.com\/blog\/mvvm-architecture-advantage-android\/","url":"https:\/\/www.innovationm.com\/blog\/mvvm-architecture-advantage-android\/","name":"MVVM Architecture Advantage - Android - InnovationM - Blog","isPartOf":{"@id":"https:\/\/www.innovationm.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.innovationm.com\/blog\/mvvm-architecture-advantage-android\/#primaryimage"},"image":{"@id":"https:\/\/www.innovationm.com\/blog\/mvvm-architecture-advantage-android\/#primaryimage"},"thumbnailUrl":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2020\/08\/MVVM-Android.png","datePublished":"2020-08-20T11:02:09+00:00","author":{"@id":"https:\/\/www.innovationm.com\/blog\/#\/schema\/person\/a831bf4602d69d1fa452e3de0c8862ed"},"breadcrumb":{"@id":"https:\/\/www.innovationm.com\/blog\/mvvm-architecture-advantage-android\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.innovationm.com\/blog\/mvvm-architecture-advantage-android\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.innovationm.com\/blog\/mvvm-architecture-advantage-android\/#primaryimage","url":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2020\/08\/MVVM-Android.png","contentUrl":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2020\/08\/MVVM-Android.png","width":960,"height":540},{"@type":"BreadcrumbList","@id":"https:\/\/www.innovationm.com\/blog\/mvvm-architecture-advantage-android\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.innovationm.com\/blog\/"},{"@type":"ListItem","position":2,"name":"MVVM Architecture Advantage &#8211; Android"}]},{"@type":"WebSite","@id":"https:\/\/www.innovationm.com\/blog\/#website","url":"https:\/\/www.innovationm.com\/blog\/","name":"InnovationM - Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.innovationm.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.innovationm.com\/blog\/#\/schema\/person\/a831bf4602d69d1fa452e3de0c8862ed","name":"InnovationM Admin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g","caption":"InnovationM Admin"},"sameAs":["http:\/\/www.innovationm.com\/"],"url":"https:\/\/www.innovationm.com\/blog\/author\/innovationmadmin\/"}]}},"_links":{"self":[{"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/posts\/6179","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/comments?post=6179"}],"version-history":[{"count":0,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/posts\/6179\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/media\/6184"}],"wp:attachment":[{"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/media?parent=6179"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/categories?post=6179"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/tags?post=6179"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}