ویرگول
ورودثبت نام
Elecomco.com
Elecomco.comلینک دوره 0 تا 100 برنامه نویسی اندروید الکامکو https://elecomco.com/android_learning | مرجع آموزش برنامه نویسی اندروید ( آموزش ساخت انواع اپلیکیشن با اندروید استودیو و جاوا)
Elecomco.com
Elecomco.com
خواندن ۲ دقیقه·۷ سال پیش

معماری MVVM در اندروید چیست ؟

معماری MVVM در اندروید می تواند جهت ایجاد و توسعه برنامه ای که نیازمند reactive model های بیشتر و متنوع تری جهت تعامل با کاربر باشد و بوضوح بهتر و مناسبت می باشد.

معماری MVVM با تاکید بیشتر بر Data Binding معرفی شد. این الگو سرواژه ی عبارت Model-View-ViewModel می باشد.

توضیح واژه معماری MVVM  در اندروید
توضیح واژه معماری MVVM در اندروید


واژه Model در معماری MVVM نیز وظیفه ی Model کردن Objectها (از جمله Student یا Teacher و …) را بر عهده دارد. Model را همچنین می توان ترکیبی از Data +State + Business logic هم دانست. Model ساده ترین بخش می باشد. و به هیچ Use Case یا Interaction یا حالت خاصی وابستگی ندارد.

واژه View در معماری MVVM در اینجا به یکسری object های observable بایند خواهد شد. این لایه همچنین می تواند اقدام به raise نمودن event هایی به ازای interaction ها end user نمایند. این event ها معمولا به action هایی که درون ViewModel تعریف و پیاده سازی شده اند؛ bind می باشند. هم چنین خاصیت observable بودن object های bind شده به View در اینجا این خاصیت را می دهد؛ که در صورت تغییر و بروز رسانی object ها این تغییرات در همان لحظه به درون View نیز منعکس شود.

واژه ViewModel در معماری MVVM در واقع از یکطرف به عنوان یک wrapper بر روی Model عمل کرده و خاصیت bservable بودن را به Model می دهد. و همچنین این امکان را برای View مهیا  می کند که در صورت نیاز بتواند event هایی را به action هایی که درون ViewModel تعریف شده اند raise نماید.

یک نکته ی مهم که در اینجا باید به آن اشاره کرد برخلاف دو الگوی قبلی هر چند در اینجا ViewModel کاملا از View بی اطلاع است؛ View اما از ViewModel آگاه و با خبر است. نکته ی دیگر اینکه در این الگو بر خلاف دو الگوی قبلی View کاملا بصورت active عمل کرده و دارای event و data binding است. البته View در اینجا بهیپوجه state را نگه داری نمی کند. و این بر عهده ی ViewModel می باشد که متدهای و کامندهایی را جهت مدیریت state های برنامه expose کند.

واژه های View و ViewModel در این الگو از طریق method و properties و event ها در تعامل هستند. یکی از هدف های مهم در این الگوی sync نمودن هرچه سریعتر تغییرات به درون view می باشد. و bi-directional و two-way binding دو روشی هستند که جهت اعمال تغییرات به درون View مورد استفاده قرار می گیرند.



اندرویدبرنامه نویسی اندرویدموبایلگوشیبرنامه نویسی
۸
۰
Elecomco.com
Elecomco.com
لینک دوره 0 تا 100 برنامه نویسی اندروید الکامکو https://elecomco.com/android_learning | مرجع آموزش برنامه نویسی اندروید ( آموزش ساخت انواع اپلیکیشن با اندروید استودیو و جاوا)
شاید از این پست‌ها خوشتان بیاید