بایگانی برچسب: s

chapter-28-android-MVP-Cover

آموزش اندروید-فصل ۲۸-۳: تست برنامه‌های MVP

ما ویژگی‌های الگوی معماری MVP را در بخش اول مطلب آموزش  دادیم و در بخش دوم هم این الگو را در برنامه خودمان پیاده‌سازی کردیم. حالا وقت آن است که کمی بیشتر به اعماق برویم. در این آموزش بر روی موضوعات زیر تمرکز می‌کنیم:

  • آماده‌سازی محیط تست برنامه و نوشتن تست واحد (Unit Test) برای کلاس‌های MVP
  • پیاده‌سازی MVP‌ به همراه تزریق وابستگی با استفاده از Dagger2
  • و در اخر درباره مشکلات متداول در اندروید که باید از آن‌ها اجتناب کرد صحبت خواهیم کرد.

ادامه مطلب

chapter-28-android-MVP-Cover

آموزش اندروید-فصل ۲۸-۲: معماری MVP در برنامه‌های اندروید

در بخش قبلی درباره معماری MVP و تفاوت آن با معماری پیش‌فرض اندروید و MVC صحبت کردیم. در این بخش می‌خواهیم درباره پیاده‌سازی معماری MVP در پروژه‌های اندروید صحبت کنیم.

ادامه مطلب

chapter-28-android-MVP-Cover

آموزش اندروید-فصل ۲۸-۱: مقدمه معماری MVP در برنامه‌های اندروید

این مطلب ترجمه‌ای است از مطلب «تین مگالی» که در اینجا منتشر شده است.

وقتی برنامه پیچیده‌ای را توسعه می‌دهیم، معمولاً با چالش‌هایی روبرو می‌شویم که پیش از این خیلی‌ها با آن‌ها برخورد کرده‌اند و حالا هر کدام آن‌ها راه‌حل‌هایی بسیار زیبا دارند. به این راه‌حل‌ها «الگو» می‌گویند. ما معمولاً از الگوهای طراحی و الگوهای معماری می‌شنویم. این الگوها توسعه را آسان می‌کنند و بهتر است که ما هم از آن‌ها استفاده کنیم. البته هر زمان که به استفاده از آن‌ها نیاز باشد.

این آموزش به شما در درک اهمیت طراحی خوب پروژه و این که معماری استاندارد اندروید همیشه و برای هر کاری کافی نیست، کمک می‌کند. درباره چند مسأله بالقوه که ممکن است در زمان توسعه برنامه‌های اندروید با آن‌ها روبرو شوید بحث می‌کنیم و نشان خواهم داد که برای حل آن مسائل چطور برنامه را تست کنید و قابلیت اطمینان آن را بالا ببرید. همه این‌ها با کمک الگوی MVP.

ادامه مطلب

What-2-Years-of-Android-Development-Have-Taught-Me-the-Hard-Way

آنچه بعد از دو سال برنامه‌نویسی اندروید آموختم-قسمت سوم

در قسمت اول و دوم این مطلب ۱۰ تا از توصیه‌های Aritra Roy را با هم مرور کردیم. در این مطلب بخش دیگری از توصیه‌های وی را با هم می‌خوانیم.

۱۱- با تنظیم بیلد گریدل پنج ساعت در هفته در وقت صرفه‌جویی کن

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

ساعت‌های بی شماری را به باد می‌آورم که بیکار می‌نشسم تا بیلد گریدل تمام شود. در زمان‌های شلوغی کار به راحتی یک ساعت از وقت من صرف بیلدهای گریدل می‌شود و این یعنی ۵ ساعت در هفته و ۲۰ ساعت در ماه.

اما راه‌هایی هست تا گریدل را سریع‌تر کنی.

برای این کار اینجا و اینجا را ببین. با استفاده از این رهنمودها و بهینه‌سازی مناسب، زمان بیلد من از چهار دقیقه به حدود ۳۰ ثانیه رسید.

ادامه مطلب

What-2-Years-of-Android-Development-Have-Taught-Me-the-Hard-Way

آنچه بعد از دو سال برنامه‌نویسی اندروید آموختم-قسمت دوم

در قسمت قبل پنج توصیه Aritra Roy را خواندید. در این مطلب ادامه مطلب را می‌خوانیم:

۶- از معماری مناسب استفاده کن

همیشه از خودت به خاطر انتخاب یک معماری مناسب در اول کار، سپاسگزار خواهی بود. می‌توانی از MVP یا همان Model-View-Presenter استفاده کنی که برنامه را به لایه‌های متفاوتی تجزیه می‌کند تا مدیریت آن ساده‌تر باشد. این باعث می‌شود تا انعطاف کد بالاتر برود و زمان نگهداری آن کاهش یابد.

