1

Step 1

Clean Code. Чистая архитектура. Роберт Мартин

2

Step 2

Kotlin In Action. Dmitry Jemerov, Svetlana Isakova

3

Step 3

Kotlin. Документация.

4

Step 4

Unit Testing.

5

Step 5

Архитектурные антипаттерны

6

Step 6

UML диаграммы для начинающих

7

Step 7

Material design для Android

8

Step 8

Debugging

9

Step 9

Schedule task. WorkManager

10

Step 10

Application Permissions .

11

Step 11

Операции с сетью

12

Step 12

Unit Test with Kotlin Spek

13

Step 13

Architecture knowledge

14

Step 14

Dependency Injection. Dagger2

15

Step 15

Rx

16

Step 16

Android

1

Step 1

Clean Code. Чистая архитектура. Роберт Мартин

2

Step 2

Kotlin In Action. Dmitry Jemerov, Svetlana Isakova

3

Step 3

Kotlin. Документация.

4

Step 4

Unit Testing.

5

Step 5

Архитектурные антипаттерны

6

Step 6

UML диаграммы для начинающих

7

Step 7

Material design для Android

8

Step 8

Debugging

9

Step 9

Schedule task. WorkManager

10

Step 10

Application Permissions .

11

Step 11

Операции с сетью

12

Step 12

Unit Test with Kotlin Spek

13

Step 13

Architecture knowledge

14

Step 14

Dependency Injection. Dagger2

15

Step 15

Rx

16

Step 16

Android

08 October 2018 31 May 2019
The goal is overdue by 2006 days

Goal abandoned

The author does not write in the goal 5 years 9 months 27 days

Career & Work

Android разработка: от Junior к Middle

Дано: есть знание Java на среднем уровне, Android - на уровне "очень новичок")) Сразу все пункты писать долго и сложно. Так что со временем пункты будут модифицироваться и изменяться.

Хочу 1: уверенный в себе middle-специалист на иинтерсном проекте.

Хочу 2: опубликованное приложение на Google Play Market.

 Goal Accomplishment Criteria

Позиция Middle в трудовой книжке))

 Personal resources

Время

 Goal ecological compatibility

