نقشه راه یادگیری برنامه نویسی اندروید (به همراه لینک موضوعات)

Android specific (Java & Kotlin)Android Programming: The Big Nerd Ranch GuideAndroid Development with KotlinKotlin programming: The Big Nerd Ranch GuideKotlin for Android developersProject Guidelines & conventionsProject and Code Guidelines by ribotA successful XML naming conventionLayoutsConstraintLayouts[Android - Building a layout from Scratch using ConstraintLayout - and Q&A #RiggarooLive] https://www.youtube.com/watch?v=h1LHzObflwoDesign PatternsMVPhttps://antonioleiva.com/mvp-android/https://dzone.com/articles/model-view-presenter-for-andriod https://hackernoon.com/basics-of-mvp-the-android-way-f75da407019dhttps://medium.com/cr8resume/make-you-hand-dirty-with-mvp-model-view-presenter-eab5b5c16e42http://macoscope.com/blog/model-view-presenter-architecture-in-android-applications/MVP Guidelines https://medium.com/@cervonefrancesco/model-view-presenter-android-guidelines-94970b430ddfProductivityAn #androidDev collection of Live Templates for Android StudioArticlesSplash Screens the Right WayPendingResources pending the review.https://kotlinlang.org/docs/reference/coding-conventions.htmlhttps://developer.android.com/kotlin/style-guideCode labs Google. https://codelabs.developers.google.com/?cat=AndroidVideo. Conference talk about activity LifecyclePatterns: MVPPatterns: MVVMArticle about clean Architecture: https://erikcaffrey.github.io/ANDROID-clean-architecture/Android Architecture Components Guide - https://developer.android.com/topic/libraries/architecture/ - https://riggaroo.co.za/android-architecture-components-looking-room-livedata-part-1/ - https://riggaroo.co.za/android-architecture-components-looking-viewmodels-part-2/ - https://riggaroo.co.za/android-architecture-components-looking-lifecycles-part-3/ - https://www.youtube.com/watch?reload=9&amp;amp;v=9QrFMsihBAo - https://github.com/googlesamples/android-architecture-components - https://codelabs.developers.google.com/codelabs/android-persistence/index.html#0 - https://codelabs.developers.google.com/codelabs/constraint-layout/index.html#0Work with network - https://www.tutorialspoint.com/restful/ - http://square.github.io/retrofit/ - http://square.github.io/okhttp/ - https://developer.android.com/studio/profile/network-profiler - https://www.charlesproxy.com/Continuous Integration for Android - Jenkins - BuddyBuild - Cricle CI - TravisCode quality - Code Quality Tools - Sonar - FindBugs - Checkstyle - Android LintMatering Layouts - FrameLayout - RelativeLayout - LinearLayout - ConstraintLayout - CoordinatorLayout - Supporting different screen sizes - https://developer.android.com/training/multiscreen/screensizes - ConstraintLayout - https://codelabs.developers.google.com/codelabs/constraint-layout/index.html#0Build systems - Build System - Gradle - https://gradle.org/ - Configure the build - https://developer.android.com/studio/build/Testing - Android Testing Support Library - https://developer.android.com/training/testing/ - Espresso - https://developer.android.com/training/testing/espresso/basics - JUnit - https://junit.org/junit4/ - Codelabe testing -https://codelabs.developers.google.com/codelabs/android-testing/index.html#0https://codelabs.developers.google.com/codelabs/android-perf-testing/index.html#0Releasing - Releasing your Android apps - Preparing your app for release - https://developer.android.com/studio/publish/preparing - App Signing - https://developer.android.com/studio/publish/app-signing - Versioning your App - https://developer.android.com/studio/publish/versioning - ProGuard - https://developer.android.com/studio/build/shrink-codeSecurity - Security Tips on Android - https://developer.android.com/training/articles/security-tips.html - Certificate Pinning - https://square.github.io/okhttp/3.x/okhttp/okhttp3/CertificatePinner.html - SafetyNet API - https://developer.android.com/training/safetynet/ - Android Keystore System - https://developer.android.com/training/articles/keystorehttps://android.jlelse.eu/10-things-new-android-developers-can-relate-to-afd82791faabhttps://google.github.io/styleguide/javaguide.htmlService, IntentService and their lifecycle: - https://developer.android.com/guide/components/services - https://medium.com/@kevalpatel2106/how-to-handle-background-services-in-android-o-f96783e65268Broadcast Receivers - https://android.jlelse.eu/local-broadcast-less-overhead-and-secure-in-android-cfa343bb05beContent Providers - https://developer.android.com/guide/topics/providers/content-providers - https://medium.com/@paulnunezm/steps-for-creating-a-content-provider-ab376d661613 - https://medium.com/@sanjeevy133/an-idiots-guide-to-android-content-providers-part-1-970cba5d7b42 - https://medium.com/@sanjeevy133/an-idiots-guide-to-android-content-providers-part-2-7ccfbc88d75cTasks and the Back Stack https://medium.com/androiddevelopers/tasks-and-the-back-stack-dbb7c3b0f6d4https://android.jlelse.eu/android-activity-launch-mode-e0df1aa72242 https://medium.com/@iammert/android-launchmode-visualized-8843fc833dbe https://blog.mindorks.com/android-task-and-back-stack-review-5017f2c18196Debugging your app https://developer.android.com/studio/debug/ https://developer.android.com/studio/debug/Context in Android[ ]Android Views and Layouts https://medium.com/androiddevelopers/layouts-attributes-and-you-9e5a4b4fe32chttps://medium.com/@geekanamika/android-beginners-views-layouts-657a5bbeebe2Android Themes and Styles https://youtu.be/TIHXGwRTMWI https://youtu.be/Jr8hJdVGHAkFragments https://developer.android.com/guide/components/fragments https://medium.com/@bherbst/managing-the-fragment-back-stack-373e87e4ff62 https://android.jlelse.eu/the-dark-side-of-fragments-ca0f871b1199ViewPager https://developer.android.com/reference/android/support/v4/view/ViewPagerhttps://android.jlelse.eu/creating-an-intro-screen-for-your-app-using-viewpager-pagetransformer-9950517ea04fRecyclerView https://youtu.be/KhLVD6iiZQs https://youtu.be/LqBlYJTfLP4 https://youtu.be/TS_J0Qw4zl0Shared Preferences https://android.i-visionblog.com/working-with-android-shared-preferences-4668efa298a8Sqlite https://medium.com/@valokafor/ultimate-guide-to-android-sqlite-database-44cc8636a4ecThreading https://medium.com/@ankit.sinhal/understanding-of-asynctask-in-android-8fe61a96a238Book: Efficient Android Threading: Asynchronous Processing Techniques for Android Applications https://www.amazon.com/Efficient-Android-Threading-Asynchronous-Applications/dp/1449364136/ref=as_li_ss_tl?s=books&amp;amp;ie=UTF8&amp;amp;qid=1515094900&amp;amp;sr=1-1&amp;amp;keywords=efficient+android+threading&amp;amp;linkCode=sl1&amp;amp;tag=xgentechnical-20&amp;amp;linkId=85f8342ab0f8016cfc279bd3eeee0940ThreadPoolExecutorLooper, Handler, HandlerThreadHTTP and REST https://code.tutsplus.com/tutorials/a-beginners-guide-to-http-and-rest--net-16340Networking in Android apps https://www.raywenderlich.com/2-android-networking-tutorial-getting-startedNotifications https://developer.android.com/guide/topics/ui/notifiers/notifications https://youtu.be/WzRSpZpw2wgLocation and Maps https://developer.android.com/guide/topics/location/Android Sensors https://developer.android.com/guide/topics/sensors/sensors_overviewLocalization and Internationalization https://youtu.be/Z51wN9wCao0https://developer.android.com/training/basics/supporting-devices/languageshttps://developer.android.com/training/basics/supporting-devices/languagesRun Time Permissions https://developer.android.com/training/permissions/requesting https://youtu.be/f17qe9vZ8RMhttps://youtu.be/5xVh-7ywKpEApp Standby and Doze Mode https://youtu.be/p6ZiDZBgPY8Android Support Libraries https://youtu.be/https://developer.android.com/topic/libraries/support-library/Material Design https://youtu.be/vx3TXN6ipAg https://youtu.be/EjTJIDKT72M https://youtu.be/9LUHFkPVYNoAndroid Build System https://youtu.be/OOEDKf06WqA https://youtu.be/Xw6CKEsWvxo