بهینه سازی حافظه اپلیکیشن اندروید
بهینه سازی عملکرد اپلیکیشن در دنیای اندروید بسیار مهم است. بسیاری از کاربران دستگاه های اندرویدی ضعیفی دارن و به همین دلیل اصول بهینه سازی و performance باید توسط برنامه نویس رعایت شود. با استاندارد آکادمی طریقه ی بهینه سازی عملکرد اپکلیشین های اندرویدی خود را به خوبی بیاموزید.
نکته ۱ – مدت زمان بهینه برای بارگزاری عملیات ها
دیوایس های اندرویدی قدرت کمتری نسبت به کامپیوترهای دسکتاپ دارند به همین دلیل ممکن است با نوشتن کد غیربهینه باعث شویم اپلیکیشن در دیوایس های اندرویدی ضعیف به خوبی اجرا نشوند. مخصوصا در دیوایس هایی که ورژن اندروید کمتر از ۵ دارند باید اصول بهینه سازی را به صورت جدی رعایت کنیم. برای مثال مدت زمانی که کاربر منتظر است تا اپلیکیشن بارگزاری شود نباید بیشتر از ۲۰۰ میلی ثانیه باشد و این کار تنها با رعایت قواعد استاندارد بهینه سازی قابل انجام است.
نکته ۱.۲ – اجتناب از ساختن object های اضافی
از ساختن object های اضافی در کدهایتان اجتناب کنید، تا جایی که میتوانید از object هایی که قبلا ساخته اید استفاده کنید، ساختن object های اضافه بازدهی اپلیکیشن را پایین می آورند و باعث کاهش عملکرد میشوند.برای مثال هیچوقت درون حلقه های تکرار object نسازید یا برای مثال درون متدهایی که به صورت متوالی استفاده می شوند مانند onCreate و onDraw اقدام به ساختن object نکنید.
نکته کمکی : منظور از object شی می باشد و در مثال های بالا ساختن String و Integer و سایر متغیرها نیز مد نظر است و باید از این کار دوری کنید تا اپلیکیشن دچار کاهش عملکرد نشود.
نکته ۱.۳ – استفاده از Data Structure های مناسب
برای مثال به کد زیر دقت کنید :
Map<Integer, String> map = new HashMap<Integer, String>();
با ساختن هش مپ بالا باعث میشوید که شی های اضافی تولید شوند و برای حافظه بهینه نیستند. اندروید Data Sctructure های بهینه ای برای map کردن value ها به object ها دارد. این Data Structure ها برعکس هش مپ شی های اضافی تولید نمیکنند. ساخت شی های اضافی در برنامه نویسی باید به حداقل برسد تا اپلیکیشن بهینه شود و همچنین تعداد دفعات اجرا شدن Garbage Collector به حداقل برسد.
Description | Memory Structure |
---|---|
Maps integers to Objects | SparseArray<E> |
Maps integers to booleans | SparseBooleanArray |
Maps integers to integers | SparseIntArray |
برای اینکه بهینه سازی حافظه را در اپلیکیشن های خود به صورت کامل رعایت کنید و همچنین تعداد دفعات اجرا شدن را به حداقل برسانید به قطعه کد زیر دقت کنید
SparseArray map = new SparseArray(); map.put(1, "Hello");
موفق باشید.
دیدگاهتان را بنویسید
برای نوشتن دیدگاه باید وارد بشوید.