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

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

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

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

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

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

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

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

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

ادامه مطلب

0ta100-part-001-cover

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

مقدمه

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

ادامه مطلب

farayad-cover

صفر تا صد: بازنویسی کدباز اپ فرایاد

اپ «فرایاد» را حدود ۳ سال قبل برای کارهای شخصی خودم نوشتم و بعد تصمیم گرفتم آن را در کافه بازار هم منتشر کنم. ابتدا کافه بازار به دلیل (احمقانه) این که برنامه مشابهی در کافه بازار وجود دارد از انتشار آن سر باز زد و من هم از انتشار آن منصرف شدم. بعد از چند وقت تصمیم گرفتم یک بازنگری کلی در برنامه انجام بدهم. این بار با این که چندین و چند برنامه یادآور یا Reminder در کافه‌بازار وجود داشت، کافه بازار برنامه را پذیرفت! برنامه توانست نظر مخاطبان اندک خودش را تأمین کند و امتیازش در کافه بازار بالاتر از ۴ شد و حدود ۴۰۰ نظر اغلب مثبت از کاربران دریافت کرد.

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

تغییرات برنامه بنیادین خواهد بود! چند هفته‌ای درگیر کار خواهیم شد و امیدوارم در انتهای کار هم برنامه خوبی نوشته بشود و هم همگی با هم چیزهای جدیدی یاد بگیریم!

اما اپ فرایاد چه تغییراتی خواهد کرد؟ مهم‌ترین تغییر برنامه این خواهد بود که برنامه به صورت client/server خواهد شد و اطلاعات کاربران را سایت اختصاصی‌اش ذخیره خواهد کرد. رابط کاربری برنامه هم دو زبانه (یا شاید چند زبانه) خواهد شد. در انتها هم برنامه را علاوه بر کافه‌بازار در گوگل پلی هم منتشر خواهم کرد!

اگر نمی‌دانید فرایاد چیست، فرایاد را از کافه بازار دانلود کنید و توضیحات آن را بخوانید.

سغر هیجان انگیزی خواهد بود! خودم که برای شروع آن لحظه‌شماری می‌کنم!

android-weekly-1

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

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

ادامه مطلب

android-cover

قطعه کدها و ابزارهای اندروید را از کجا بیابیم؟

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

ادامه مطلب

ir.smartlab.permissions

انتشار برنامه «دکتر مجوز» به صورت کدباز در کافه بازار

برنامه های اندروید، برای دسترسی به سخت افزارهای خاص( مثل دوربین)، اطلاعات کاربر (مثل دفتر تلفن) و یا انجام کارهایی که برای کاربر هزینه دارند (مثل ارسال پیامک و دسترسی به اینترنت) نیاز به مجوزهایی دارند که کاربر باید آنها را تأیید کند.

این مجوزها در زمان نصب برنامه از کاربر پرسیده می شود اما از آنجایی که توضیحات این مجوزها به زبان انگلیسی است و در ضمن ممکن است کاربر به آنها دقت نکند و آنها را مهم نپندارد، ممکن است در آینده با مشکلاتی مواجه شود.

ادامه مطلب

آموزش اندروید، فصل اول: مقدمه

اندروید چیست؟

اندروید یک سیستم عامل است. سیستم عاملی که از ابتدا با هدف اجرا بر روی دستگاه های کوچک مصرفی مانند موبایل ها، دوربین های عکاسی، پخش کننده های چند رسانه ای و … طراحی شده است. هسته این سیستم عامل از لینوکس گرفته شده است. اما با افزودن برخی از ویژگیهای خاص، خود را از لینوکس متمایز کرده است. اندروید کدباز (Open Source) است. به این معنا که هر کسی می تواند کد منبع آن را ببیند و اگر خواست آن را تغییر دهد. کدباز بودن ویژگی است که اندروید از لینوکس به ارث برده است. کدباز بودن اندروید باعث شده است که هر کسی بتواند آن را به دلخواه خود تغییر داده و بر روی دستگاه های خود نصب کند.

ادامه مطلب