BeautyPlus که در سال 2013 معرفی شد، یکی از محبوبترین برنامههای ویرایش عکس در جهان است که توسط هنرمندان آرایش، عکاسان و عکاسان معمولی تلفن همراه استفاده میشود. حدود 50 میلیون نفر هر ماه از این برنامه برای ویرایش و افزودن فیلتر به سلفی ها، تصاویر و ویدیوهای خود استفاده می کنند. این برنامه که توسط شرکت فناوری چینی Xiamen Meitu توسعه یافته است (که مخصوصاً در مجموعه سلفی محبوب است) برای همه چیز از اصلاح رنگ پوست و روشن کردن لبخند گرفته تا ویژگی های لاغری و از بین بردن لکه ها، همه با چند کشیدن و کشیدن ساده استفاده می شود. کلیک می کند.
با توجه به اینکه این شرکت بهروزرسانیهای مکرر برنامه را انجام میدهد، به تعداد زیادی توسعهدهنده نیاز دارد. اما، با گذشت زمان، معماری زیربنایی بدون یکنواختی و وضوح رشد کرد. تیم در حال حرکت به راهی نیاز داشت تا توسعه دهندگان همکار خود را در جریان نگه دارند و در عین حال مدیریت چرخه عمر را ساده کرده و مسائل مربوط به به روز کردن رابط کاربری ناهمزمان را حل کنند.
کاری که آنها انجام دادند
اجزای معماری اندروید ابزارهای مورد نیاز توسعهدهندگان را فراهم میکنند تا کد برنامه را مختصر، پایدار و آسانتر کنند تا مهندسان جدید هنگام نصب آنها را بخوانند.
از جمله مؤلفههایی که توسعهدهندگان BeautyPlus شروع به استفاده از آن کردند، ViewModel
است که پردازش منطقی آسانتر را با بهروزرسانیهای فعالیت و قطعه امکانپذیر میسازد. ViewModel
برای ذخیره و مدیریت دادههای مرتبط با رابط کاربری به روشی مبتنی بر چرخه حیات طراحی شده است که به چرخه حیات سایر اجزای برنامه احترام میگذارد.
آنها همچنین از مؤلفه LiveData
، یک کلاس دارنده داده قابل مشاهده که از چرخه حیات نیز آگاه است، استفاده کردند تا اطمینان حاصل شود که رابط کاربری با وضعیت داده مطابقت دارد. تیم استفاده از این اجزای معماری اندروید را آسان بدون مواجهه با هیچ مشکلی یافت و فواید آن به سرعت قابل توجه بود.
نتایج
به لطف اجزای معماری اندروید، اپلیکیشن BeautyPlus بلافاصله 5 درصد کد کمتری داشت و 15 درصد خواناتر بود. همچنین معماری یکپارچهتر بود و در زمان و تلاش توسعهدهندگان صرفهجویی میکرد و سرعت پیشرفت را برای توسعهدهندگان جدید آسانتر میکرد. علاوه بر این، نشت حافظه کمتری وجود داشت، تازهسازی دادهها آسانتر شد و توسعهدهندگان دیگر نگران بهروزرسانی رابط کاربری ناهمزمان نبودند.
ژنگ سونگین، مدیر ارشد توسعه میگوید: «وقتی از ViewModel و LiveData برای BeautyPlus استفاده کردیم، کد مختصر و خواناتر شد و معماری کد یکپارچه شد. "عملکرد چرخه عمر برنامه با خیال راحت مدیریت شد و ثبات نیز بهبود یافت."
شروع کنید
Android Architecture Components برای همه توسعه دهندگان باز است. با اجزای معماری Android شروع کنید .