با طعم کد!

اشتباهات پر تکرار یک برنامه‌نویس اندروید – قسمت دوم

این اتفاقات شاید برای هر برنامه‌نویسی اتفاق بیفتد،...

در قسمت قبلی این مطلب توضیح داده شد که منظور ما از اتفاقات و اشتباهات یک برنامه‌نویس چیست و چرا ممکن است این اتفاقات برای همه برنامه‌نویسان رخ بدهد. در این قسمت هم قصد دارم به ادامه بحث قبلی بپردازم و دو یا سه مورد از این اشتباهات را توضیح بدهم.

۳. فراموش کردن همه قابلیت های Intent ها

Intent‌ها یکی از اجزای مهم و کلیدی اندروید هستند، اما فراموش نکنید که فقط برای جا به جا شدن در بین صفحه‌های برنامه ساخته نشده‌اند!!! Intentها توانایی انتقال و جابه‌جا کردن اطلاعات، جا‌به‌جایی در قسمت‌های برنامه و حتی برنامه‌های یک سیستم را دارند.
بگذارید بگوییم شما یک برنامه گالری تصاویر دارید که می تواند اسامی عکس های موجود در این برنامه به همراه توضیحات آن را با برخی از دوستانتان از طریق پیام کوتاه (پیامک یا همان SMS!) به اشتراک بگذارد. کدام یک از دو سناریو برای این کار منطقی تر است؟

راه اول:

  • ابتدا برای ارسال پیام کوتاه درخواست مجوز SEND_SMS را به کاربر ارسال کنید.
  • با استفاده از SMSManager برای ارسال پیام کوتاه، برنامه را بیشتر توسعه دهید.
  • به کاربران خود توضیح دهید که چرا یک برنامه گالری عکس، نیاز به دسترسی به خدماتی دارد که می توانند هزینه بر باشد و چرا باید مجوز استفاده از این خدمات را به برنامه شما بدهند.

راه دوم:

  • یک Intent برای ارسال پیام کوتاه ارسال کنید و بگذارید برنامه ای که برای این کار توسعه داده شده است خودش کارش را انجام دهد و تمام!!!

در صورتی که هنوز شک دارید کدام راه بهتر است، باید بگویم راه دوم فقط بهتر نیست! عالی ترین راه است!
این رویکرد می تواند تقریبا برای همه چیز و هر اتفاقی از جمله به اشتراک گذاری محتوا، گرفتن عکس، ضبط ویدئو، انتخاب مخاطبین، اضافه کردن رویدادها، باز کردن لینک با برنامه های بومی و غیره اعمال شود.
به استثنای زمانی که واقعا دلایل مناسبی برای اجرای سفارشی یک کار دارید (مثلا نیاز دارید که از  اعمال فیلتر های خاصی استفاده کنید) ، همیشه می توانید از Intent ها استفاده کنید، این کار باعث می شود در وقت شما صرفه جویی شود و مشکلات احتمالی را نیز کاهش می دهد و دیگر نیاز به گرفتن مجوز های اضافی از کاربر نیست. حجم برنامه شما هم کمتر خواهد بود!

۴.استفاده نکردن از Fragment ها

در سال ۲۰۱۱ و همزمان با رونمایی Honeycomb یا به اصطلاح اندروید ۳ خودمان، مفهوم جدید با عنوان Fragment معرفی شد. می توان Fragment‌ها را بلوک های ساختمانی جداگانه موجود در Activityها با چرخه زندگی (نسبتا پیچیده) مختص خودشان در نظر گرفت. این Fragment ها، با بهینه سازی صفحات نمایش مختلف می توانند سرعت و کیفیت طراحی رابط کاربری مناسب را افزایش دهند. این اجزا به راحتی قابل مدیریت توسط Activity والد خود هستند و می توانند مجددا استفاده شوند، به یک دیگر در یک Activity ترکیب شوند و در مکان مورد نظر قرار بگیرند. راه اندازی Activity جداگانه برای هر صفحه برنامه به شدت ناکارآمد است، زیرا بعضی سیستم‌ها و یا معماری ها تلاش خواهند کرد که تا زمانی که بتوانند این Activity ها را در حافظه حفظ کنند.

در قسمت بعدی این نوشتار به مشکلات دیگری اشاره خواهم کرد.

برچسب ها
نمایش بیشتر

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.

بستن
بستن