چرا یادگیری معماری MVP‌ ؟!

نرم افزار ها روز به روز بزرگ تر میشن و شرکت ها هم به دنبال اشخاصی میگردن که توانایی کار با گروه رو داشته باشن. پس شما هم باید بعنوان یک برنامه نویس حرفه ای بتونین گروهی کار کنین و نرم افزار های بزرگ بنویسید که لازمه ی اون توانایی کار با معماری هستش که در این دوره به صورت کاملا مفید آموزش داده میشه. اگر میخواین در زمینه اندروید حرفه ای بشین، باید حرفه ای یاد بگیرین.

بطور مثال شما با استفاده از معماری میتونید به رم گوشی کاربر این امکان رو بدید که به صورت بهینه تر مورد استفاده قرار بگیره و زیر بار فشار اضافی نباشه. همینطور میتونید کد نویسی خودتون رو مرتب تر، دقیق تر و سطح بالا تر انجام بدید که وقتی شخص دیگه ای هم به پروژه شما نگاه کرد، از اون سر در بیاره و گیج کننده نباشه.

  • مدل معماری MVP همانند تمام الگوهای معماری دیگر در معرض گوناگونی و تجارب مختلف قرار دارد. بنابراین اجرای آن کمی مبهم به نظر می رسند، البته شما می توانید اجرای آن را مطابق با نیازهای خود اصلاح کنید.

معماری MVP اهداف زیر را محقق می سازد

کدهای مربوط به نما (View) که در قالب لیست، دکمه، برچسب و تکست باکس از منطق بیزنس (Business Logic) به کاربر نشان داده می شوند را جدا کنید. این کدها در حقیقت از تعامل کاربران با نما که ما آن را Presenter می نامیم، ایجاد می شوند. داده هایی که در نما نمایش داده می شوند نیز باید از طریق یک ماژول ( ویکی پدیا ) جداگانه به نام Model ارائه شوند، در نتیجه یک کد قابل خواندن، قابل درک و قابل نگهداری خواهد بود.

ارتباط میان نما و مدل باید از طریق Presenter صورت بپذیرد، در حقیقت نما و مدل نمی توانند مرجع یکدیگر باشند.

برنامه نویسان با استفاده از این الگوی طراحی می توانند بدون هرگونه دخل و تصرفی در مولفه های دیگر، تغییرات مربوطه را در یک کامپوننت خاص اعمال کنند. علاوه بر این جایگزینی نما یا مدل با یک مولفه اجرایی دیگر نیز با استفاده از این معماری امکان پذیر خواهد بود.

  • تولید کدهایی که می توان آنها را با فرآیند اتوماسیون مورد آزمایش قرار داد.

این دوره برای چه کسانی مناسب است؟

برنامه نویسان اندرویدی که دوره صفر تا صد برنامه نویسی اندروید را گذرانده اند و اکنون قصد پیشرفت و حرفه ای شدن در زمینه برنامه نویسی اندروید را دشته و میخواهد تا ازین پس با استفاده از یک معماری به کدنویسی نرم افزار خود بپردازند، با استفاده از این دوره میتوانند به اهداف خود دست یابند.

با گذراندن دوره آموزشی معماری mvp در اندروید با کاتلین، شما میتوانید ازین پس برنامه های خود را با معماری MVP پیاده سازی کنید.

 

سرفصل های دوره معماری mvp در اندروید با کاتلین

  • معرفی دوره و پیش نیاز های آن
  • شروع آموزش معماری و پیاده سازی اکتیویتی با MVP ( شکستن اکتیویتی به سه کلاس view , model , presenter )
  • پیاده سازی دیزاین bottom navigation
  • MVP کردن فرگمنت ها و ایجاد کلاس های Model و Presenter برای فرگنمت ها
  • هندل کردن عدم دسترسی به supportFragmentManager در view و ست کردن فرگمنت ها داخل فریم لیوت در MVP
  • چگونگی جایگزین کردن فرگمنت ها در frame layout و جا به جایی بین فرگمنت ها در bottom navigation
  • هندل کردن intent و چگونگی دریافت مقادیر intent در کلاس model در معماری MVP
  • تزریق وابستگی و جلوگیری از وابسته شدن کلاس ها به یکدیگر با استفاده از کتابخانه koin در MVP