این یک پروژه دموی بسیار عالی برای شروع است. اگر با مفهموم آشنا نیستید می‌توانید این راهنمای دقیق و با جزئیات را بخوانید.

جایزه: حتما این و این را ببینید. اینها کمک بزرگی به پیاده‌سازی MVP در پروژه به شما می‌کنند.

ادامه مطلب

0ta100-part-001-cover

صفر تا صد: ۱- نوشتن ویژگی‌ها و طراحی برنامه

مقدمه

هر برنامه‌ای برای هدفی خاص نوشته می‌شود و قرار است مشکل مشخصی را حل کند. بنابراین اول باید مشکلی را که قرار است حل کنیم و برای آن برنامه بنویسیم، بشناسیم. شناخت مشکل برابر است با ویژگی‌های برنامه. اما چرا؟ هر ویژگی برنامه قسمتی از مشکل را قرار است حل بکند. بنابراین برای شروع کار باید ابتدا مسأله‌ای را که می‌خواهیم حل کنیم تشریح کنیم تا بعد بتوانیم بر اساس آن ویژگی‌های برنامه را استخراج کنیم.

ادامه مطلب

android-weekly-1

هفته‌نامه اسمارت لب ۱#

مدت‌ها قبل تصمیم داشتم یک خبرنامه هفتگی در موضوعات مرتبط با برنامه‌نویسی و گجت‌های هوشمند جمع‌آوری کنم که هر بار به دلایلی انجام کار به تعویق افتاد. در هفته گذشته مطالب و موضوعات رو جمع‌آوری و دسته‌بندی کردم تا آخر هفته منتشر کنم! این شما و این هم شماره اول خبرنامه هفتگی یا «هفته‌نامه اسمارت لب ۱#»!

ادامه مطلب

android-design-support-library-material-design

آشنایی با Android Design Support Library (بخش دوم)

در مطلب قبلی درباره بخش‌هایی از امکانات کتابخانه پشتیبان طراحی یا همان Design Support Library نوشتم. در این مطلب بخش‌هایی دیگر از امکانات این کتابخانه را توضیح می‌دهم و در مطلب بعدی با هم یک پروژه واقعی با این کتابخانه خواهیم ساخت.

Snackbar

برای دادن یک بازخورد سریع و آسان برای یک عملیات به طوری که مزاحم عملکرد عادی کاربر نباشد و اصطلاحاً دست و پای او را نبندد تا الان از Toast استفاده می‌کردیم. Snackbar همان Toast است با امکانات بیشتر و اجرای روان‌تر.

ادامه مطلب

android-design-support-library-material-design

آشنایی با Android Design Support Library (بخش اول)

مقدمه

یکی از مشکلات اصلی اندروید این است که سازندگان دستگاه‌ها همپا و همگام گوگل نسخه‌های سیستم‌عامل اندروید دستگاه‌های ساخت خودشان را منتشر نمی‌کنند. این مسأله باعث شده است که کاربران نتوانند از آخرین نسخه‌های سیستم عامل اندروید استفاده کنند. گوگل در سال‌های اخیر سعی کرده است با برنامه‌های تشویقی سازندگان را تشویق کند تا گوشی‌هایشان را بروزرسانی کنند ولی هنوز توفیق چندانی نداشته است. در حال حاضر حدود ۱۰ درصد گوشی‌های اندروید در بازار از نسخه Gingerbread یا نان زنجبیلی اندروید استفاده می‌کنند که نسخه ۲٫۳ این سیستم عامل است. در زمان نگارش این مطلب اندروید نسخه ۵.۱ ماه‌ها است که عرضه شده است و نسخه ۶ اندروید (که اندروید مارش‌ملو نام دارد) در آستانه عرضه نهایی است. این مسأله باعث شده است توسعه‌دهندگان اندروید نتوانند از خیلی از ویژگی‌های اندروید که در نسخه‌های آخر آن عرضه شده است استفاده کنند. در واقع معامله اصلی این است: نوشتن برنامه‌ای زیبا و کاربردیی که کاربران زیادی نمی‌توانند از آن استفاده کنند یا داشتن کاربران زیادی که از برنامه‌ای با امکانات ضعیف و نابروز استفاده می‌کنند. راه‌حل چیست؟ اگر بشود برخی از امکانات نسخه‌های متأخر اندروید را به نسخه‌های قدیمی‌تر انتقال داد می‌توان تا حد زیادی بر این مشکل غلبه کرد. کتابخانه پشتیبان یا Support Library دقیقاً همین کار را می‌کند.

ادامه مطلب