جزوات و نت بردایهای من از دورههای ICT بیشتر در t.me/ICT_NoteTaking
لیستی از مفاهیم مهم برای درک بهتر برنامه نویسی اندروید
- Android Activity and its Lifecycle
در چرخه فعالیت اکتیویتی ، شما می توانید اعلام کنید که چگونه اکتیویتی شما چگونه و چطور رفتار می کند، زمانی که یکی از اکتیویتی ها از بین می رود و مجدا وارد اکتیویتی می شود. به عنوان مثال، اگر شما در حال ساخت یک پخش کننده ویدیویی هستید، زمانی که کاربر با یک برنامه دیگر، ویدیو را متوقف می کند و اتصال شبکه را قطع می کند. می توانید به شبکه دوباره وصل شود و به کاربر اجازه می دهد تا ویدیو را شروع کند.
https://blog.mindorks.com/android-activity-lifecycle
- Android Fragments and its Lifcycle
فرگمنت را می توان به عنوان یک زیر مجموعه و یا یک بخش از اکتیویتی (sub-activity) در نظر گرفت که در نهایت قسمتی از رابط کاربری را تشکیل داده و به واسطه آن یک رابط کاربری چند قسمتی ایجاد می شود. فرگمنت در اندروید مشابه آنچه قبلا برای اکتیویتی ها آموختیم، چرخه حیات و رفتار خاص خود را دارد، رویدادهای ورودی را دریافت می کند و از دو قسمت xml (لایه واسط کاربری) و کد عملیاتی (java) تشکیل شده است. هر اکتیویتی می تواند چندین فرگمنت را در خود جای دهد و هر فرگمنت می تواند در چندین اکتیویتی استفاده شود. بنابراین فرگمنت به تنهایی قابلیت اجرا ندارد و به اکتیویتی والد و چرخه حیات آن وابسته است. فرگمنت از API 11 (اندروید Honeycomb) اضافه شد.
https://blog.mindorks.com/android-fragments-and-its-lifecycle
- Debug your app | Android Developers
یاد بگیرید که چطور برنامه های خودوتن رو دیباگ کنید. هر توسعه دهنده اندروید به این مهارت نیاز دارد.
https://developer.android.com/studio/debug/
- Android Task and Back Stack
اکتیویتی ها در اندروید ساختارهای منطقی هستند که کاربر را در صفحه های مختلف هدایت می نمایند. دانستن ارتباط هر اکتیوتی با سایر اکتیویتی ها برای داشتن یک تجربه کاربری خوب ضروری بوده و این ارتباط باید با تمرکز بر مبنای دید کاربر طراحی گردد. به این منظور، سیستم اندروید جریان کاری و عقب و جلو رفتن کاربر بین اکتیویتی ها را به خوبی در مفهموم Task در نظر گرفته و کنترل می نماید. یک Task، اکتیویتی ها را با استفاده از یک پشته بنام Back Stack نگهداری مینماید. ساختار Stack بصورت LIFO است و اکتیویتی ها را به ترتیب آغاز شدن آنها نگهداری نموده و هیچگاه این ترتیب را بهم نمیریزد. کنترل و هدایت Back Stack توسط دکمه Back انجام میشود.
https://blog.mindorks.com/android-task-and-back-stack-review-5017f2c18196
- Understanding the Context In Android Application
یک برنامه ی اندرویدی یا مجموعه ی بسته نرم افزاری(APK)، یک بسته ی نرم افزاری از componentها هستند. این componentها در Manifest تعریف می شوند و عمدتا شامل (Activity(UI و (Service(Background و (BroadcastReceiver(Action و (ContentProvider (Data و (...,Resources (images, strings هستند.
توسعه دهنده می تواند این componentها را در سیستم با استفاده از intent-filter به نمایش بگذارد. برای مثال ارسال ایمیل یا به اشتراک گذاری تصویر. آن ها می توانند این componentها را به همراه componentهای دیگر در برنامه ی خود نشان دهند.
به طور مشابه سیستم عامل اندروید نیز نمایش componentها را طراحی نموده است. چند مورد شناخته شده ی آن نظیر WifiManager، Vibrator و PackageManager هستند
ما از Context برای معرفی Component به Activity، Content Provider، BroadcastReceiver و... استفاده می کنیم. ما همچنین از آن به منظور دستیابی به منابع و فایل های سیستم بهره می گیریم.
https://blog.mindorks.com/understanding-context-in-android-application-330913e32514
- Threading
در سیستم عامل های مختلف (از جمله اندروید)، thread ها یکی از مفاهیم اصلی می باشند که به ما قابلیت انجام چند کار (multitasking) را می دهند، به گونه ای که بتوانیم عملیات های مختلف را به شکلی مدیریت کنیم که هیچ اختلالی برای یکدیگر ایجاد نکنند. در واقع با استفاده از thread ها می توانیم اجرای موازی (parallel execution) عملیات های مختلف در برنامه ها (applications) را امکان پذیر کنیم.
https://developer.android.com/reference/java/lang/Thread
- Handle Configuration Changes
یاد بگیرید چگونه با تغییرات رفتاری یک گوشی در برنامه خودتان رفتار کنید. زمانی که برنامه شما در حال اجراست ممکن است ممکن از تغییراتی در زمان اجرای برنامه شما در گوشی کاربر رخ دهد. مااند چرخش صفحه, در دسترس بودن صفحه کلید, روش یا خاموش بودن اینترنت و ...
https://developer.android.com/guide/topics/resources/runtime-changes
- Android Content Provider
گاهی اوقات نیاز هست که اطلاعات و داده ها بین برنامه ها به اشتراک گذاشته شود . اینجاست که اهمیت content provider ها مشخص میشود . Content Provider ها یا تامین کننده ی محتواها در اندروید ، به شما این اجازه را میدهند که اطلاعات و داده های خود را در نقطه ی متمرکزی با دیگر برنامه هایی که به این اطلاعات نیاز دارند ، به اشتراک بگذارد .
https://developer.android.com/guide/topics/providers/content-provider-basics
Android Store | Libraries, Projects, Tools and Apps
با انواع کتابخانه های اندروید آشنایی داشته باید میتوانید از سایت GitHub در این زمینه استفاده کنید. و در اولین فرصت نحوه کار با با خود گیت هارو فرا بگیرید. با ابزار های توسعه اندروید بیشتر آشنا باید.کد و نمونه مثال ببینید و تمرین کنید.
https://mindorks.com/android/store
- Understanding the Android Core. Looper, Handler, and HandlerThread
Looper
، Handler
، HandlerThread
راه حل اندروید برای مشکلات برنامه نویسی ناهمزمان هستند
درک هسته اندروید : Looper , Handler و HandlerThread
Understanding the Android Core. Looper, Handler, and HandlerThread
- Service Overview and IntentService
سرویس ها اغلب برای انجام عملیات تکراری و طولانی مورد استفاده قرار می گیرند. از جمله ی این عملیات می توان به دانلود از اینترنت، بررسی و جستجو برای داده های جدید، پردازش اطلاعات، بروز آوری content provider ها و موارد مشابه اشاره کرد.
https://developer.android.com/guide/components/services
- Android App Optimization Using ArrayMap and SparseArray
بهینه سازی عملکرد برنامه در زمان استفاده از ArrayMap
https://blog.mindorks.com/android-app-optimization-using-arraymap-and-sparsearray-f2b4e2e3dc47
پایان بخش اول
منبع : medium.com
مطلبی دیگر از این انتشارات
آموزش کار با Epoxy در اندروید - قسمت ۱
مطلبی دیگر از این انتشارات
لیست کشویی در سویفت
مطلبی دیگر از این انتشارات
پلاگینهای اندروید استودیو