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

mockito-cover

آموزش اندروید-فصل ۲۹-۲: تست برنامه اندروید با JUnit و Mockito

در این فصل می‌خواهیم با تست واحد یا Unit Testing در اندروید آشنا بشویم. برای این موضوع دو کتابخانه JUnit و Mockito را انتخاب می‌کنیم و با مباحث بسیار ساده و مقدماتی آن‌ها آشنا می‌شویم و بعد به سراغ برنامه todo-mvp که پیش از این و در فصل قبل با آن آشنا شدید را انتخاب می‌کنیم و مباحث تست را بر روی این پروژه اجرا می‌کنیم.
ادامه مطلب

cover-29-1-android-testing

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

در بازارهای اپ میلیون‌ها برنامه وجود دارد! هر روز به این تعداد اضافه می‌شود و کاربران آن‌ها را «تست» می‌کنند. تا الان میلیاردها برنامه در گوشی‌ها و تبلت‌های کاربران نصب شده است و هر روز هم بیشتر می‌شود. برای این که کاربر را مجاب کنیم برنامه‌ای را نصب کند، راه بسیار زیادی را باید طی کنیم: ایده مناسبی داشته باشیم، آن ایده را به خوبی پیاده‌سازی کنیم، برنامه‌های پر هزینه تبلیغات را انجام دهیم و … بالاخره کاربر مجاب می‌شود که برنامه را نصب کند!

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

کافی است کاربر در حین اجرای برنامه به مشکلی بربخورد و بعد از چند ثانیه تصمیم بگیرد که برنامه را حذف کند. به همین سادگی همه تلاش‌های چند ماهه یا حتا چند ساله ممکن است از بین برود. راه چاره چیست؟ باید زمانی که برنامه را به دست کاربر می‌دهیم «مطمئن» باشیم که همه جوانب برنامه به درستی کار می‌کنند. چطور می‌توانیم به این اطمینان برسیم؟ «تست» برنامه!

ادامه مطلب

chapter-28-android-MVP-Cover

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

در قسمت‌های قبلی این مطلب با الگوی معماری MVP آشنا شدیم:

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

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

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

برای تکمیل آموزش MVP و آشنایی با روش گوگل برای پیاده‌سازی الگوی معماری MVP در این بخش به سراغ مثال گوگل برای MVP می‌رویم. گوگل در بخش مثال‌های خود در سایت گیت‌هاب، برنامه‌ای دارد به نام todo که آن را به شیوه‌های مختلف پیاده‌سازی کرده است. ادامه مطلب

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.

ادامه مطلب

retrofit-2-android-tutorial-cover

آموزش اندروید-فصل ۲۷-۸: Retrofit چیست و چطور کار می‌کند

مقدمه

در قسمت‌های قبلی این فصل، درباره موضوعات متوعی بحث کردیم. در این مطلب آخرین بخش مطالب مربوط به اتصال برنامه اندروید به سرور را با هم مرور می‌کنیم و در بخش (یا بخش‌های آینده) یک برنامه واقعی می‌نویسیم و از همه چیزهایی که تا به حال یاد گرفته‌اید استفاده خواهیم کرد.

در این بخش می‌خواهم شما را با Retrofit آشنا کنم. طبق تعریفی که خود پدیدآورندگان Retrofit کرده‌اند:

یک کلاینت REST نوع-امن جاوا و اندروید

است. از حاشیه‌نوشت‌های جاوا برای توصیف درخواست‌های HTTP و جانگهدارهای پارامترهای URL و … استفاده می‌شود. همچنین می‌توان از آن برای آپلود فایل و بدنه درخواست چندپاره (Multipart request body) استفاده کرد.

نکته: رتروفیت (Retrofit) نسخه ۲ کاملاً متفاوت با نسخه‌های ماقبل است. در این نوشته ما فقط از رتروفیت نسخه ۲ استفاده می‌کنیم و به نسخه‌های ماقبل آن کاری نداریم. اگر احیاناً آموزشی را از اینترنت می‌گیرید، حتماً حواستان به نسخه Retrofit هم باشد.

ادامه مطلب

REST-api-android-retrofit

آموزش اندروید-فصل ۲۷-۷: REST چیست

مقدمه

تا این جا مطالب زیادی درباره اتصال برنامه‌های اندروید به یک سرور و ارسال و دریافت اطلاعات نوشتیم:

در ادامه مباحث مرتبط با اتصال برنامه‌های اندروید به سرور می‌خواهم شما را با یک معماری و یک مفهوم بسیار پرکاربرد آشنا کنم: REST.

ادامه مطلب