Достичь цели могу только я, никто вместо меня не сделает)

  1. Clean Code. Чистая архитектура. Роберт Мартин

    Мне уже несколько человек сказали, что эта книга просто "must have". Люди советоватли умные, надо читать, пока есть возможность))

    1. Часть I. Введение

    2. Часть II. Начальные основы: парадигмы программирования.

    3. Часть III. Принципы дизайна.

    4. Часть IV. Принципы организации компонентов.

    5. Часть V. Архитектура.

    6. Часть VI. Детали.

    7. Часть VII. Приложение.

  2. Kotlin In Action. Dmitry Jemerov, Svetlana Isakova

    Очень рекомендуемая всеми книга для изучения Kotlin.

    1. Введение в Kotlin

    2. Kotlin, что это и зачем

    3. Основы Kotlin

    4. Определение и вызов функций

    5. Классы, объекты и интерфейсы

    6. Лямбда-выражения

    7. Система типов Kotlin

    8. Перегрузка операторов и другие соглашения

    9. Функции высшего порядка

    10. Обобщённые типы

    11. Аннотации и механизм рефлексии

    12. Конструирование DSL

    13. Сборка проектов на Kotlin

    14. Документирование кода на Kotlin

    15. Экосистема Kotlin

  3. Kotlin. Документация.

    Скоро без знания Kotlin будет никуда. Существующие проекты поддерживают java, а вот новые все больше пишут на kotlin.

    Так что изучаем и срочно.

    1. Документация Kotlin. Basics. (https://kotlinlang.org/docs/kotlin-docs.pdf)

    2. Документация Kotlin. Classes and Objects.

    3. Документация Kotlin. Functions and Lambdas.

    4. Документация Kotlin. Multiplatform Programming.

    5. Документация Kotlin. Other.

    6. Документация Kotlin. Reference.

    7. Документация Kotlin. Java Interop.

    8. Документация Kotlin. JavaScript.

    9. Документация Kotlin. Native.

    10. Документация Kotlin. Coroutines.

    11. Документация Kotlin. Tools.

    12. Документация Kotlin. Evolution and FAQ.

    13. Задания на Kotlin https://play.kotlinlang.org/koans/Introduction/Hello,%20world!/Task.kt

    14. Kotlin and Android https://developer.android.com/kotlin/

    15. Advanced Kotlin tips https://android.jlelse.eu/advanced-kotlin-tips-local-infix-and-inline-functions-tail-recursion-sealed-classes-and-more-

    16. Kotlin lambdas https://antonioleiva.com/?s=Functional+Android

    17. Collection operations in Kotlin https://antonioleiva.com/collection-operations-kotlin/

    18. Kotlin Android Extensions https://kotlinlang.org/docs/tutorials/android-plugin.html

    19. Coroutines https://kotlinlang.org/docs/reference/coroutines/coroutines-guide.html

    20. Example application on Kotlin

  4. Unit Testing.

    Приложения надо тестировать, желательно хорошо и быстро. Соответсвенно, поднимаем уровень.

    1. JUnit Best Practices Guide. (https://howtodoinjava.com/best-practices/unit-testing-best-practices-junit-reference-guide/)

    2. Write unit tests.

    3. Mocking Libraries.

    4. Документация. https://junit.org/junit5/docs/current/user-guide/

  5. Архитектурные антипаттерны

  6. UML диаграммы для начинающих

  7. Material design для Android

  8. Debugging

    Разобраться на достойном уровне в процессе debug-а приложения в Android Studio.

    1. Studio. https://www.jetbrains.com/help/idea/tutorial-java-debugging-deep-dive.html

    2. Logging. https://developer.android.com/studio/command-line/logcat

    3. Android debugging. https://developer.android.com/studio/debug/

    4. Breakpoints. https://developer.android.com/studio/debug/#breakPoints

  9. Schedule task. WorkManager

    WorkManager: классы и концепции, детальное рассмотрение функций и возможностей.

  10. Application Permissions .

    1. Разрешения и запрос разрешений.

    2. Собственные разрешения.

    3. Лучшие практики.

  11. Операции с сетью

    1. Подключаемся к сети. https://developer.android.com/training/basics/network-ops/connecting.html

    2. Выбираем Http клиента. https://developer.android.com/training/basics/network-ops/connecting.html#http-client

    3. Проверяем интернет соединение. https://developer.android.com/training/basics/network-ops/managing.html#check-connection

    4. Определяем изменение состояния сети. https://developer.android.com/training/basics/network-ops/managing.html#detect-changes

    5. Управляем использованием сети. https://developer.android.com/training/basics/network-ops/managing.html#manage-usage

  12. Unit Test with Kotlin Spek

    Научиться писать тесты для Android приложения, написанного на kotlin, с помощью spek.

    1. Unit Test with Kotlin (Mockito, RxJava & Spek) https://android.jlelse.eu/keddit-part-9-unit-test-with-kotlin-mockito-spek-76709812e3b6

    2. Официальный сайт. https://spekframework.org/core-concepts/

    3. Writing Specifications with Kotlin and Spek. https://www.baeldung.com/kotlin-spek

    4. И ещё одна документация. https://spekframework.github.io/spek/docs/latest/

  13. Architecture knowledge

    1. MVC/MVP/MVVM https://academy.realm.io/posts/eric-maxwell-mvc-mvp-and-mvvm-on-android/

    2. Android Architecture Components. Handling lifecycles https://developer.android.com/topic/libraries/architecture/lifecycle

    3. ViewModel https://developer.android.com/topic/libraries/architecture/viewmodel

    4. LiveData https://developer.android.com/topic/libraries/architecture/livedata

    5. Saving UI States https://developer.android.com/topic/libraries/architecture/saving-states

    6. Room Persistence Library https://developer.android.com/topic/libraries/architecture/room

    7. Clean Architecture https://fernandocejas.com/2014/09/03/architecting-android-the-clean-way/

    8. Clean Architecture in Android https://github.com/AndroidArchitecture/AndroidArchitectureBook

    9. Architecting Android...The evolution https://fernandocejas.com/2015/07/18/architecting-android-the-evolution/

    10. Adding DI to Clean Architecture Tasting Dagger 2 on Android https://fernandocejas.com/2015/04/11/tasting-dagger-2-on-android/

    11. Clean architecture using Android Architecture Componentsd https://fernandocejas.com/2018/05/07/architecting-android-reloaded/

    12. Android MVP for Beginners https://android.jlelse.eu/android-mvp-for-beginners-25889c500443

    13. Mosby: Getting started http://hannesdorfmann.com/mosby/getting-started/

    14. Moxy — реализация MVP под Android с щепоткой магии https://habr.com/post/276189/

    15. Moxy. Как правильно пользоваться? https://www.slideshare.net/profyclub_ru/moxy-arello-mobile

    16. Android Architecture Components https://developer.android.com/topic/libraries/architecture/

    17. ViewModel Overview https://developer.android.com/topic/libraries/architecture/viewmodel

    18. LiveData overview https://developer.android.com/topic/libraries/architecture/livedata

    19. Handling lifecycles with lifecycle-aware components https://developer.android.com/topic/libraries/architecture/lifecycle

    20. Saving UI States https://developer.android.com/topic/libraries/architecture/saving-states

    21. ViewModel и LiveData: паттерны и антипаттерны https://habr.com/post/338590/

    22. Architecture Components https://startandroid.ru/ru/courses/architecture-components.html

    23. Example application MVP

    24. Example application MVVM

  14. Dependency Injection. Dagger2

    1. Dagger 2 https://github.com/google/dagger

    2. Dependency Injection in Android with Dagger 2 and Kotlin https://www.raywenderlich.com/171327/dependency-injection-android-dagger-2

    3. Understanding Dagger 2 https://medium.com/@Miqubel/understanding-dagger-2-367ff1bd184f

    4. Dagger 2: Part1 https://habr.com/post/279125/

    5. Dagger 2: Part2 https://habr.com/post/279641/

    6. Koin: Getting started with Android https://insert-koin.io/docs/1.0/getting-started/android/

    7. The Koin DSL https://insert-koin.io/docs/1.0/reference/koin-dsl/

    8. Example application. Dagger.

  15. Rx

    1. RxJava: What's different in 2.0 https://github.com/ReactiveX/RxJava/wiki/What's-different-in-2.0

    2. RxJava https://github.com/ReactiveX/RxJava

    3. RxAndroid https://github.com/ReactiveX/RxAndroid

    4. RxAndroid: Extensions https://github.com/ReactiveX/RxAndroid/wiki

    5. Backpressure https://github.com/ReactiveX/RxJava/wiki/Backpressure

  16. Android

    1. Activities https://developer.android.com/guide/components/activities/

    2. App resources overview https://developer.android.com/guide/topics/resources/providing-resources?hl=en

    3. Layouts https://developer.android.com/guide/topics/ui/declaring-layout

    4. Screen compatibility overview https://developer.android.com/guide/practices/screens_support?hl=ru

    5. Handle configuration changes https://developer.android.com/guide/topics/resources/runtime-changes

    6. Handling the configuration change yourself https://developer.android.com/guide/topics/resources/runtime-changes?hl=en#HandlingTheChange

    7. ImageView http://developer.alexanderklimov.ru/android/views/imageview.php

    8. Buttons https://developer.android.com/guide/topics/ui/controls/button

    9. Radio Buttons https://developer.android.com/guide/topics/ui/controls/radiobutton?hl=ru

    10. Checkboxes https://developer.android.com/guide/topics/ui/controls/checkbox?hl=ru

    11. Toggle Buttons https://developer.android.com/guide/topics/ui/controls/togglebutton?hl=ru

    12. Dialogs https://developer.android.com/guide/topics/ui/dialogs?hl=en

    13. Toasts overview https://developer.android.com/guide/topics/ui/notifiers/toasts?hl=ru

    14. Localize your app https://developer.android.com/guide/topics/resources/localization?hl=ru

    15. Menus https://developer.android.com/guide/topics/ui/menus?hl=en

    16. Styles and Themes https://developer.android.com/guide/topics/ui/look-and-feel/themes?hl=ru

    17. Material Design for Android https://developer.android.com/guide/topics/ui/look-and-feel/?hl=ru

    18. App Manifest Overview https://developer.android.com/guide/topics/manifest/manifest-intro?hl=en

    19. Permissions overview https://developer.android.com/guide/topics/permissions/overview?hl=ru

    20. Intents and Intent Filters https://developer.android.com/guide/components/intents-filters?hl=en

    21. Start another activity https://developer.android.com/training/basics/firstapp/starting-activity?hl=ru

    22. Interacting with Other Apps https://developer.android.com/training/basics/intents/

    23. Sending the User to Another App https://developer.android.com/training/basics/intents/sending

    24. List View https://developer.android.com/guide/topics/ui/layout/listview

    25. Android List View http://www.tutorialspoint.com/android/android_list_view.htm

    26. Grid View https://developer.android.com/guide/topics/ui/layout/gridview

    27. Building Layouts with an Adapter https://developer.android.com/guide/topics/ui/declaring-layout#AdapterViews

    28. Custom Adapter for List View https://stackoverflow.com/questions/8166497/custom-adapter-for-list-view

    29. Hold View Objects in a View Holder https://developer.android.com/training/improving-layouts/smooth-scrolling#ViewHolder

    30. Creating a tab layout with TabHost and TabWidget https://maxalley.wordpress.com/2012/10/25/android-creating-a-tab-layout-with-tabhost-and-ta

    31. Create a List with RecyclerView https://developer.android.com/guide/topics/ui/layout/recyclervie

    32. Shared preferences https://developer.android.com/guide/topics/data/data-storage#pref

    33. Internal storage https://developer.android.com/guide/topics/data/data-storage#filesInternal

    34. External storage https://developer.android.com/guide/topics/data/data-storage#filesExternal

    35. Databases https://developer.android.com/guide/topics/data/data-storage#db

    36. Save data in a local database using Room https://developer.android.com/training/data-storage/room/

    37. Using Parcelable https://guides.codepath.com/android/using-parcelable#overview

    38. Parcelable VS Java Serialization https://www.3pillarglobal.com/insights/parcelable-vs-java-serialization-in-android-app-development

    39. AsyncTask https://developer.android.com/reference/android/os/AsyncTask

    40. Loaders https://developer.android.com/guide/components/loaders

    41. Settings https://developer.android.com/guide/topics/ui/settings

    42. Fragments https://developer.android.com/guide/components/fragments

    43. Action Bar https://startandroid.ru/ru/uroki/vse-uroki-spiskom/177-urok-107-android-3-actionbar-razmeschenie-elementov.html

    44. Add the app bar https://developer.android.com/training/appbar/

    45. Creating swipe views with tabs https://developer.android.com/training/implementing-navigation/lateral

    46. Create a navigation drawer https://developer.android.com/training/implementing-navigation/nav-drawer

    47. Handle navigation click events https://developer.android.com/training/implementing-navigation/nav-drawer#ListItemClicks

    48. Services overview https://developer.android.com/guide/components/services

    49. Broadcasts overview https://developer.android.com/guide/components/broadcasts

    50. Notifications Overview https://developer.android.com/guide/topics/ui/notifiers/notifications

    51. Firebase Cloud Messaging https://firebase.google.com/docs/cloud-messaging/

    52. Perform network operations overview https://developer.android.com/training/basics/network-ops/

    53. Connect to the network https://developer.android.com/training/basics/network-ops/connecting

    54. Retrofit http://square.github.io/retrofit/

  • 3249
  • 08 October 2018, 15:01
Sign up

Signup

Уже зарегистрированы?
Quick sign-up through social networks.
Sign in

Sign in.
Allowed.

Not registered yet?
 
Log in through social networks
Forgot your password?