ββNo Code ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ
ΠΠ½Π°Π΅ΡΠ΅, ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΠΌΠ΅Π½ΡΡΠ΅ Π±Π°Π³ΠΎΠ² ΠΈ ΠΈΠΌΠ΅ΡΡ ΡΠ°ΠΌΡΠΉ Π·Π°ΡΠΈΡΠ΅Π½Π½ΡΠΉ ΠΊΠΎΠ΄? Π’Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΠΈΠΌΠ΅ΡΡ ΠΊΠΎΠ΄Π°.
ΠΠ²ΡΡΠΈΡ ΡΡΡΠ°Π½Π½ΠΎ, ΠΏΠΎΠΊΠ° Π½Π΅ Π½Π°ΡΡΠΊΠ°Π΅ΡΡΡΡ Π½Π° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π½Π΅Ρ Π½ΠΈ ΡΡΡΠΎΡΠΊΠΈ ΠΊΠΎΠ΄Π° ΠΈ ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΠΌΠ΅Π΅Ρ Π±ΠΎΠ»ΡΡΠ΅ 30Π Π·Π²Π΅Π·Π΄ ΠΈ 3Π ΡΠΎΡΠΊΠΎΠ².
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ:
No code is the best way to write secure and reliable applications. Write nothing; deploy nowhere.
ΠΠΎ Π΅ΡΠ΅ Π±ΠΎΠ»Π΅Π΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠΌ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΎΠ±ΠΈΠ»ΠΈΠ΅ pull requests ΠΈ issues. Π ΠΎΠ±ΡΠ΅ΠΌ, Π΅ΡΠ»ΠΈ Ρ ΠΎΡΠ΅ΡΡΡ ΠΏΠΎΠ΄Π½ΡΡΡ ΡΠ΅Π±Π΅ Π½Π°ΡΡΡΠΎΠ΅Π½ΠΈΠ΅, ΡΠΎ Β«ΠΈΠ·ΡΡΠΈΡΠ΅Β» ΡΡΠΎΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ.
ΠΠ½Π°Π΅ΡΠ΅, ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΠΌΠ΅Π½ΡΡΠ΅ Π±Π°Π³ΠΎΠ² ΠΈ ΠΈΠΌΠ΅ΡΡ ΡΠ°ΠΌΡΠΉ Π·Π°ΡΠΈΡΠ΅Π½Π½ΡΠΉ ΠΊΠΎΠ΄? Π’Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΠΈΠΌΠ΅ΡΡ ΠΊΠΎΠ΄Π°.
ΠΠ²ΡΡΠΈΡ ΡΡΡΠ°Π½Π½ΠΎ, ΠΏΠΎΠΊΠ° Π½Π΅ Π½Π°ΡΡΠΊΠ°Π΅ΡΡΡΡ Π½Π° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π½Π΅Ρ Π½ΠΈ ΡΡΡΠΎΡΠΊΠΈ ΠΊΠΎΠ΄Π° ΠΈ ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΠΌΠ΅Π΅Ρ Π±ΠΎΠ»ΡΡΠ΅ 30Π Π·Π²Π΅Π·Π΄ ΠΈ 3Π ΡΠΎΡΠΊΠΎΠ².
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ:
No code is the best way to write secure and reliable applications. Write nothing; deploy nowhere.
ΠΠΎ Π΅ΡΠ΅ Π±ΠΎΠ»Π΅Π΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠΌ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΎΠ±ΠΈΠ»ΠΈΠ΅ pull requests ΠΈ issues. Π ΠΎΠ±ΡΠ΅ΠΌ, Π΅ΡΠ»ΠΈ Ρ ΠΎΡΠ΅ΡΡΡ ΠΏΠΎΠ΄Π½ΡΡΡ ΡΠ΅Π±Π΅ Π½Π°ΡΡΡΠΎΠ΅Π½ΠΈΠ΅, ΡΠΎ Β«ΠΈΠ·ΡΡΠΈΡΠ΅Β» ΡΡΠΎΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ.
ββΠΡΠΈΠ½Ρ
ΡΠΎΠ½Π½ΡΠΉ DiffUtil
#ΡΡΠ°ΡΡΠΈ #ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ,
ΠΠΎ ΠΏΠΎ ΠΌΠ΅ΡΠ΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΠ°Π·ΠΌΠ΅Ρ Π²Π°ΡΠ΅Π³ΠΎ Π½Π°Π±ΠΎΡΠ° Π΄Π°Π½Π½ΡΡ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ ΠΈΠ»ΠΈ Π»ΠΎΠ³ΠΈΠΊΠ° ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎΠΉ, Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ Β«ΠΏΠΎΠ΄ΡΠΎΡΠΌΠ°ΠΆΠΈΠ²Π°Π½ΠΈΠΉΒ», Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²ΡΡΠΈΡΠ»ΡΡΡ ΡΠ°Π·Π½ΠΈΡΡ Π² background-ΠΏΠΎΡΠΎΠΊΠ΅.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΎΠ².
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΠΈΡΠΈΡΠ΅ ΡΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Kotlin, ΡΠΎ Ρ ΡΡΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ΠΉ Π»Π΅Π³ΠΊΠΎ ΡΠΏΡΠ°Π²ΡΡΡΡ Coroutines. ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ ΡΡΡ.
ΠΡΠ»ΠΈ ΠΆΠ΅ Π²Ρ ΠΏΠΈΡΠΈΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Java, ΠΈΠ»ΠΈ Π½Π΅ Ρ ΠΎΡΠΈΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Coroutines, ΡΠΎ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² ΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Rx. ΠΠΎΠ΄ΡΠΎΠ±Π½Π°Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ΡΡΡ.
#ΡΡΠ°ΡΡΠΈ #ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°
RecyclerView Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ Π² Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ Android-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΌ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΠΎΠΌ Π΄Π»Ρ Π΅Π³ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ DiffUtil, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΌΡ Π½Π΅ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅ΠΌ Π²Π΅ΡΡ ΡΠΏΠΈΡΠΎΠΊ, Π° ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ ΡΠ°ΡΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈΡΡ.ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ,
DiffUtil ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ RecyclerView, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΊΠΎΠ³Π΄Π°-ΡΠΎ Π±ΡΠ»ΠΎ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ»ΠΈ ΠΎΡΠ΅Π½Ρ ΡΠ»ΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ListView.ΠΠΎ ΠΏΠΎ ΠΌΠ΅ΡΠ΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΠ°Π·ΠΌΠ΅Ρ Π²Π°ΡΠ΅Π³ΠΎ Π½Π°Π±ΠΎΡΠ° Π΄Π°Π½Π½ΡΡ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ ΠΈΠ»ΠΈ Π»ΠΎΠ³ΠΈΠΊΠ° ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎΠΉ, Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ Β«ΠΏΠΎΠ΄ΡΠΎΡΠΌΠ°ΠΆΠΈΠ²Π°Π½ΠΈΠΉΒ», Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²ΡΡΠΈΡΠ»ΡΡΡ ΡΠ°Π·Π½ΠΈΡΡ Π² background-ΠΏΠΎΡΠΎΠΊΠ΅.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΎΠ².
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΠΈΡΠΈΡΠ΅ ΡΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Kotlin, ΡΠΎ Ρ ΡΡΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ΠΉ Π»Π΅Π³ΠΊΠΎ ΡΠΏΡΠ°Π²ΡΡΡΡ Coroutines. ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ ΡΡΡ.
ΠΡΠ»ΠΈ ΠΆΠ΅ Π²Ρ ΠΏΠΈΡΠΈΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Java, ΠΈΠ»ΠΈ Π½Π΅ Ρ ΠΎΡΠΈΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Coroutines, ΡΠΎ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² ΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Rx. ΠΠΎΠ΄ΡΠΎΠ±Π½Π°Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ΡΡΡ.
ββGit ΠΊΠ»ΠΈΠ΅Π½ΡΡ
#ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° #ΠΎΠΏΡΠΎΡ
ΠΠ½Π΅ ΠΊΠ°ΠΆΠ΅ΡΡΡ, ΡΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΏΠΎ ΡΠ°ΡΡΠΎΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ ΡΡΠ΅Π΄ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΏΠΎΡΠ»Π΅ IDE ΠΈ Π±ΡΠ°ΡΠ·Π΅ΡΠ°, ΡΠ²Π»ΡΠ΅ΡΡΡ Git ΠΊΠ»ΠΈΠ΅Π½Ρ.
Π₯ΠΎΡΡ Ρ ΡΠ²Π΅ΡΠ΅Π½, ΡΡΠΎ Π΅ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ²ΡΠΊΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΊΠΎΠ½ΡΠΎΠ»ΡΡ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Β«Π·Π°ΠΏΡΡΠΈΡΡΒ» ΡΠ²ΠΎΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. Π ΡΠ²ΠΎΠ΅ΠΉ ΠΆΠ΅ ΡΠ°Π±ΠΎΡΠ΅, Ρ ΠΏΡΠΈΠ²ΡΠΊ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ Π΅ΠΉ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠ»ΡΡΠ°Π΅, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠΎ, ΡΡΠΎ Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ git ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΈΠ»ΠΈ ΠΊΠΎΠ³Π΄Π° Ρ ΠΎΡΠ΅Π»ΠΎΡΡ Π±Ρ Π²ΡΠΏΠΎΠΌΠ½ΠΈΡΡ ΠΈΠ»ΠΈ Π²ΡΡΡΠΈΡΡ Π½ΠΎΠ²ΡΠ΅ git-ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
Π‘Π΅ΠΉΡΠ°Ρ Π΅ΡΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ². ΠΠΎΠ³Π΄Π° Ρ Π½Π°ΡΠΈΠ½Π°Π» ΡΠ°Π±ΠΎΡΠ°ΡΡ, ΡΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ SourceTree, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠ΅Π½Ρ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΡΡΡΠ°ΠΈΠ²Π°Π». ΠΡΠ°Π²Π΄Π°, Ρ ΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ Π½Π° Windows, ΠΈ ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π° Π½Π° MacOS ΠΈΡΠΊΠ°Π», ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ.
Π ΠΊ ΡΠ²ΠΎΠ΅ΠΌΡ ΡΠ΄ΠΈΠ²Π»Π΅Π½ΠΈΡ Π½Π°ΡΠ΅Π» ΠΊΡΡΡΠ΅ΠΉΡΠΈΠΉ ΠΈ, ΠΊ ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, Π½Π΅ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Fork.
ΠΡΠΎ opensource ΠΏΡΠΎΠ΅ΠΊΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΈΡΠ΅Ρ ΡΠ΅ΠΌΡΡ ΡΠΎΡΡΠΈΠΉΡΠΊΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π² Β«ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡΒ», ΠΈ Π³Π΄Π΅ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ΅ ΠΏΠΎΠ΄ ΡΡΠΊΠΎΠΉ, ΠΈ ΠΎΡΠ»ΠΈΡΠ½ΠΎ ΠΏΡΠΎΠ΄ΡΠΌΠ°Π½ΠΎ.
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Windows, ΠΊΡΡΠ°ΡΠΈ, ΡΠΎΠΆΠ΅ Π΅ΡΡΡ. Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ ΡΠΎΠΆΠ΅ Π² ΠΏΠΎΠΈΡΠΊΠ΅ ΡΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΈΠ»ΠΈ Π·Π°Ρ ΠΎΡΠΈΡΠ΅ ΡΠΌΠ΅Π½ΠΈΡΡ ΡΠ²ΠΎΠΉ ΡΠ΅ΠΊΡΡΠΈΠΉ.
Π‘ΡΡΠ»ΠΊΠ° Π½Π° ΠΏΡΠΎΠ΅ΠΊΡ ΡΡΡ.
Π ΠΊΠ°ΠΊΠΈΠΌ git ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ ΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ΡΡ Π²Ρ?
#ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° #ΠΎΠΏΡΠΎΡ
ΠΠ½Π΅ ΠΊΠ°ΠΆΠ΅ΡΡΡ, ΡΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΏΠΎ ΡΠ°ΡΡΠΎΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ ΡΡΠ΅Π΄ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΏΠΎΡΠ»Π΅ IDE ΠΈ Π±ΡΠ°ΡΠ·Π΅ΡΠ°, ΡΠ²Π»ΡΠ΅ΡΡΡ Git ΠΊΠ»ΠΈΠ΅Π½Ρ.
Π₯ΠΎΡΡ Ρ ΡΠ²Π΅ΡΠ΅Π½, ΡΡΠΎ Π΅ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ²ΡΠΊΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΊΠΎΠ½ΡΠΎΠ»ΡΡ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Β«Π·Π°ΠΏΡΡΠΈΡΡΒ» ΡΠ²ΠΎΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. Π ΡΠ²ΠΎΠ΅ΠΉ ΠΆΠ΅ ΡΠ°Π±ΠΎΡΠ΅, Ρ ΠΏΡΠΈΠ²ΡΠΊ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ Π΅ΠΉ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠ»ΡΡΠ°Π΅, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠΎ, ΡΡΠΎ Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ git ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΈΠ»ΠΈ ΠΊΠΎΠ³Π΄Π° Ρ ΠΎΡΠ΅Π»ΠΎΡΡ Π±Ρ Π²ΡΠΏΠΎΠΌΠ½ΠΈΡΡ ΠΈΠ»ΠΈ Π²ΡΡΡΠΈΡΡ Π½ΠΎΠ²ΡΠ΅ git-ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
Π‘Π΅ΠΉΡΠ°Ρ Π΅ΡΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ². ΠΠΎΠ³Π΄Π° Ρ Π½Π°ΡΠΈΠ½Π°Π» ΡΠ°Π±ΠΎΡΠ°ΡΡ, ΡΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ SourceTree, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠ΅Π½Ρ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΡΡΡΠ°ΠΈΠ²Π°Π». ΠΡΠ°Π²Π΄Π°, Ρ ΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ Π½Π° Windows, ΠΈ ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π° Π½Π° MacOS ΠΈΡΠΊΠ°Π», ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ.
Π ΠΊ ΡΠ²ΠΎΠ΅ΠΌΡ ΡΠ΄ΠΈΠ²Π»Π΅Π½ΠΈΡ Π½Π°ΡΠ΅Π» ΠΊΡΡΡΠ΅ΠΉΡΠΈΠΉ ΠΈ, ΠΊ ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, Π½Π΅ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Fork.
ΠΡΠΎ opensource ΠΏΡΠΎΠ΅ΠΊΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΈΡΠ΅Ρ ΡΠ΅ΠΌΡΡ ΡΠΎΡΡΠΈΠΉΡΠΊΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π² Β«ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡΒ», ΠΈ Π³Π΄Π΅ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ΅ ΠΏΠΎΠ΄ ΡΡΠΊΠΎΠΉ, ΠΈ ΠΎΡΠ»ΠΈΡΠ½ΠΎ ΠΏΡΠΎΠ΄ΡΠΌΠ°Π½ΠΎ.
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Windows, ΠΊΡΡΠ°ΡΠΈ, ΡΠΎΠΆΠ΅ Π΅ΡΡΡ. Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ ΡΠΎΠΆΠ΅ Π² ΠΏΠΎΠΈΡΠΊΠ΅ ΡΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΈΠ»ΠΈ Π·Π°Ρ ΠΎΡΠΈΡΠ΅ ΡΠΌΠ΅Π½ΠΈΡΡ ΡΠ²ΠΎΠΉ ΡΠ΅ΠΊΡΡΠΈΠΉ.
Π‘ΡΡΠ»ΠΊΠ° Π½Π° ΠΏΡΠΎΠ΅ΠΊΡ ΡΡΡ.
Π ΠΊΠ°ΠΊΠΈΠΌ git ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ ΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ΡΡ Π²Ρ?
ββGoogle Developers Group (GDG)
#ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° #ΠΎΠΏΡΠΎΡ
ΠΠ° ΠΊΠ°Π½Π°Π»Π΅ Π²Ρ ΠΈΠ½ΠΎΠ³Π΄Π° Π²ΠΈΠ΄ΠΈΡΠ΅ ΡΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΠΉ Π΄Π»Ρ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΈ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ ΠΌΠΈΡΠ°ΠΏΠΎΠ².
ΠΠ½Π΅ ΠΊΠ°ΠΆΠ΅ΡΡΡ, ΡΡΠΎ ΡΠ΅Π³ΠΎΠ΄Π½Ρ β ΡΡΠΎ Ρ ΠΎΡΠΎΡΠΈΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π½ΠΎΠ²ΡΠ΅ Π·Π½Π°Π½ΠΈΡ ΠΈ ΡΠ°ΡΡΠΈΡΡΡΡ ΠΊΡΡΠ³ Π·Π½Π°ΠΊΠΎΠΌΡΡΠ² ΡΡΠ΅Π΄ΠΈ ΡΠ²ΠΎΠΈΡ ΠΊΠΎΠ»Π»Π΅Π³.
Π’Π°ΠΊΠΆΠ΅, Ρ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ Ρ ΠΌΠ½Π΅Π½ΠΈΠ΅ΠΌ, ΡΡΠΎ Π³Π»Π°Π²Π½Π°Ρ Β«ΡΠΈΡΠΊΠ°Β» ΠΈ ΠΏΠ»ΡΡ ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΠΉ β ΡΡΠΎ ΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Ρ Π»ΡΠ΄ΡΠΌΠΈ ΠΈ Π½Π΅ΡΠ²ΠΎΡΠΊΠΈΠ½Π³, Π° Π΄ΠΎΠΊΠ»Π°Π΄Ρ ΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ ΠΎΡ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΎΡΠΎΠ² β ΠΏΡΠΈΡΡΠ½ΡΠΉ Π±ΠΎΠ½ΡΡ. ΠΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎΡΡΠΎΠΌΡ, Ρ Π»ΡΠ±Π»Ρ ΠΏΠΎΡΠ΅ΡΠ°ΡΡ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π±ΠΎΠ»ΡΡΠ΅ ΠΌΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΠΉ.
ΠΠΎ Π΅ΡΠ»ΠΈ Π²Ρ ΠΆΠΈΠ²Π΅ΡΠ΅ Π² ΡΠ΅Π³ΠΈΠΎΠ½Π΅, ΡΠΎ Π΄Π»Ρ Π²Π°Ρ ΠΏΠΎΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΠΉ ΠΈ ΠΌΠΈΡΠ°ΠΏΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΊΡΡΠΏΠ½ΡΡ ΡΠΎΠ±ΡΡΠΈΠΉ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π² ΠΠΎΡΠΊΠ²Π΅ ΠΈΠ»ΠΈ Π‘Π°Π½ΠΊΡ-ΠΠ΅ΡΠ΅ΡΠ±ΡΡΠ³Π΅. ΠΡΠΎ ΡΠ΅ΡΠ°Π΅ΡΡΡ, Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠ΅Π΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Ρ ΡΡΠΈΠΌΠΈ Π³ΠΎΡΠΎΠ΄Π°ΠΌΠΈ, Π½ΠΎ Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΆΠ΅ΡΡΠ²ΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΈΠΌ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ ΠΈ Π΄Π΅Π½ΡΠ³Π°ΠΌΠΈ.
Π ΡΠ΅Π³ΠΎΠ΄Π½Ρ Ρ ΠΎΡΡ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ Π²Π°ΠΌ ΠΎ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π°Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ Π΅ΡΡΡ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ Π³ΠΎΡΠΎΠ΄Π°Ρ ΠΌΠΈΡΠ°, ΠΈ Π΅ΡΠ»ΠΈ Π΅Π³ΠΎ Π½Π΅Ρ, ΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΎΠ·Π³Π»Π°Π²ΠΈΡΡ Π΅Π³ΠΎ ΡΠ°ΠΌΠΈ, Π² Π²Π°ΡΠ΅ΠΌ Π³ΠΎΡΠΎΠ΄Π΅!
GDG (Google Developers Group) β Π½Π΅ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΎΠ΅ IT ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎ, Π² ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π»Π΅ΠΆΠ°Ρ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Google Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². Π‘Π΅Π³ΠΎΠ΄Π½Ρ ΡΠ°ΠΊΠΈΡ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ² ΠΎΠΊΠΎΠ»ΠΎ 1000 ΠΏΠΎ Π²ΡΠ΅ΠΌΡ ΠΌΠΈΡΡ, ΠΈ ΠΈΡ ΡΠΈΡΠ»ΠΎ ΡΠ°ΡΡΠ΅Ρ. ΠΠ°ΠΌ, ΠΊΠ°ΠΊ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΠΏΠΎΠ΄ Android, GDG-ΠΌΠΈΡΠ°ΠΏΡ ΠΎΡΠ΅Π½Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Ρ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π½Π° Π½ΠΈΡ ΡΠΈΡΠ°Π΅ΡΡΡ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π΄ΠΎΠΊΠ»Π°Π΄ΠΎΠ² ΠΏΡΠΎ Android ΠΈ Flutter. ΠΡ ΠΈ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ ΡΠ²ΠΎΠ΅Π³ΠΎ Π³ΠΎΡΠΎΠ΄Π° β ΡΡΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ Π±ΠΎΠ½ΡΡ. Π ΠΊΠ°ΠΊ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΠΏΠ»ΡΡ β ΠΌΠΈΡΠ°ΠΏΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡΡΡ β Π±Π΅ΡΠΏΠ»Π°ΡΠ½Ρ.
ΠΠ°ΡΡΠ°, Π³Π΄Π΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠΈΡΠΊΠ°ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΠ΅Π»ΡΡΡΠ²ΠΎ GDG Π² ΡΠ²ΠΎΠ΅ΠΌ Π³ΠΎΡΠΎΠ΄Π΅ ΡΡΡ, Π° Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΡΠ°ΡΡ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΎΡΠΎΠΌ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° Π² ΡΠ²ΠΎΠ΅ΠΌ Π³ΠΎΡΠΎΠ΄Π΅, ΡΠΎ Π²Π°ΠΌ ΡΡΠ΄Π°.
Π― ΡΠ°ΠΊΠΆΠ΅ ΡΡΠ°Π» ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΎΡΠΎΠΌ GDG ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° Π² ΡΠ²ΠΎΠ΅ΠΌ Π³ΠΎΡΠΎΠ΄Π΅, ΠΏΠΎΡΡΠΎΠΌΡ Π΅ΡΠ»ΠΈ Π²Ρ ΠΆΠΈΠ²Π΅ΡΠ΅ Π² ΠΡΡΠ½ΡΠΊΠ΅ ΠΈΠ»ΠΈ ΡΡΠ΄ΠΎΠΌ β ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΠΉΡΠ΅ΡΡ ΠΊ Π½Π°ΡΠ΅ΠΌΡ ΡΠ°ΡΡ ΠΈ Π³ΡΡΠΏΠΏΠ΅ Π² VK. ΠΠ΅ΡΠ²ΡΠΉ ΠΌΠΈΡΠ°ΠΏ ΡΠΆΠ΅ Π·Π°ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½!
Π Π²Ρ ΡΠ»ΡΡΠ°Π»ΠΈ ΡΠ°Π½ΡΡΠ΅ ΠΏΡΠΎ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎ GDG?
#ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° #ΠΎΠΏΡΠΎΡ
ΠΠ° ΠΊΠ°Π½Π°Π»Π΅ Π²Ρ ΠΈΠ½ΠΎΠ³Π΄Π° Π²ΠΈΠ΄ΠΈΡΠ΅ ΡΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΠΉ Π΄Π»Ρ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΈ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ ΠΌΠΈΡΠ°ΠΏΠΎΠ².
ΠΠ½Π΅ ΠΊΠ°ΠΆΠ΅ΡΡΡ, ΡΡΠΎ ΡΠ΅Π³ΠΎΠ΄Π½Ρ β ΡΡΠΎ Ρ ΠΎΡΠΎΡΠΈΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π½ΠΎΠ²ΡΠ΅ Π·Π½Π°Π½ΠΈΡ ΠΈ ΡΠ°ΡΡΠΈΡΡΡΡ ΠΊΡΡΠ³ Π·Π½Π°ΠΊΠΎΠΌΡΡΠ² ΡΡΠ΅Π΄ΠΈ ΡΠ²ΠΎΠΈΡ ΠΊΠΎΠ»Π»Π΅Π³.
Π’Π°ΠΊΠΆΠ΅, Ρ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ Ρ ΠΌΠ½Π΅Π½ΠΈΠ΅ΠΌ, ΡΡΠΎ Π³Π»Π°Π²Π½Π°Ρ Β«ΡΠΈΡΠΊΠ°Β» ΠΈ ΠΏΠ»ΡΡ ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΠΉ β ΡΡΠΎ ΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Ρ Π»ΡΠ΄ΡΠΌΠΈ ΠΈ Π½Π΅ΡΠ²ΠΎΡΠΊΠΈΠ½Π³, Π° Π΄ΠΎΠΊΠ»Π°Π΄Ρ ΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ ΠΎΡ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΎΡΠΎΠ² β ΠΏΡΠΈΡΡΠ½ΡΠΉ Π±ΠΎΠ½ΡΡ. ΠΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎΡΡΠΎΠΌΡ, Ρ Π»ΡΠ±Π»Ρ ΠΏΠΎΡΠ΅ΡΠ°ΡΡ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π±ΠΎΠ»ΡΡΠ΅ ΠΌΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΠΉ.
ΠΠΎ Π΅ΡΠ»ΠΈ Π²Ρ ΠΆΠΈΠ²Π΅ΡΠ΅ Π² ΡΠ΅Π³ΠΈΠΎΠ½Π΅, ΡΠΎ Π΄Π»Ρ Π²Π°Ρ ΠΏΠΎΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΠΉ ΠΈ ΠΌΠΈΡΠ°ΠΏΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΊΡΡΠΏΠ½ΡΡ ΡΠΎΠ±ΡΡΠΈΠΉ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π² ΠΠΎΡΠΊΠ²Π΅ ΠΈΠ»ΠΈ Π‘Π°Π½ΠΊΡ-ΠΠ΅ΡΠ΅ΡΠ±ΡΡΠ³Π΅. ΠΡΠΎ ΡΠ΅ΡΠ°Π΅ΡΡΡ, Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠ΅Π΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Ρ ΡΡΠΈΠΌΠΈ Π³ΠΎΡΠΎΠ΄Π°ΠΌΠΈ, Π½ΠΎ Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΆΠ΅ΡΡΠ²ΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΈΠΌ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ ΠΈ Π΄Π΅Π½ΡΠ³Π°ΠΌΠΈ.
Π ΡΠ΅Π³ΠΎΠ΄Π½Ρ Ρ ΠΎΡΡ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ Π²Π°ΠΌ ΠΎ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π°Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ Π΅ΡΡΡ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ Π³ΠΎΡΠΎΠ΄Π°Ρ ΠΌΠΈΡΠ°, ΠΈ Π΅ΡΠ»ΠΈ Π΅Π³ΠΎ Π½Π΅Ρ, ΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΎΠ·Π³Π»Π°Π²ΠΈΡΡ Π΅Π³ΠΎ ΡΠ°ΠΌΠΈ, Π² Π²Π°ΡΠ΅ΠΌ Π³ΠΎΡΠΎΠ΄Π΅!
GDG (Google Developers Group) β Π½Π΅ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΎΠ΅ IT ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎ, Π² ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π»Π΅ΠΆΠ°Ρ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Google Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². Π‘Π΅Π³ΠΎΠ΄Π½Ρ ΡΠ°ΠΊΠΈΡ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ² ΠΎΠΊΠΎΠ»ΠΎ 1000 ΠΏΠΎ Π²ΡΠ΅ΠΌΡ ΠΌΠΈΡΡ, ΠΈ ΠΈΡ ΡΠΈΡΠ»ΠΎ ΡΠ°ΡΡΠ΅Ρ. ΠΠ°ΠΌ, ΠΊΠ°ΠΊ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΠΏΠΎΠ΄ Android, GDG-ΠΌΠΈΡΠ°ΠΏΡ ΠΎΡΠ΅Π½Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Ρ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π½Π° Π½ΠΈΡ ΡΠΈΡΠ°Π΅ΡΡΡ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π΄ΠΎΠΊΠ»Π°Π΄ΠΎΠ² ΠΏΡΠΎ Android ΠΈ Flutter. ΠΡ ΠΈ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ ΡΠ²ΠΎΠ΅Π³ΠΎ Π³ΠΎΡΠΎΠ΄Π° β ΡΡΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ Π±ΠΎΠ½ΡΡ. Π ΠΊΠ°ΠΊ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΠΏΠ»ΡΡ β ΠΌΠΈΡΠ°ΠΏΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡΡΡ β Π±Π΅ΡΠΏΠ»Π°ΡΠ½Ρ.
ΠΠ°ΡΡΠ°, Π³Π΄Π΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠΈΡΠΊΠ°ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΠ΅Π»ΡΡΡΠ²ΠΎ GDG Π² ΡΠ²ΠΎΠ΅ΠΌ Π³ΠΎΡΠΎΠ΄Π΅ ΡΡΡ, Π° Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΡΠ°ΡΡ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΎΡΠΎΠΌ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° Π² ΡΠ²ΠΎΠ΅ΠΌ Π³ΠΎΡΠΎΠ΄Π΅, ΡΠΎ Π²Π°ΠΌ ΡΡΠ΄Π°.
Π― ΡΠ°ΠΊΠΆΠ΅ ΡΡΠ°Π» ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΎΡΠΎΠΌ GDG ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° Π² ΡΠ²ΠΎΠ΅ΠΌ Π³ΠΎΡΠΎΠ΄Π΅, ΠΏΠΎΡΡΠΎΠΌΡ Π΅ΡΠ»ΠΈ Π²Ρ ΠΆΠΈΠ²Π΅ΡΠ΅ Π² ΠΡΡΠ½ΡΠΊΠ΅ ΠΈΠ»ΠΈ ΡΡΠ΄ΠΎΠΌ β ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΠΉΡΠ΅ΡΡ ΠΊ Π½Π°ΡΠ΅ΠΌΡ ΡΠ°ΡΡ ΠΈ Π³ΡΡΠΏΠΏΠ΅ Π² VK. ΠΠ΅ΡΠ²ΡΠΉ ΠΌΠΈΡΠ°ΠΏ ΡΠΆΠ΅ Π·Π°ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½!
Π Π²Ρ ΡΠ»ΡΡΠ°Π»ΠΈ ΡΠ°Π½ΡΡΠ΅ ΠΏΡΠΎ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎ GDG?
ββAndroid Coroutine Recipes
#ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° #ΡΡΠ°ΡΡΠΈ #ΠΎΠΏΡΠΎΡ
Π£Π²Π΅ΡΠ΅Π½, ΡΡΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Kotlin Π² ΡΠ²ΠΎΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ . Π‘Π΅Π³ΠΎΠ΄Π½Ρ Π½Π΅Ρ Π²Π΅ΡΠΊΠΈΡ ΠΏΡΠΈΡΠΈΠ½ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΈΡΠ°ΡΡ Π½ΠΎΠ²ΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΡ Π½Π° Java. Π Ρ ΡΠ°Π΄, ΡΡΠΎ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΡΡΠΈΡΠ°Π΅Ρ ΡΠ°ΠΊ ΠΆΠ΅. ΠΠΎ ΠΏΡΠΎ ΡΠΏΠΎΡΠΎΠ± Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π°ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ β Π½Π΅Ρ ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΌΠ½Π΅Π½ΠΈΡ.
Coroutines ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ, Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ Π΄ΠΎ ΡΠΈΡ ΠΏΠΎΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ RxJava ΠΏΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ.
ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , ΠΈΠ·-Π·Π° Π»Π΅Π³Π°ΡΠΈ ΠΊΠΎΠ΄Π° Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅. ΠΠ΅Π΄Ρ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°Π»ΠΎΡΡ Ρ Java, ΠΈ ΡΡΠ΅Π΄ΡΡΠ²ΠΎ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π°ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅.
ΠΠΎ-Π²ΡΠΎΡΡΡ , ΡΡΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ° Π² Π±ΠΎΠ»ΡΡΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΠΈΠ»ΠΈ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ Π·Π½Π°Π½ΠΈΠΉ ΠΎ Π½Π΅ΠΌ.
Π Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠΏΠΎΠ»Π½ΠΈΡΡ Π²Π°ΡΠΈ Π·Π½Π°Π½ΠΈΡ ΠΎ coroutines, ΠΏΡΠ΅Π΄Π»Π°Π³Π°Ρ ΠΊ ΠΏΡΠΎΡΡΠ΅Π½ΠΈΡ Π΄Π²Π΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ ΡΡΠ°ΡΡΠΈ.
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ ΠΏΡΠΎ ΡΠΎ, ΠΊΠ°ΠΊ Π½Π°ΠΈΠ»ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ coroutines. ΠΡΠ°ΡΠΊΠΎ, Π΅ΠΌΠΊΠΎ ΠΈ Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ°ΠΌΠΈ ΠΊΠΎΠ΄Π°.
Π’ΡΡ ΠΎΠΏΠΈΡΠ°Π½Ρ ΡΠ°ΠΌΡΠ΅ ΡΠ°ΡΡΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ coroutines. ΠΠ΅Π½ΡΠΆΠ½ΡΠ΅ async/await, suspend ΡΠΎ ΡΠΊΡΡΡΡΠΌ dispatcher ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄ΡΡΠ³ΠΈΡ . ΠΡΠ΅ ΡΠ°ΠΊΠΆΠ΅ Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ°ΠΌΠΈ ΠΈ ΠΏΠΎ Π΄Π΅Π»Ρ.
Π ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Ρ Π²Π°Ρ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅?
#ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° #ΡΡΠ°ΡΡΠΈ #ΠΎΠΏΡΠΎΡ
Π£Π²Π΅ΡΠ΅Π½, ΡΡΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Kotlin Π² ΡΠ²ΠΎΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ . Π‘Π΅Π³ΠΎΠ΄Π½Ρ Π½Π΅Ρ Π²Π΅ΡΠΊΠΈΡ ΠΏΡΠΈΡΠΈΠ½ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΈΡΠ°ΡΡ Π½ΠΎΠ²ΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΡ Π½Π° Java. Π Ρ ΡΠ°Π΄, ΡΡΠΎ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΡΡΠΈΡΠ°Π΅Ρ ΡΠ°ΠΊ ΠΆΠ΅. ΠΠΎ ΠΏΡΠΎ ΡΠΏΠΎΡΠΎΠ± Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π°ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ β Π½Π΅Ρ ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΌΠ½Π΅Π½ΠΈΡ.
Coroutines ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ, Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ Π΄ΠΎ ΡΠΈΡ ΠΏΠΎΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ RxJava ΠΏΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ.
ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , ΠΈΠ·-Π·Π° Π»Π΅Π³Π°ΡΠΈ ΠΊΠΎΠ΄Π° Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅. ΠΠ΅Π΄Ρ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°Π»ΠΎΡΡ Ρ Java, ΠΈ ΡΡΠ΅Π΄ΡΡΠ²ΠΎ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π°ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅.
ΠΠΎ-Π²ΡΠΎΡΡΡ , ΡΡΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ° Π² Π±ΠΎΠ»ΡΡΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΠΈΠ»ΠΈ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ Π·Π½Π°Π½ΠΈΠΉ ΠΎ Π½Π΅ΠΌ.
Π Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠΏΠΎΠ»Π½ΠΈΡΡ Π²Π°ΡΠΈ Π·Π½Π°Π½ΠΈΡ ΠΎ coroutines, ΠΏΡΠ΅Π΄Π»Π°Π³Π°Ρ ΠΊ ΠΏΡΠΎΡΡΠ΅Π½ΠΈΡ Π΄Π²Π΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ ΡΡΠ°ΡΡΠΈ.
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ ΠΏΡΠΎ ΡΠΎ, ΠΊΠ°ΠΊ Π½Π°ΠΈΠ»ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ coroutines. ΠΡΠ°ΡΠΊΠΎ, Π΅ΠΌΠΊΠΎ ΠΈ Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ°ΠΌΠΈ ΠΊΠΎΠ΄Π°.
Π’ΡΡ ΠΎΠΏΠΈΡΠ°Π½Ρ ΡΠ°ΠΌΡΠ΅ ΡΠ°ΡΡΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ coroutines. ΠΠ΅Π½ΡΠΆΠ½ΡΠ΅ async/await, suspend ΡΠΎ ΡΠΊΡΡΡΡΠΌ dispatcher ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄ΡΡΠ³ΠΈΡ . ΠΡΠ΅ ΡΠ°ΠΊΠΆΠ΅ Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ°ΠΌΠΈ ΠΈ ΠΏΠΎ Π΄Π΅Π»Ρ.
Π ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Ρ Π²Π°Ρ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅?
ββΠΡΠ΅ ΠΏΡΠΎ Git ΠΊΠ»ΠΈΠ΅Π½ΡΡ
#ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° #ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ
Π ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· Π½Π΅Π΄Π°Π²Π½ΠΈΡ ΠΎΠΏΡΠΎΡΠΎΠ² ΠΏΡΠΎ Git ΠΊΠ»ΠΈΠ΅Π½ΡΡ, ΠΊ ΠΌΠΎΠ΅ΠΌΡ ΡΠ΄ΠΈΠ²Π»Π΅Π½ΠΈΡ, ΠΏΠΎΠ±Π΅Π΄ΠΈΠ»ΠΈ Π²Π°ΡΠΈΠ°Π½ΡΡ Β«ΠΊΠΎΠ½ΡΠΎΠ»ΡΒ» ΠΈ Β«Π΄ΡΡΠ³ΠΎΠ΅Β». ΠΡΠ»ΠΈ ΠΏΡΠΎ ΠΊΠΎΠ½ΡΠΎΠ»Ρ Π²ΡΠ΅ ΠΏΠΎΠ½ΡΡΠ½ΠΎ, ΡΠΎ Π½Π°ΡΡΠ΅Ρ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ Β«Π΄ΡΡΠ³ΠΎΠ΅Β» ΡΡΠ°Π»ΠΎ ΠΎΡΠ΅Π½Ρ Π»ΡΠ±ΠΎΠΏΡΡΠ½ΠΎ.
ΠΠΎΡΡΠΎΠΌΡ, Ρ ΠΎΡΡ ΡΠΏΡΠΎΡΠΈΡΡ ΠΊΠ°ΠΊΠΈΠΌΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌΠΈ Π²Ρ ΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ΡΡ?
#ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° #ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ
Π ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· Π½Π΅Π΄Π°Π²Π½ΠΈΡ ΠΎΠΏΡΠΎΡΠΎΠ² ΠΏΡΠΎ Git ΠΊΠ»ΠΈΠ΅Π½ΡΡ, ΠΊ ΠΌΠΎΠ΅ΠΌΡ ΡΠ΄ΠΈΠ²Π»Π΅Π½ΠΈΡ, ΠΏΠΎΠ±Π΅Π΄ΠΈΠ»ΠΈ Π²Π°ΡΠΈΠ°Π½ΡΡ Β«ΠΊΠΎΠ½ΡΠΎΠ»ΡΒ» ΠΈ Β«Π΄ΡΡΠ³ΠΎΠ΅Β». ΠΡΠ»ΠΈ ΠΏΡΠΎ ΠΊΠΎΠ½ΡΠΎΠ»Ρ Π²ΡΠ΅ ΠΏΠΎΠ½ΡΡΠ½ΠΎ, ΡΠΎ Π½Π°ΡΡΠ΅Ρ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ Β«Π΄ΡΡΠ³ΠΎΠ΅Β» ΡΡΠ°Π»ΠΎ ΠΎΡΠ΅Π½Ρ Π»ΡΠ±ΠΎΠΏΡΡΠ½ΠΎ.
ΠΠΎΡΡΠΎΠΌΡ, Ρ ΠΎΡΡ ΡΠΏΡΠΎΡΠΈΡΡ ΠΊΠ°ΠΊΠΈΠΌΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌΠΈ Π²Ρ ΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ΡΡ?
ββKotlin ΠΏΠΎΠ΄ ΠΊΠ°ΠΏΠΎΡΠΎΠΌ
#ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°
Kotlin Π΄Π°Π΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΠΎΠ³ΡΠΎΠΌΠ½ΡΠΉ Π½Π°Π±ΠΎΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², ΡΡΠ½ΠΊΡΠΈΠΉ ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ. ΠΠΎ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° Π½Π΅ Π²ΡΠ΅Π³Π΄Π° ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ, ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΏΠΎΠ΄ ΠΊΠ°ΠΏΠΎΡΠΎΠΌ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ.
ΠΠ°ΡΠ΅Π» ΠΊΡΡΡΠΎΠ΅ Π²ΠΈΠ΄Π΅ΠΎ ΠΎΡ Chet Haase ΠΈ Romain Guy, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π΄Π°Π΅Ρ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΡΠΊΡΠΊΡΡΡ Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠ»ΡΡΠΊΠΈ Kotlin Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ bytecode ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΏΡΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ when ΠΈΠ»ΠΈ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° lazy. ΠΡΠΎΠ±ΠΎ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»ΠΈΡΡ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΎΡΠ»ΠΈΡΠΈΠΉ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΠΈΠΊΠ»ΠΎΠ².
Π’Π°ΠΊΠΆΠ΅ Π² Π²ΠΈΠ΄Π΅ΠΎ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Android Studio, Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠΉ Ρ bytecode, ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ.
#ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°
Kotlin Π΄Π°Π΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΠΎΠ³ΡΠΎΠΌΠ½ΡΠΉ Π½Π°Π±ΠΎΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², ΡΡΠ½ΠΊΡΠΈΠΉ ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ. ΠΠΎ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° Π½Π΅ Π²ΡΠ΅Π³Π΄Π° ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ, ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΏΠΎΠ΄ ΠΊΠ°ΠΏΠΎΡΠΎΠΌ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ.
ΠΠ°ΡΠ΅Π» ΠΊΡΡΡΠΎΠ΅ Π²ΠΈΠ΄Π΅ΠΎ ΠΎΡ Chet Haase ΠΈ Romain Guy, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π΄Π°Π΅Ρ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΡΠΊΡΠΊΡΡΡ Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠ»ΡΡΠΊΠΈ Kotlin Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ bytecode ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΏΡΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ when ΠΈΠ»ΠΈ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° lazy. ΠΡΠΎΠ±ΠΎ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»ΠΈΡΡ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΎΡΠ»ΠΈΡΠΈΠΉ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΠΈΠΊΠ»ΠΎΠ².
Π’Π°ΠΊΠΆΠ΅ Π² Π²ΠΈΠ΄Π΅ΠΎ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Android Studio, Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠΉ Ρ bytecode, ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ.
ββΠΠ°ΠΊΠ°Π½ΡΠΈΡ Backend-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°
#Π²Π°ΠΊΠ°Π½ΡΠΈΠΈ
ΠΡΡΠ·ΡΡ, Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ Π²ΠΎΠΏΡΠΎΡ ΠΈ ΠΏΡΠΎΡΡΠ±Π°.
Π Π½Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΊΠΈΠ»ΠΎΠ²Π°Π½Π½ΡΠΉ Backend-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ. Π₯ΠΎΡΡ ΡΡΠΎ ΠΈ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π½Π΅ Π² ΠΏΡΠΎΡΠΈΠ»Ρ ΠΊΠ°Π½Π°Π»Π°, Π½ΠΎ Ρ ΡΠ²Π΅ΡΠ΅Π½, ΡΡΠΎ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΡΡΡΡΡ ΡΠ΅Π±ΡΡ Π² ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠΈ. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΊΡΠΎ-ΡΠΎ ΠΈΠ· Π½ΠΈΡ ΠΈΡΠ΅Ρ ΡΠ°Π±ΠΎΡΡ ΠΈΠ»ΠΈ ΠΆΠ΅Π»Π°Π΅Ρ ΡΠΌΠ΅Π½ΠΈΡΡ ΡΠ΅ΠΊΡΡΡΡ.
ΠΠ· ΠΏΠ»ΡΡΠ΅ΠΊ:
β’ ΡΠ΄Π°Π»Π΅Π½Π½Π°Ρ ΡΠ°Π±ΠΎΡΠ°;
β’ Π½ΠΎΠ²ΡΠΉ ΠΈ ΡΠ»ΠΎΠΆΠ½ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ (Π½ΡΠΆΠ½ΠΎ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ ΡΡΠ΅ΠΊ ΠΈ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ);
β’ ΡΠ²Π΅ΠΆΠ΅Π΅ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ;
β’ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π±Π΅Π»Π°Ρ Π·Π°ΡΠΏΠ»Π°ΡΠ°;
β’ ΠΎΠΏΠ»Π°ΡΠ° ΠΏΡΠΎΡΠΈΠ»ΡΠ½ΡΡ ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΠΉ ΠΈ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ;
β’ ΠΎΠΏΠ»Π°ΡΠ° Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠ³ΠΎ Π² SkyEng;
β’ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½Π°Ρ ΡΠ²ΡΠ·Ρ;
β’ Π½Ρ ΠΈ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, Π΄ΠΎΡΡΠΎΠΉΠ½Π°Ρ ΠΎΠΏΠ»Π°ΡΠ°.
Π‘ΡΡΠ»ΠΊΠ° Π½Π° ΡΠΎΡΠΌΡ, Π³Π΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎ ΡΠ΅Π±Π΅ ΡΡΡ, Π° Π΅ΡΠ»ΠΈ ΠΎΡΡΠ°Π»ΠΈΡΡ Π²ΠΎΠΏΡΠΎΡΡ, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΏΡΠΎΡΠΈΡΡ ΠΈΡ ΡΡΡ.
#Π²Π°ΠΊΠ°Π½ΡΠΈΠΈ
ΠΡΡΠ·ΡΡ, Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ Π²ΠΎΠΏΡΠΎΡ ΠΈ ΠΏΡΠΎΡΡΠ±Π°.
Π Π½Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΊΠΈΠ»ΠΎΠ²Π°Π½Π½ΡΠΉ Backend-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ. Π₯ΠΎΡΡ ΡΡΠΎ ΠΈ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π½Π΅ Π² ΠΏΡΠΎΡΠΈΠ»Ρ ΠΊΠ°Π½Π°Π»Π°, Π½ΠΎ Ρ ΡΠ²Π΅ΡΠ΅Π½, ΡΡΠΎ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΡΡΡΡΡ ΡΠ΅Π±ΡΡ Π² ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠΈ. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΊΡΠΎ-ΡΠΎ ΠΈΠ· Π½ΠΈΡ ΠΈΡΠ΅Ρ ΡΠ°Π±ΠΎΡΡ ΠΈΠ»ΠΈ ΠΆΠ΅Π»Π°Π΅Ρ ΡΠΌΠ΅Π½ΠΈΡΡ ΡΠ΅ΠΊΡΡΡΡ.
ΠΠ· ΠΏΠ»ΡΡΠ΅ΠΊ:
β’ ΡΠ΄Π°Π»Π΅Π½Π½Π°Ρ ΡΠ°Π±ΠΎΡΠ°;
β’ Π½ΠΎΠ²ΡΠΉ ΠΈ ΡΠ»ΠΎΠΆΠ½ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ (Π½ΡΠΆΠ½ΠΎ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ ΡΡΠ΅ΠΊ ΠΈ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ);
β’ ΡΠ²Π΅ΠΆΠ΅Π΅ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ;
β’ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π±Π΅Π»Π°Ρ Π·Π°ΡΠΏΠ»Π°ΡΠ°;
β’ ΠΎΠΏΠ»Π°ΡΠ° ΠΏΡΠΎΡΠΈΠ»ΡΠ½ΡΡ ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΠΉ ΠΈ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ;
β’ ΠΎΠΏΠ»Π°ΡΠ° Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠ³ΠΎ Π² SkyEng;
β’ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½Π°Ρ ΡΠ²ΡΠ·Ρ;
β’ Π½Ρ ΠΈ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, Π΄ΠΎΡΡΠΎΠΉΠ½Π°Ρ ΠΎΠΏΠ»Π°ΡΠ°.
Π‘ΡΡΠ»ΠΊΠ° Π½Π° ΡΠΎΡΠΌΡ, Π³Π΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎ ΡΠ΅Π±Π΅ ΡΡΡ, Π° Π΅ΡΠ»ΠΈ ΠΎΡΡΠ°Π»ΠΈΡΡ Π²ΠΎΠΏΡΠΎΡΡ, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΏΡΠΎΡΠΈΡΡ ΠΈΡ ΡΡΡ.
ββΠΠΎΠ²ΡΠΉ Π³ΠΎΠ΄! π
ΠΠ°Π·Π°Π»ΠΎΡΡ Π±Ρ, ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅Π΄Π°Π²Π½ΠΎ ΠΌΡ Ρ Π²Π°ΠΌΠΈ ΠΎΠ±ΡΡΠΆΠ΄Π°Π»ΠΈ Π½ΠΎΠ²ΠΎΡΡΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Google IO, Π° ΡΠΆΠ΅ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ°Π΅ΡΡΡ Π½ΠΎΠ²ΡΠΉ, 2020 Π³ΠΎΠ΄. ΠΠ° ΠΏΡΠΎΡΠ΅Π΄ΡΠΈΠΉ Π³ΠΎΠ΄ ΠΊΠ°Π½Π°Π» ΠΏΠΎΠ΄ΡΠΎΡ, ΠΈ Ρ Π±Π΅Π·ΡΠΌΠ½ΠΎ ΡΠ°Π΄, ΡΡΠΎ Π²Ρ ΡΠΈΡΠ°Π΅ΡΠ΅ Π΅Π³ΠΎ.
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π²Π°ΠΌ Π·Π° Π²Π°ΡΠΈ ΡΠ΅Π°ΠΊΡΠΈΠΈ, ΡΠΈΠ΄Π±Π΅ΠΊ ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΠ΅. ΠΡΠΎ Π½Π΅ΡΠ΅Π°Π»ΡΠ½ΠΎ ΠΌΠΎΡΠΈΠ²ΠΈΡΡΠ΅Ρ ΠΈ Π·Π°ΡΡΠΆΠ°Π΅Ρ ΡΠ½Π΅ΡΠ³ΠΈΠ΅ΠΉ ΠΏΠΈΡΠ°ΡΡ Π½ΠΎΠ²ΠΎΠ΅. ΠΡ ΡΠ°ΠΌΡΠ΅ ΠΊΡΡΡΡΠ΅!
Π Ρ ΠΎΡΡ Π·Π° ΠΎΠΊΠΎΠ½ΠΎΠΌ Π½Π΅ ΡΠΎΠ²ΡΠ΅ΠΌ Π½ΠΎΠ²ΠΎΠ³ΠΎΠ΄Π½ΡΡ ΠΏΠΎΠ³ΠΎΠ΄Π°, Π½ΠΎ Ρ ΠΎΡΡ, ΡΡΠΎΠ±Ρ Π½Π° ΡΡΠΈΡ ΠΏΡΠ°Π·Π΄Π½ΠΈΡΠ½ΡΡ ΠΊΠ°Π½ΠΈΠΊΡΠ»Π°Ρ Ρ Π²Π°Ρ Π±ΡΠ»ΠΎ ΡΠ°ΠΌΠΎΠ΅ ΡΡΠΎ Π½ΠΈ Π½Π° Π΅ΡΡΡ Π½ΠΎΠ²ΠΎΠ³ΠΎΠ΄Π½Π΅Π΅ Π½Π°ΡΡΡΠΎΠ΅Π½ΠΈΠ΅. ΠΡΠ΄ΡΡ Π°ΠΉΡΠ΅, Π½Π°Π±ΠΈΡΠ°ΠΉΡΠ΅ΡΡ ΡΠΈΠ», ΡΡΠΎΠ±Ρ Π½Π°ΡΠ°ΡΡ ΡΠ²ΠΎΠΉ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΉ Π³ΠΎΠ΄ Π·Π°ΡΡΠΆΠ΅Π½Π½ΡΠΌΠΈ ΡΠ΅ΡΠ°ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ ΠΈ Π»Π΅Π³ΠΊΠΎ ΡΠΈΠΊΡΠΈΡΡ canβt reproduce Π±Π°Π³ΠΈ! π₯
ΠΠ°Π·Π°Π»ΠΎΡΡ Π±Ρ, ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅Π΄Π°Π²Π½ΠΎ ΠΌΡ Ρ Π²Π°ΠΌΠΈ ΠΎΠ±ΡΡΠΆΠ΄Π°Π»ΠΈ Π½ΠΎΠ²ΠΎΡΡΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Google IO, Π° ΡΠΆΠ΅ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ°Π΅ΡΡΡ Π½ΠΎΠ²ΡΠΉ, 2020 Π³ΠΎΠ΄. ΠΠ° ΠΏΡΠΎΡΠ΅Π΄ΡΠΈΠΉ Π³ΠΎΠ΄ ΠΊΠ°Π½Π°Π» ΠΏΠΎΠ΄ΡΠΎΡ, ΠΈ Ρ Π±Π΅Π·ΡΠΌΠ½ΠΎ ΡΠ°Π΄, ΡΡΠΎ Π²Ρ ΡΠΈΡΠ°Π΅ΡΠ΅ Π΅Π³ΠΎ.
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π²Π°ΠΌ Π·Π° Π²Π°ΡΠΈ ΡΠ΅Π°ΠΊΡΠΈΠΈ, ΡΠΈΠ΄Π±Π΅ΠΊ ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΠ΅. ΠΡΠΎ Π½Π΅ΡΠ΅Π°Π»ΡΠ½ΠΎ ΠΌΠΎΡΠΈΠ²ΠΈΡΡΠ΅Ρ ΠΈ Π·Π°ΡΡΠΆΠ°Π΅Ρ ΡΠ½Π΅ΡΠ³ΠΈΠ΅ΠΉ ΠΏΠΈΡΠ°ΡΡ Π½ΠΎΠ²ΠΎΠ΅. ΠΡ ΡΠ°ΠΌΡΠ΅ ΠΊΡΡΡΡΠ΅!
Π Ρ ΠΎΡΡ Π·Π° ΠΎΠΊΠΎΠ½ΠΎΠΌ Π½Π΅ ΡΠΎΠ²ΡΠ΅ΠΌ Π½ΠΎΠ²ΠΎΠ³ΠΎΠ΄Π½ΡΡ ΠΏΠΎΠ³ΠΎΠ΄Π°, Π½ΠΎ Ρ ΠΎΡΡ, ΡΡΠΎΠ±Ρ Π½Π° ΡΡΠΈΡ ΠΏΡΠ°Π·Π΄Π½ΠΈΡΠ½ΡΡ ΠΊΠ°Π½ΠΈΠΊΡΠ»Π°Ρ Ρ Π²Π°Ρ Π±ΡΠ»ΠΎ ΡΠ°ΠΌΠΎΠ΅ ΡΡΠΎ Π½ΠΈ Π½Π° Π΅ΡΡΡ Π½ΠΎΠ²ΠΎΠ³ΠΎΠ΄Π½Π΅Π΅ Π½Π°ΡΡΡΠΎΠ΅Π½ΠΈΠ΅. ΠΡΠ΄ΡΡ Π°ΠΉΡΠ΅, Π½Π°Π±ΠΈΡΠ°ΠΉΡΠ΅ΡΡ ΡΠΈΠ», ΡΡΠΎΠ±Ρ Π½Π°ΡΠ°ΡΡ ΡΠ²ΠΎΠΉ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΉ Π³ΠΎΠ΄ Π·Π°ΡΡΠΆΠ΅Π½Π½ΡΠΌΠΈ ΡΠ΅ΡΠ°ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ ΠΈ Π»Π΅Π³ΠΊΠΎ ΡΠΈΠΊΡΠΈΡΡ canβt reproduce Π±Π°Π³ΠΈ! π₯
ββKotlin Multiplatform
#ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° #ΡΡΠ°ΡΡΠΈ #ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ #ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ
ΠΠ° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ KotlinConf Π±ΡΠ»ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠΊΠ»Π°Π΄ΠΎΠ² ΠΎ ΡΠ°Π±ΠΎΡΠ΅ Ρ Kotlin Multiplatform. Π Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· Π½ΠΈΡ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π»ΠΎΡΡ ΠΎ ΡΠ°Π·Π½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°Ρ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ IceRock, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΡ ΠΎΠΏΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Kotlin Multiplatform Π² ΠΏΡΠΎΠ΄Π°ΠΊΡΠ½.
Π Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Π°Π²ΡΠΎΡ Π²Π΄ΠΎΡ Π½ΠΎΠ²ΠΈΠ²ΡΠΈΡΡ Π΄ΠΎΠΊΠ»Π°Π΄ΠΎΠΌ, ΡΠ΅ΡΠΈΠ» ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ²ΠΎΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Kotlin Multiplatform. ΠΡΠ³Π»ΡΠ΄ΠΈΡ Π²Π΅ΡΡΠΌΠ° Π½Π΅ΠΏΠ»ΠΎΡ ΠΎ, Π²Π΅Π΄Ρ Π±ΠΎΠ»ΡΡΠ°Ρ ΡΠ°ΡΡΡ ΠΊΠΎΠ΄Π° ΠΏΠ΅ΡΠ΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π½Π° Π΄Π²ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°Ρ : ΡΠ°Π±ΠΎΡΠ° Ρ ΡΠ΅ΡΡΡ, ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΡΠ΅ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΈ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°.
ΠΡΠΎ ΠΏΡΠΎΠ±ΠΎΠ²Π°Π» Kotlin Multiplatform? Π‘ΡΠΎΠΈΡ Π»ΠΈ ΠΎΠ½Π° ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² Π±ΠΎΠ»ΡΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ ?
#ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° #ΡΡΠ°ΡΡΠΈ #ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ #ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ
ΠΠ° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ KotlinConf Π±ΡΠ»ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠΊΠ»Π°Π΄ΠΎΠ² ΠΎ ΡΠ°Π±ΠΎΡΠ΅ Ρ Kotlin Multiplatform. Π Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· Π½ΠΈΡ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π»ΠΎΡΡ ΠΎ ΡΠ°Π·Π½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°Ρ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ IceRock, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΡ ΠΎΠΏΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Kotlin Multiplatform Π² ΠΏΡΠΎΠ΄Π°ΠΊΡΠ½.
Π Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Π°Π²ΡΠΎΡ Π²Π΄ΠΎΡ Π½ΠΎΠ²ΠΈΠ²ΡΠΈΡΡ Π΄ΠΎΠΊΠ»Π°Π΄ΠΎΠΌ, ΡΠ΅ΡΠΈΠ» ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ²ΠΎΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Kotlin Multiplatform. ΠΡΠ³Π»ΡΠ΄ΠΈΡ Π²Π΅ΡΡΠΌΠ° Π½Π΅ΠΏΠ»ΠΎΡ ΠΎ, Π²Π΅Π΄Ρ Π±ΠΎΠ»ΡΡΠ°Ρ ΡΠ°ΡΡΡ ΠΊΠΎΠ΄Π° ΠΏΠ΅ΡΠ΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π½Π° Π΄Π²ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°Ρ : ΡΠ°Π±ΠΎΡΠ° Ρ ΡΠ΅ΡΡΡ, ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΡΠ΅ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΈ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°.
ΠΡΠΎ ΠΏΡΠΎΠ±ΠΎΠ²Π°Π» Kotlin Multiplatform? Π‘ΡΠΎΠΈΡ Π»ΠΈ ΠΎΠ½Π° ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² Π±ΠΎΠ»ΡΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ ?
ββComplex UI/Animations
#ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° #ΡΡΠ°ΡΡΠΈ
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ»ΠΎΠΆΠ½ΡΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΉ β ΡΡΠΎ Π½Π΅ ΡΠ°ΠΌΠΎΠ΅ ΠΏΡΠΎΡΡΠΎΠ΅ Π΄Π΅Π»ΠΎ.
Π‘ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ MotionLayout ΡΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΠΏΡΠΎΡΠ΅, Π½ΠΎ Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
ΠΠ΄Π½Π°ΠΊΠΎ, Π±Π΅Π· ΡΡΠΎΠ³ΠΎ Π½ΠΈΠΊΠ°ΠΊ. ΠΠ½ΠΈΠΌΠ°ΡΠΈΠΈ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ β ΡΡΠΎ ΠΏΠΎΡΠΎΠΉ ΡΠΎ, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΆΠΈΠ²ΡΠΌ ΠΈ Π²ΡΠ³ΠΎΠ΄Π½ΠΎ ΠΎΡΠ»ΠΈΡΠ°ΡΡΠΈΠΌ Π΅Π³ΠΎ ΠΎΡ Π΄ΡΡΠ³ΠΈΡ . ΠΠΎΠ½Π΅ΡΠ½ΠΎ, Π΄Π°ΠΆΠ΅ Π½Π΅ Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π±ΡΠ΄ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ, ΠΈ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΏΠ΅ΡΠ²ΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ΠΉ ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅. ΠΠΎ Π΅ΡΠ»ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ Ρ ΠΎΡΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ, ΡΠΎ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ β ΡΡΠΎ ΡΠΎ, ΡΡΠΎ Π΄Π°ΡΡ ΠΏΠΎΠ²ΡΡΠ΅Π½Π½ΡΡ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΠ΅Π½Π½ΠΎΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΈ, Π·Π°ΡΠ°ΡΡΡΡ, Π²ΡΠ·ΠΎΠ²Π΅Ρ Β«Π²Π°Ρ-ΡΡΡΠ΅ΠΊΡΒ».
ΠΠΎ ΠΊΠ°ΠΊ ΠΆΠ΅ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅, ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΡΠ΅ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ? ΠΠ΅Π΄Π°Π²Π½ΠΎ Π½Π°ΡΠ΅Π» ΡΡΠ°ΡΡΡ, Π³Π΄Π΅ Π°Π²ΡΠΎΡ Π΄Π΅Π»Π°Π΅Ρ Π°Π½ΠΈΠΌΠ°ΡΠΈΡ ΡΠΏΠΈΡΠΊΠ° Π² RecyclerView ΠΈ Π΅Π³ΠΎ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΡ. Π Π°Π·Π΄Π΅Π»ΠΈΠ² Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΡ ΡΠ°ΡΡΠ΅ΠΉ, Ρ Π½Π΅Π³ΠΎ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ ΠΎΡΠ»ΠΈΡΠ½ΠΎΠ΅ Π΄Π΅ΠΌΠΎ-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΈΠ΄Π΅ΠΈ ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΠΈ ΠΊ ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌΡ.
ΠΠ½Π΅ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»Π°ΡΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΡ ΡΠ°ΡΠΊΡΡΡΠΈΡ Π΄ΠΈΠ°Π»ΠΎΠ³Π° ΠΈΠ· FabButton.
Π‘ΡΡΠ»ΠΊΠ° Π½Π° ΡΡΠ°ΡΡΡ, Π³Π΄Π΅ Π°Π²ΡΠΎΡ ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π³ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ ΡΡΡ, Π° Π·Π΄Π΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°ΡΠ°ΡΡ Π΄Π΅ΠΌΠΎ-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
#ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° #ΡΡΠ°ΡΡΠΈ
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ»ΠΎΠΆΠ½ΡΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΉ β ΡΡΠΎ Π½Π΅ ΡΠ°ΠΌΠΎΠ΅ ΠΏΡΠΎΡΡΠΎΠ΅ Π΄Π΅Π»ΠΎ.
Π‘ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ MotionLayout ΡΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΠΏΡΠΎΡΠ΅, Π½ΠΎ Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
ΠΠ΄Π½Π°ΠΊΠΎ, Π±Π΅Π· ΡΡΠΎΠ³ΠΎ Π½ΠΈΠΊΠ°ΠΊ. ΠΠ½ΠΈΠΌΠ°ΡΠΈΠΈ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ β ΡΡΠΎ ΠΏΠΎΡΠΎΠΉ ΡΠΎ, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΆΠΈΠ²ΡΠΌ ΠΈ Π²ΡΠ³ΠΎΠ΄Π½ΠΎ ΠΎΡΠ»ΠΈΡΠ°ΡΡΠΈΠΌ Π΅Π³ΠΎ ΠΎΡ Π΄ΡΡΠ³ΠΈΡ . ΠΠΎΠ½Π΅ΡΠ½ΠΎ, Π΄Π°ΠΆΠ΅ Π½Π΅ Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π±ΡΠ΄ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ, ΠΈ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΏΠ΅ΡΠ²ΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ΠΉ ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅. ΠΠΎ Π΅ΡΠ»ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ Ρ ΠΎΡΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ, ΡΠΎ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ β ΡΡΠΎ ΡΠΎ, ΡΡΠΎ Π΄Π°ΡΡ ΠΏΠΎΠ²ΡΡΠ΅Π½Π½ΡΡ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΠ΅Π½Π½ΠΎΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΈ, Π·Π°ΡΠ°ΡΡΡΡ, Π²ΡΠ·ΠΎΠ²Π΅Ρ Β«Π²Π°Ρ-ΡΡΡΠ΅ΠΊΡΒ».
ΠΠΎ ΠΊΠ°ΠΊ ΠΆΠ΅ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅, ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΡΠ΅ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ? ΠΠ΅Π΄Π°Π²Π½ΠΎ Π½Π°ΡΠ΅Π» ΡΡΠ°ΡΡΡ, Π³Π΄Π΅ Π°Π²ΡΠΎΡ Π΄Π΅Π»Π°Π΅Ρ Π°Π½ΠΈΠΌΠ°ΡΠΈΡ ΡΠΏΠΈΡΠΊΠ° Π² RecyclerView ΠΈ Π΅Π³ΠΎ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΡ. Π Π°Π·Π΄Π΅Π»ΠΈΠ² Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΡ ΡΠ°ΡΡΠ΅ΠΉ, Ρ Π½Π΅Π³ΠΎ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ ΠΎΡΠ»ΠΈΡΠ½ΠΎΠ΅ Π΄Π΅ΠΌΠΎ-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΈΠ΄Π΅ΠΈ ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΠΈ ΠΊ ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌΡ.
ΠΠ½Π΅ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»Π°ΡΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΡ ΡΠ°ΡΠΊΡΡΡΠΈΡ Π΄ΠΈΠ°Π»ΠΎΠ³Π° ΠΈΠ· FabButton.
Π‘ΡΡΠ»ΠΊΠ° Π½Π° ΡΡΠ°ΡΡΡ, Π³Π΄Π΅ Π°Π²ΡΠΎΡ ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π³ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ ΡΡΡ, Π° Π·Π΄Π΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°ΡΠ°ΡΡ Π΄Π΅ΠΌΠΎ-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
ββKotlin Census 2019
ΠΠ°ΡΠ°Π»ΡΡ Π΅ΠΆΠ΅Π³ΠΎΠ΄Π½ΡΠΉ ΠΎΠΏΡΠΎΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΎ Kotlin. ΠΡΠ±ΠΎΠΏΡΡΠ½ΠΎ, ΡΡΠΎ ΠΊ ΠΎΠΏΡΠΎΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈΠ³Π»Π°ΡΠ°ΡΡΡΡ ΡΠ΅, ΠΊΡΠΎ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Kotlin Ρ ΡΠ΅Π»ΡΡ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΎΠΏΠΈΡΠ°ΡΡ, ΠΏΠΎΡΠ΅ΠΌΡ ΠΎΠ½ΠΈ ΡΡΠΎ Π½Π΅ Π΄Π΅Π»Π°ΡΡ.
ΠΠ° Π»ΡΡΡΠΈΠΉ ΡΠΈΠ΄Π±Π΅ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΡΠΈΠ·Ρ: ΠΎΠ΄Π½Ρ ΠΈΠ· ΡΡΡΠ±ΠΎΠ»ΠΎΠΊ Kotlin ΠΈΠ»ΠΈ Π±ΠΈΠ»Π΅Ρ Π½Π° KotlinConf.
Π‘ΡΡΠ»ΠΊΠ° Π½Π° ΠΎΠΏΡΠΎΡ ΡΡΡ.
ΠΠ°ΡΠ°Π»ΡΡ Π΅ΠΆΠ΅Π³ΠΎΠ΄Π½ΡΠΉ ΠΎΠΏΡΠΎΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΎ Kotlin. ΠΡΠ±ΠΎΠΏΡΡΠ½ΠΎ, ΡΡΠΎ ΠΊ ΠΎΠΏΡΠΎΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈΠ³Π»Π°ΡΠ°ΡΡΡΡ ΡΠ΅, ΠΊΡΠΎ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Kotlin Ρ ΡΠ΅Π»ΡΡ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΎΠΏΠΈΡΠ°ΡΡ, ΠΏΠΎΡΠ΅ΠΌΡ ΠΎΠ½ΠΈ ΡΡΠΎ Π½Π΅ Π΄Π΅Π»Π°ΡΡ.
ΠΠ° Π»ΡΡΡΠΈΠΉ ΡΠΈΠ΄Π±Π΅ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΡΠΈΠ·Ρ: ΠΎΠ΄Π½Ρ ΠΈΠ· ΡΡΡΠ±ΠΎΠ»ΠΎΠΊ Kotlin ΠΈΠ»ΠΈ Π±ΠΈΠ»Π΅Ρ Π½Π° KotlinConf.
Π‘ΡΡΠ»ΠΊΠ° Π½Π° ΠΎΠΏΡΠΎΡ ΡΡΡ.
ββΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Jetpack Compose
#ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° #ΡΡΠ°ΡΡΠΈ #flutter
Π ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΠΏΠΎΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π»ΠΈ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ ΠΈ ΡΠΎ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΠ½ΠΈ Π²Π°ΠΆΠ½Ρ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π‘Π΅Π³ΠΎΠ΄Π½Ρ Π½Π°ΡΠΊΠ½ΡΠ»ΡΡ Π½Π° Π΅ΡΡ ΠΎΠ΄Π½Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΡ ΡΡΠ°ΡΡΡ Ρ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ ΠΊΡΡΡΠΎΠΉ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ.
ΠΡΡΡ Π΄ΠΈΠ·Π°ΠΉΠ½ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Pokedex, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°ΡΠΈΡΠΎΠ²Π°Π½ ΡΡΡ. Π ΡΠΆΠ΅ Π΅ΡΡΡ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π° Flutter ΠΈ Π½Π° Kotlin.
ΠΠ²ΡΠΎΡ ΡΡΠ°ΡΡΠΈ Π²Π΄ΠΎΡ Π½ΠΎΠ²ΠΈΠ»ΡΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΡΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈΡΡ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π½Π° Flutter ΠΈ ΡΠ΅ΡΠΈΠ» Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ°ΠΊΠΎΠ΅ ΠΆΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Jetpack Compose. ΠΠΎΠΊΠ° ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π½Π΅ Π²ΠΏΠ΅ΡΠ°ΡΠ»ΡΠ΅Ρ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π°Π²ΡΠΎΡ ΡΠ΄Π΅Π»Π°Π» ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½Ρ Π°Π½ΠΈΠΌΠ°ΡΠΈΡ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΎΠ±Π΅ΡΠ°Π΅Ρ ΡΠΈΠΊΠ» ΡΡΠ°ΡΠ΅ΠΉ, Π³Π΄Π΅ Π±ΡΠ΄Π΅Ρ ΠΎΠΏΠΈΡΡΠ²Π°ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΉ. ΠΡΠ³Π»ΡΠ΄ΠΈΡ Π»ΡΠ±ΠΎΠΏΡΡΠ½ΠΎ.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ ΡΠΎ Π²ΡΠ΅ΠΌΠΈ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠ°ΠΌΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ ΠΈΠ· ΡΡΠΎΠ³ΠΎ Π²Π·ΡΡΡ ΡΠ΅Π±Π΅ Π½Π° Π²ΠΎΠΎΡΡΠΆΠ΅Π½ΠΈΠ΅, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΡΠ°Π²Π½ΠΈΡΡ Π² ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ ΡΠ°Π±ΠΎΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ ΡΠΎΠ³ΠΎ ΠΆΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΠΎΠ³ΠΎ ΡΠ°Π·Π½ΡΠΌΠΈ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ.
#ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° #ΡΡΠ°ΡΡΠΈ #flutter
Π ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΠΏΠΎΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π»ΠΈ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ ΠΈ ΡΠΎ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΠ½ΠΈ Π²Π°ΠΆΠ½Ρ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π‘Π΅Π³ΠΎΠ΄Π½Ρ Π½Π°ΡΠΊΠ½ΡΠ»ΡΡ Π½Π° Π΅ΡΡ ΠΎΠ΄Π½Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΡ ΡΡΠ°ΡΡΡ Ρ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ ΠΊΡΡΡΠΎΠΉ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ.
ΠΡΡΡ Π΄ΠΈΠ·Π°ΠΉΠ½ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Pokedex, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°ΡΠΈΡΠΎΠ²Π°Π½ ΡΡΡ. Π ΡΠΆΠ΅ Π΅ΡΡΡ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π° Flutter ΠΈ Π½Π° Kotlin.
ΠΠ²ΡΠΎΡ ΡΡΠ°ΡΡΠΈ Π²Π΄ΠΎΡ Π½ΠΎΠ²ΠΈΠ»ΡΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΡΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈΡΡ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π½Π° Flutter ΠΈ ΡΠ΅ΡΠΈΠ» Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ°ΠΊΠΎΠ΅ ΠΆΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Jetpack Compose. ΠΠΎΠΊΠ° ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π½Π΅ Π²ΠΏΠ΅ΡΠ°ΡΠ»ΡΠ΅Ρ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π°Π²ΡΠΎΡ ΡΠ΄Π΅Π»Π°Π» ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½Ρ Π°Π½ΠΈΠΌΠ°ΡΠΈΡ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΎΠ±Π΅ΡΠ°Π΅Ρ ΡΠΈΠΊΠ» ΡΡΠ°ΡΠ΅ΠΉ, Π³Π΄Π΅ Π±ΡΠ΄Π΅Ρ ΠΎΠΏΠΈΡΡΠ²Π°ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΉ. ΠΡΠ³Π»ΡΠ΄ΠΈΡ Π»ΡΠ±ΠΎΠΏΡΡΠ½ΠΎ.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ ΡΠΎ Π²ΡΠ΅ΠΌΠΈ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠ°ΠΌΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ ΠΈΠ· ΡΡΠΎΠ³ΠΎ Π²Π·ΡΡΡ ΡΠ΅Π±Π΅ Π½Π° Π²ΠΎΠΎΡΡΠΆΠ΅Π½ΠΈΠ΅, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΡΠ°Π²Π½ΠΈΡΡ Π² ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ ΡΠ°Π±ΠΎΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ ΡΠΎΠ³ΠΎ ΠΆΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΠΎΠ³ΠΎ ΡΠ°Π·Π½ΡΠΌΠΈ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ.
ββGoogle-Certified Android Engineer
#ΡΡΠ°ΡΡΠΈ
ΠΡΠΌΠ°Ρ, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΠ»ΡΡΠ°Π»ΠΈ ΠΎ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². ΠΠ° Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ°ΠΉΡΠ°Ρ , ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ ΠΏΠΎΠΈΡΠΊΠΎΠΌ ΡΠ°Π±ΠΎΡΡ Π΄Π°ΠΆΠ΅ Π΅ΡΡΡ ΡΠ΅Π»ΡΠΉ ΡΠ°Π·Π΄Π΅Π», ΠΊΡΠ΄Π° ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π²ΡΠ΅ ΡΠ²ΠΎΠΈ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΡ. Π‘Π΅Π³ΠΎΠ΄Π½Ρ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°ΡΡΠΊΠ°ΠΆΡ ΠΎ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ΅ Π΄Π»Ρ Android-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΎΡ Google.
Π ΡΡΠΎΠΌΡ ΠΌΠ΅Π½Ρ ΡΠΏΠΎΠ΄Π²ΠΈΠ³Π»Π° ΡΡΠ°ΡΡΡ, Π³Π΄Π΅ Π°Π²ΡΠΎΡ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊ Ρ Π½ΡΠ»Ρ, Π·Π° 1 Π³ΠΎΠ΄ ΠΎΠ½ ΡΠΌΠΎΠ³ ΠΏΡΠΎΠΊΠ°ΡΠ°ΡΡΡΡ ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΡΠΎΡ Π·Π°Π²Π΅ΡΠ½ΡΠΉ Π±Π΅ΠΉΠ΄ΠΆ.
ΠΡΠ³Π»ΡΠ΄ΠΈΡ ΠΌΠΎΡΠΈΠ²ΠΈΡΡΡΡΠ΅, Π²Π΅Π΄Ρ ΠΏΠΎ Π΅Π³ΠΎ ΡΠ»ΠΎΠ²Π°ΠΌ ΠΎΠ½ ΡΡΠ°ΡΠΈΠ» Π½Π° ΠΈΠ·ΡΡΠ΅Π½ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»ΠΎΠ² 6 ΡΠ°ΡΠΎΠ² Π² Π΄Π΅Π½Ρ. ΠΡΠ΅Π΄ΡΡΠ°Π²ΡΡΠ΅, ΠΊΠ°ΠΊΠΎΠΉ Π±ΡΠ» Π±Ρ Π²Π°Ρ ΡΡΠΎΠ²Π΅Π½Ρ Π² ΡΡΠΌ ΡΠ³ΠΎΠ΄Π½ΠΎ, Π΅ΡΠ»ΠΈ Π±Ρ Π²Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠ°ΡΠΈΠ»ΠΈ Π½Π° ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ 6 ΡΠ°ΡΠΎΠ² Π² Π΄Π΅Π½Ρ?
ΠΠΎ Π²Π΅ΡΠ½ΡΠΌΡΡ ΠΊ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΡ. Π‘Π°ΠΌ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ β ΡΡΠΎ Π½Π΅ Π³Π°ΡΠ°Π½ΡΠΈΡ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ ΠΈΠ»ΠΈ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π²Π°ΡΠ΅Π³ΠΎ ΡΡΠΎΠ²Π½Ρ ΠΊΠ°ΠΊ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°. ΠΡΠ΅Π½Ρ ΡΠΊΠΈΠ»ΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ ΠΏΠΈΡΠ°ΡΡ ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ ΠΊΠΎΠ΄ ΠΈ Π±Π΅Π· Π²ΡΡΠΊΠΈΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΎΠ² Π½Π° Ρ ΠΎΡΠΎΡΠΎ ΠΎΠΏΠ»Π°ΡΠΈΠ²Π°Π΅ΠΌΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅. ΠΠ΄Π½Π°ΠΊΠΎ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Ρ ΠΎΡΠΎΡΠΈΠΌ ΠΏΠΎΠ²ΠΎΠ΄ΠΎΠΌ Π΄Π»Ρ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ Π·Π½Π°Π½ΠΈΠΉ ΠΏΠΎ Android-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅.
ΠΡΠ°Π²Π΄Π°, ΡΡΠΎ ΠΌΠΎΡΠΈΠ²Π°ΡΠΈΡ ΡΡΠΎΠΈΡ Π½Π΅Π΄Π΅ΡΠ΅Π²ΠΎ: ΠΏΠΎΠΏΡΡΠΊΠ° ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΡΠΎΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ ΡΡΠΎΠΈΡ $149. ΠΡΠΌΠ°Ρ, ΡΡΠΎ ΡΡΠΎ Π³Π»Π°Π²Π½Π°Ρ ΠΏΡΠΈΡΠΈΠ½Π°, ΠΏΠΎΡΠ΅ΠΌΡ ΡΠ°ΠΊΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π² Π ΠΎΡΡΠΈΠΈ Π½Π΅ ΡΡΠΎΠ»Ρ ΠΌΠ½ΠΎΠ³ΠΎ.
Π‘ΡΠ°ΡΡΡ Π½Π° Π₯Π°Π±ΡΠ΅, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΎ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠΈ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ° ΡΡΡ.
#ΡΡΠ°ΡΡΠΈ
ΠΡΠΌΠ°Ρ, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΠ»ΡΡΠ°Π»ΠΈ ΠΎ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². ΠΠ° Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ°ΠΉΡΠ°Ρ , ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ ΠΏΠΎΠΈΡΠΊΠΎΠΌ ΡΠ°Π±ΠΎΡΡ Π΄Π°ΠΆΠ΅ Π΅ΡΡΡ ΡΠ΅Π»ΡΠΉ ΡΠ°Π·Π΄Π΅Π», ΠΊΡΠ΄Π° ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π²ΡΠ΅ ΡΠ²ΠΎΠΈ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΡ. Π‘Π΅Π³ΠΎΠ΄Π½Ρ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°ΡΡΠΊΠ°ΠΆΡ ΠΎ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ΅ Π΄Π»Ρ Android-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΎΡ Google.
Π ΡΡΠΎΠΌΡ ΠΌΠ΅Π½Ρ ΡΠΏΠΎΠ΄Π²ΠΈΠ³Π»Π° ΡΡΠ°ΡΡΡ, Π³Π΄Π΅ Π°Π²ΡΠΎΡ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊ Ρ Π½ΡΠ»Ρ, Π·Π° 1 Π³ΠΎΠ΄ ΠΎΠ½ ΡΠΌΠΎΠ³ ΠΏΡΠΎΠΊΠ°ΡΠ°ΡΡΡΡ ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΡΠΎΡ Π·Π°Π²Π΅ΡΠ½ΡΠΉ Π±Π΅ΠΉΠ΄ΠΆ.
ΠΡΠ³Π»ΡΠ΄ΠΈΡ ΠΌΠΎΡΠΈΠ²ΠΈΡΡΡΡΠ΅, Π²Π΅Π΄Ρ ΠΏΠΎ Π΅Π³ΠΎ ΡΠ»ΠΎΠ²Π°ΠΌ ΠΎΠ½ ΡΡΠ°ΡΠΈΠ» Π½Π° ΠΈΠ·ΡΡΠ΅Π½ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»ΠΎΠ² 6 ΡΠ°ΡΠΎΠ² Π² Π΄Π΅Π½Ρ. ΠΡΠ΅Π΄ΡΡΠ°Π²ΡΡΠ΅, ΠΊΠ°ΠΊΠΎΠΉ Π±ΡΠ» Π±Ρ Π²Π°Ρ ΡΡΠΎΠ²Π΅Π½Ρ Π² ΡΡΠΌ ΡΠ³ΠΎΠ΄Π½ΠΎ, Π΅ΡΠ»ΠΈ Π±Ρ Π²Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠ°ΡΠΈΠ»ΠΈ Π½Π° ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ 6 ΡΠ°ΡΠΎΠ² Π² Π΄Π΅Π½Ρ?
ΠΠΎ Π²Π΅ΡΠ½ΡΠΌΡΡ ΠΊ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΡ. Π‘Π°ΠΌ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ β ΡΡΠΎ Π½Π΅ Π³Π°ΡΠ°Π½ΡΠΈΡ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ ΠΈΠ»ΠΈ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π²Π°ΡΠ΅Π³ΠΎ ΡΡΠΎΠ²Π½Ρ ΠΊΠ°ΠΊ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°. ΠΡΠ΅Π½Ρ ΡΠΊΠΈΠ»ΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ ΠΏΠΈΡΠ°ΡΡ ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ ΠΊΠΎΠ΄ ΠΈ Π±Π΅Π· Π²ΡΡΠΊΠΈΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΎΠ² Π½Π° Ρ ΠΎΡΠΎΡΠΎ ΠΎΠΏΠ»Π°ΡΠΈΠ²Π°Π΅ΠΌΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅. ΠΠ΄Π½Π°ΠΊΠΎ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Ρ ΠΎΡΠΎΡΠΈΠΌ ΠΏΠΎΠ²ΠΎΠ΄ΠΎΠΌ Π΄Π»Ρ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ Π·Π½Π°Π½ΠΈΠΉ ΠΏΠΎ Android-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅.
ΠΡΠ°Π²Π΄Π°, ΡΡΠΎ ΠΌΠΎΡΠΈΠ²Π°ΡΠΈΡ ΡΡΠΎΠΈΡ Π½Π΅Π΄Π΅ΡΠ΅Π²ΠΎ: ΠΏΠΎΠΏΡΡΠΊΠ° ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΡΠΎΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ ΡΡΠΎΠΈΡ $149. ΠΡΠΌΠ°Ρ, ΡΡΠΎ ΡΡΠΎ Π³Π»Π°Π²Π½Π°Ρ ΠΏΡΠΈΡΠΈΠ½Π°, ΠΏΠΎΡΠ΅ΠΌΡ ΡΠ°ΠΊΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π² Π ΠΎΡΡΠΈΠΈ Π½Π΅ ΡΡΠΎΠ»Ρ ΠΌΠ½ΠΎΠ³ΠΎ.
Π‘ΡΠ°ΡΡΡ Π½Π° Π₯Π°Π±ΡΠ΅, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΎ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠΈ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ° ΡΡΡ.
ββLiveData & Flow Π² MVVM
#ΡΡΠ°ΡΡΠΈ #ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° #ΠΎΠΏΡΠΎΡ
ΠΡΠ»ΠΈ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ MVVM Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ, ΡΠΎ ΠΎΠ±ΡΡΠ½ΠΎ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΠ»ΠΎΠΉ Π΄Π°Π½Π½ΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ), ViewModel ΠΈ View (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Fragment).
ΠΡΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΌ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π΅, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ LiveData: ΡΡΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Π² suspend-ΡΡΠ½ΠΊΡΠΈΡΡ . ΠΠ½ ΡΡΠΈΡΡΠ²Π°Π΅Ρ ΠΆΠΈΠ·Π½Π΅Π½Π½ΡΠΉ ΡΠΈΠΊΠ» Π΄ΡΡΠ³ΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (Fragment, Activity, Service). Π ΠΎΠ±ΡΠ΅ΠΌ, Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠ΄ΠΎΠ±Π½Π°Ρ ΡΡΡΠΊΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΠ·Π±Π°Π²Π»ΡΠ΅Ρ ΠΎΡ Π³ΠΎΠ»ΠΎΠ²Π½ΠΎΠΉ Π±ΠΎΠ»ΠΈ.
ΠΠ΄Π½Π°ΠΊΠΎ, ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π·Π°Π±ΡΠ²Π°ΡΡ ΠΎ ΡΠ°ΠΊΠΎΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ΅ ΠΊΠ°ΠΊ Flow, ΠΊΠΎΡΠΎΡΡΠΉ Π΅ΡΡ Π»ΡΡΡΠ΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π² ΡΠΈΡΡΠ°ΡΠΈΡΡ , ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅ Π½ΡΠΆΠ½ΠΎ Ρ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ½ΠΎΡΡΡΡ.
ΠΠ΅Π΄Ρ ΠΏΠΎ ΡΡΡΠΈ, Flow β ΡΠ΅Π°ΠΊΡΠΈΠ²Π½ΡΠΉ ΠΏΠΎΡΠΎΠΊ Π΄Π°Π½Π½ΡΡ Π² coroutine, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΈΠ· suspend ΡΡΠ½ΠΊΡΠΈΠΈ. Π’Π°ΠΊΠΆΠ΅ ΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΡΡΠ°Π½ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΡΠΈΠΏΠ°ΠΌΠΈ.
ΠΡΡΡΠ°Ρ ΡΡΠ°ΡΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Flow Π² ΡΠ²ΠΎΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ ΡΡΡ, Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΡΠΎΡΠ°Ρ ΡΠ°ΡΡΡ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡ, ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π² ΡΡΠ°ΡΡΡΡ , ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ MVVM.
ΠΡΠ΅Π½Ρ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»ΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Ρ Flow, Π΄ΡΠΌΠ°Ρ ΠΎ ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ ΠΈ Π² ΡΠ²ΠΎΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ .
Π ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π»ΠΈ Π²Ρ LiveData + MVVM Π² ΡΠ²ΠΎΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ ?
#ΡΡΠ°ΡΡΠΈ #ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° #ΠΎΠΏΡΠΎΡ
ΠΡΠ»ΠΈ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ MVVM Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ, ΡΠΎ ΠΎΠ±ΡΡΠ½ΠΎ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΠ»ΠΎΠΉ Π΄Π°Π½Π½ΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ), ViewModel ΠΈ View (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Fragment).
ΠΡΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΌ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π΅, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ LiveData: ΡΡΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Π² suspend-ΡΡΠ½ΠΊΡΠΈΡΡ . ΠΠ½ ΡΡΠΈΡΡΠ²Π°Π΅Ρ ΠΆΠΈΠ·Π½Π΅Π½Π½ΡΠΉ ΡΠΈΠΊΠ» Π΄ΡΡΠ³ΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (Fragment, Activity, Service). Π ΠΎΠ±ΡΠ΅ΠΌ, Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠ΄ΠΎΠ±Π½Π°Ρ ΡΡΡΠΊΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΠ·Π±Π°Π²Π»ΡΠ΅Ρ ΠΎΡ Π³ΠΎΠ»ΠΎΠ²Π½ΠΎΠΉ Π±ΠΎΠ»ΠΈ.
ΠΠ΄Π½Π°ΠΊΠΎ, ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π·Π°Π±ΡΠ²Π°ΡΡ ΠΎ ΡΠ°ΠΊΠΎΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ΅ ΠΊΠ°ΠΊ Flow, ΠΊΠΎΡΠΎΡΡΠΉ Π΅ΡΡ Π»ΡΡΡΠ΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π² ΡΠΈΡΡΠ°ΡΠΈΡΡ , ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅ Π½ΡΠΆΠ½ΠΎ Ρ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ½ΠΎΡΡΡΡ.
ΠΠ΅Π΄Ρ ΠΏΠΎ ΡΡΡΠΈ, Flow β ΡΠ΅Π°ΠΊΡΠΈΠ²Π½ΡΠΉ ΠΏΠΎΡΠΎΠΊ Π΄Π°Π½Π½ΡΡ Π² coroutine, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΈΠ· suspend ΡΡΠ½ΠΊΡΠΈΠΈ. Π’Π°ΠΊΠΆΠ΅ ΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΡΡΠ°Π½ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΡΠΈΠΏΠ°ΠΌΠΈ.
ΠΡΡΡΠ°Ρ ΡΡΠ°ΡΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Flow Π² ΡΠ²ΠΎΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ ΡΡΡ, Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΡΠΎΡΠ°Ρ ΡΠ°ΡΡΡ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡ, ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π² ΡΡΠ°ΡΡΡΡ , ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ MVVM.
ΠΡΠ΅Π½Ρ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»ΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Ρ Flow, Π΄ΡΠΌΠ°Ρ ΠΎ ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ ΠΈ Π² ΡΠ²ΠΎΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ .
Π ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π»ΠΈ Π²Ρ LiveData + MVVM Π² ΡΠ²ΠΎΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ ?
ββΠΡΡΠ°ΡΠΈ, ΡΠ΅Π³ΠΎΠ΄Π½Ρ ΠΈ Π·Π°Π²ΡΡΠ° Ρ ΡΡΠ°ΡΡΠ²ΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΠΈ TeamLead Conf 2020.
ΠΠΎΡΡΠΎΠΌΡ, Π΅ΡΠ»ΠΈ Π²Π°ΠΌ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ ΡΠ·Π½Π°ΡΡ, ΠΊΡΠΎ ΠΏΠΈΡΠ΅Ρ Π²ΡΠ΅ ΡΡΠΈ ΠΏΠΎΡΡΡ, ΡΠΎ ΠΏΠΈΡΠΈΡΠ΅ Π±ΠΎΡΡ, ΡΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈΡΡ ΠΈ ΠΏΠΎΠΎΠ±ΡΠ°ΡΡΡΡ.
ΠΠΎΡΡΠΎΠΌΡ, Π΅ΡΠ»ΠΈ Π²Π°ΠΌ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ ΡΠ·Π½Π°ΡΡ, ΠΊΡΠΎ ΠΏΠΈΡΠ΅Ρ Π²ΡΠ΅ ΡΡΠΈ ΠΏΠΎΡΡΡ, ΡΠΎ ΠΏΠΈΡΠΈΡΠ΅ Π±ΠΎΡΡ, ΡΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈΡΡ ΠΈ ΠΏΠΎΠΎΠ±ΡΠ°ΡΡΡΡ.
ββΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ViewStub Π² Fragment
#ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° #ΡΡΠ°ΡΡΠΈ #ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ
ΠΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π°ΠΌ ΡΠ°ΡΡΠΎ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΎΠ³ΡΠΎΠΌΠ½ΡΠ΅ View. Π Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΈΠ·Π±Π΅Π³Π°ΡΡ Π±ΠΎΠ»ΡΡΠΎΠΉ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡΠΈ ΠΏΡΠΈ ΠΈΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ, Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠΈΡΡΠ°ΡΠΈΡ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΉ ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΡΠΊΡΠ°Π½ΠΎΠ², ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π½Π° ΡΠ»Π°Π±ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ .
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π²Π°ΡΠ° ΠΏΠ΅ΡΠ²Π°Ρ ΡΡΡΠ°Π½ΠΈΡΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ViewPager, ΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΎΠ², ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΡΠΎΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈ Ρ ΡΠ°Π½ΠΈΡΡ Π² ΠΏΠ°ΠΌΡΡΠΈ.
ΠΠΎ Π΄Π°ΠΆΠ΅ ΡΡΠΎ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠ±ΡΠ°ΡΡ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ.
ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠ±ΡΠ°ΡΡ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ Π΅ΡΡ Π±ΠΎΠ»ΡΡΠ΅, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΊΠ°ΠΊ ViewStub. ΠΡΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ View Π½Π΅ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ Fragment, Π° ΠΏΠΎΠ·ΠΆΠ΅, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΡ.
ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΠΈ ΠΊΠ°ΠΊ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ Π΅Π³ΠΎ Π² ΡΠ²ΠΎΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ , ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π»ΠΈ Π²Ρ ViewStub Π² ΡΠ²ΠΎΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ ? Π ΠΊΠ°ΠΊ Π΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΡΠΊΠΎΡΠΎΡΡΡ ΠΎΡΠΊΡΡΡΠΈΡ ΡΠΊΡΠ°Π½ΠΎΠ²?
#ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° #ΡΡΠ°ΡΡΠΈ #ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ
ΠΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π°ΠΌ ΡΠ°ΡΡΠΎ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΎΠ³ΡΠΎΠΌΠ½ΡΠ΅ View. Π Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΈΠ·Π±Π΅Π³Π°ΡΡ Π±ΠΎΠ»ΡΡΠΎΠΉ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡΠΈ ΠΏΡΠΈ ΠΈΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ, Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠΈΡΡΠ°ΡΠΈΡ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΉ ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΡΠΊΡΠ°Π½ΠΎΠ², ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π½Π° ΡΠ»Π°Π±ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ .
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π²Π°ΡΠ° ΠΏΠ΅ΡΠ²Π°Ρ ΡΡΡΠ°Π½ΠΈΡΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ViewPager, ΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΎΠ², ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΡΠΎΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈ Ρ ΡΠ°Π½ΠΈΡΡ Π² ΠΏΠ°ΠΌΡΡΠΈ.
ΠΠΎ Π΄Π°ΠΆΠ΅ ΡΡΠΎ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠ±ΡΠ°ΡΡ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ.
ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠ±ΡΠ°ΡΡ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ Π΅ΡΡ Π±ΠΎΠ»ΡΡΠ΅, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΊΠ°ΠΊ ViewStub. ΠΡΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ View Π½Π΅ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ Fragment, Π° ΠΏΠΎΠ·ΠΆΠ΅, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΡ.
ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΠΈ ΠΊΠ°ΠΊ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ Π΅Π³ΠΎ Π² ΡΠ²ΠΎΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ , ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π»ΠΈ Π²Ρ ViewStub Π² ΡΠ²ΠΎΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ ? Π ΠΊΠ°ΠΊ Π΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΡΠΊΠΎΡΠΎΡΡΡ ΠΎΡΠΊΡΡΡΠΈΡ ΡΠΊΡΠ°Π½ΠΎΠ²?
ββKaspresso 1.1.0
#ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° #Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°
ΠΠ° ΠΊΠ°Π½Π°Π»Π΅ ΡΠΆΠ΅ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π» ΠΏΡΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Kaspresso, ΠΊΠΎΡΠΎΡΠ°Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ»ΡΡΡΠ°Π΅Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ UI-ΡΠ΅ΡΡΠΎΠ².
Π Π°Π΄ΡΠ΅Ρ, ΡΡΠΎ ΡΠ΅Π±ΡΡΠ° Π½Π΅ ΡΡΠΎΡΡ Π½Π° ΠΌΠ΅ΡΡΠ΅ ΠΈ Π²ΡΡΠ»Π° Π²Π΅ΡΡΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ 1.1.0, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΈΠ²Π½Π΅ΡΠ»Π° ΠΌΠ½ΠΎΠ³ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ.
ΠΠ»Π°Π²Π½ΡΠΌ Π½ΠΎΠ²ΠΎΠ²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ»ΡΡΡΠ΅Π½Π½ΡΠΉ UI Automator, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠ΅ΠΏΠ΅ΡΡ Kautomator. ΠΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Π½Π΅Π³ΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠ΅ΡΡΠΎΠ² ΡΡΠ°Π»ΠΎ Π΅ΡΡ Π±ΡΡΡΡΠ΅Π΅ ΠΈ ΡΠ΄ΠΎΠ±Π½Π΅Π΅. Π ΠΎΠΏΠΈΡΠ°Π½ΠΈΠΈ ΡΠ΅Π»ΠΈΠ·Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ ΡΠΊΠΎΡΠΎΡΡΠΈ ΡΠ°Π±ΠΎΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ UI Automator ΠΈ Kautomator. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΠΏΠ΅ΡΠ°ΡΠ»ΡΠ΅Ρ.
ΠΡΠΎΠΌΠ΅ ΡΡΠΎΠ³ΠΎ:
β’ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ;
β’ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π»ΠΎΠ³ΠΎΠ², ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ±Π»ΡΡΡΠΈ GDPR, Π΅ΡΠ»ΠΈ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² ΠΠ²ΡΠΎΠΏΠ΅;
β’ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Π² BaseTestCase ΠΈ BaseTestContext;
β’ Π½ΠΎΠ²ΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΈ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ.
Π ΠΎΠ±ΡΠ΅ΠΌ, Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ UI-ΡΠ΅ΡΡΠΎΠ² ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Ρ ΠΊΠ°ΠΆΠ΄ΡΠΌ ΡΠ°Π·ΠΎΠΌ Π²ΡΡ ΡΠ΄ΠΎΠ±Π½Π΅Π΅ ΠΈ ΡΠ΄ΠΎΠ±Π½Π΅Π΅. Π£Π΄Π°ΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΡΠ°ΠΊΠΎΠΉ ΠΊΡΡΡΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ!
#ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° #Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°
ΠΠ° ΠΊΠ°Π½Π°Π»Π΅ ΡΠΆΠ΅ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π» ΠΏΡΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Kaspresso, ΠΊΠΎΡΠΎΡΠ°Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ»ΡΡΡΠ°Π΅Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ UI-ΡΠ΅ΡΡΠΎΠ².
Π Π°Π΄ΡΠ΅Ρ, ΡΡΠΎ ΡΠ΅Π±ΡΡΠ° Π½Π΅ ΡΡΠΎΡΡ Π½Π° ΠΌΠ΅ΡΡΠ΅ ΠΈ Π²ΡΡΠ»Π° Π²Π΅ΡΡΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ 1.1.0, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΈΠ²Π½Π΅ΡΠ»Π° ΠΌΠ½ΠΎΠ³ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ.
ΠΠ»Π°Π²Π½ΡΠΌ Π½ΠΎΠ²ΠΎΠ²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ»ΡΡΡΠ΅Π½Π½ΡΠΉ UI Automator, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠ΅ΠΏΠ΅ΡΡ Kautomator. ΠΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Π½Π΅Π³ΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠ΅ΡΡΠΎΠ² ΡΡΠ°Π»ΠΎ Π΅ΡΡ Π±ΡΡΡΡΠ΅Π΅ ΠΈ ΡΠ΄ΠΎΠ±Π½Π΅Π΅. Π ΠΎΠΏΠΈΡΠ°Π½ΠΈΠΈ ΡΠ΅Π»ΠΈΠ·Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ ΡΠΊΠΎΡΠΎΡΡΠΈ ΡΠ°Π±ΠΎΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ UI Automator ΠΈ Kautomator. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΠΏΠ΅ΡΠ°ΡΠ»ΡΠ΅Ρ.
ΠΡΠΎΠΌΠ΅ ΡΡΠΎΠ³ΠΎ:
β’ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ;
β’ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π»ΠΎΠ³ΠΎΠ², ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ±Π»ΡΡΡΠΈ GDPR, Π΅ΡΠ»ΠΈ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² ΠΠ²ΡΠΎΠΏΠ΅;
β’ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Π² BaseTestCase ΠΈ BaseTestContext;
β’ Π½ΠΎΠ²ΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΈ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ.
Π ΠΎΠ±ΡΠ΅ΠΌ, Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ UI-ΡΠ΅ΡΡΠΎΠ² ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Ρ ΠΊΠ°ΠΆΠ΄ΡΠΌ ΡΠ°Π·ΠΎΠΌ Π²ΡΡ ΡΠ΄ΠΎΠ±Π½Π΅Π΅ ΠΈ ΡΠ΄ΠΎΠ±Π½Π΅Π΅. Π£Π΄Π°ΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΡΠ°ΠΊΠΎΠΉ ΠΊΡΡΡΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ!
ββΠΠ΅ΡΠ²Π°Ρ ΡΠ°Π±ΠΎΡΠ° Android-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ. ΠΠ°ΠΊ Π½Π°ΠΉΡΠΈ?
#Π²ΠΎΠΏΡΠΎΡ #ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ
ΠΠ΅Π΄Π°Π²Π½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΠ» Π²ΠΎΠΏΡΠΎΡ ΠΎΡ ΠΏΠΎΠ΄ΠΏΠΈΡΡΠΈΠΊΠ°:
ΠΡΠΈΠ²Π΅Ρ! ΠΠ°ΠΊΠΈΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ ΠΌΠΎΠ³ΡΡ Π·Π°Π΄Π°ΡΡ Π΄ΠΆΡΠ½Ρ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ? Π ΠΊΠ°ΠΊ Π½Π°ΠΉΡΠΈ ΠΏΠ΅ΡΠ²ΡΡ ΡΠ°Π±ΠΎΡΡ?
Π‘Π΅Π³ΠΎΠ΄Π½Ρ Ρ ΠΎΡΡ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ ΡΠ²ΠΎΠΈΠΌ ΠΎΠΏΡΡΠΎΠΌ Π² ΡΡΠΎΠΌ Π²ΠΎΠΏΡΠΎΡΠ΅ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°ΡΡ ΠΊΠΎΠΌΡ-ΡΠΎ ΠΈΠ· Π²Π°Ρ Π²Π΅ΠΊΡΠΎΡ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ.
1) Π‘Π΄Π΅Π»Π°ΠΉΡΠ΅ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
Π― ΡΡΡΡΠ°ΠΈΠ²Π°Π»ΡΡ Π½Π° ΡΠ²ΠΎΡ ΠΏΠ΅ΡΠ²ΡΡ ΡΠ°Π±ΠΎΡΡ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ ΡΠ½ΠΈΠ²Π΅ΡΡΠΈΡΠ΅ΡΠ°, ΠΈ ΠΌΠΎΡ Π΄ΠΈΠΏΠ»ΠΎΠΌΠ½Π°Ρ ΡΠ°Π±ΠΎΡΠ° Π±ΡΠ»Π° ΡΠ²ΡΠ·Π°Π½Π° Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΠ΅ ΡΠ΅Π»Π΅ΡΠΎΠ½Ρ. Π’ΠΎΠ³Π΄Π° ΡΡΠΎ ΠΊΠ°Π·Π°Π»ΠΎΡΡ ΡΠ΅ΠΌ-ΡΠΎ Π½ΠΎΠ²ΡΠΌ ΠΈ ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½Π½ΡΠΌ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ Π²ΡΠΏΡΡΠΊΠ½ΠΈΠΊΠΎΠ² Π΄Π΅Π»Π°Π»ΠΈ ΡΠ°ΠΉΡΡ.
ΠΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±ΡΠ»ΠΎ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΡΠΌ, Π² Π½Π΅ΠΌ ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅ Π±ΡΠ»ΠΎ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ ΠΈ Π²Π΅ΡΠ½ΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΎΠ² ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠ°ΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΡΠΎ, ΡΡΠΎ ΠΎΠ½ΠΎ Π·Π°ΠΏΡΡΠΊΠ°Π»ΠΎΡΡ ΠΈ ΡΠ°Π±ΠΎΡΠ°Π»ΠΎ. Π£ΠΆΠ΅ ΡΠ°ΠΌΠΎ Π½Π°Π»ΠΈΡΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π±ΡΠ»ΠΎ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π½Π΅ΠΏΠ»ΠΎΡ ΠΈΠΌ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΌ, ΡΡΠΎ Ρ Π½Π΅ ΠΏΡΠΎΡΡΠΎ Π²ΡΠΏΡΡΠΊΠ½ΠΈΠΊ Ρ ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ Π·Π½Π°Π½ΠΈΡΠΌΠΈ, Π½ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°ΠΏΠΈΡΠ°Π» ΠΎΠ΄Π½ΠΎ, Ρ ΠΎΡΡ ΠΈ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
ΠΠΎΡΡΠΎΠΌΡ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°ΡΠΈΠ½Π°Π΅ΡΠ΅ ΡΠ²ΠΎΠΉ ΠΏΡΡΡ Π² ΠΌΠΈΡ Android-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ β Π½Π°ΡΠ½ΠΈΡΠ΅ Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π²Π΅Π΄Ρ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ° Π½Π°ΡΠ΅ Π²ΡΠ΅.
2) ΠΠ½Π°ΠΉΡΠ΅ ΠΎΡΠ²Π΅ΡΡ Π½Π° Π±Π°Π·ΠΎΠ²ΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ.
Π’Π°ΠΊ ΠΊΠ°ΠΊ Π²Π°ΡΠ΅ ΡΠ΅Π·ΡΠΌΠ΅ ΠΏΠΎΡΡΠΈ ΠΏΡΡΡΠΎΠ΅ (ΠΏΠΎΡΡΠΈ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Ρ Π²Π°Ρ Π΅ΡΡΡ ΡΠΆΠ΅ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ ΠΎΠ΄Π½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ· ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΠΏΡΠ½ΠΊΡΠ°), ΡΠΎ Π²Π°Ρ Π±ΡΠ΄ΡΡ ΡΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ ΠΏΠΎ Π±Π°Π·ΠΎΠ²ΡΠΌ Π²ΠΎΠΏΡΠΎΡΠ°ΠΌ.
Π― Π±Ρ ΠΎΡΠ½Π΅Ρ ΠΊ Π½ΠΈΠΌ: ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ , ΠΠΠ, SOLID, ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ Π΄ΠΎΡΡΡΠΏΠ°, ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ. ΠΠ»ΡΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠΎΡΡΡΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΡ, Π° ΡΠ°ΠΊΠΆΠ΅ Π΅ΡΠ»ΠΈ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠ΅Π½ΠΈΠ²Π°ΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ².
ΠΠΎ Android Π²ΠΎΠΏΡΠΎΡΡ Π±ΡΠ΄ΡΡ ΡΠ²ΡΠ·Π°Π½Ρ Ρ Π±Π°Π·ΠΎΠ²ΡΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ: ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Activity, Fragment, Service ΠΈ Ρ.Π΄. Π₯ΠΎΡΡ, ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠ° Π²ΠΎΠΏΡΠΎΡΠΎΠ² Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ.
3) ΠΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ Π² ΡΡΠΎΡΠΎΠ½Ρ ΡΡΠ°ΠΆΠΈΡΠΎΠ²ΠΊΠΈ ΠΈΠ»ΠΈ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ.
ΠΡΠ»ΠΈ Π²Ρ ΡΡΡΠ΄Π΅Π½Ρ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π²ΡΠ·Π°, ΡΠΎ Ρ ΠΎΡΠΎΡΠ΅ΠΉ Β«ΡΠ΄ΠΎΡΠΊΠΎΠΉΒ» Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° Π½ΠΎΠ²ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠ»ΡΠΆΠΈΡΡ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ° Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. ΠΠ½ΠΎΠ³ΠΈΠ΅ ΡΡΡΠ΄Π΅Π½ΡΡ Π΅ΠΉ ΠΏΡΠ΅Π½Π΅Π±ΡΠ΅Π³Π°ΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π΅Ρ Π΄Π»Ρ ΡΠ΄Π°ΡΠΈ Β«Ρ Π²ΠΎΡΡΠΎΠ²Β» ΠΈΠ»ΠΈ ΠΎΡΠ΄ΡΡ Π°.
ΠΠ΄Π½Π°ΠΊΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ Π²ΡΠ΅ΡΡΡΠ· Ρ ΠΎΡΠΈΡΠ΅ Π±ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ, ΡΠΎ ΠΏΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ Π½Π°ΠΉΡΠΈ IT-ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ Π² ΡΠ²ΠΎΡΠΌ Π³ΠΎΡΠΎΠ΄Π΅ ΠΈ Π½Π°ΠΏΡΠΎΡΠΈΡΡΡΡ ΠΊ Π½ΠΈΠΌ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΡ. ΠΡΠ΅Π½Ρ ΡΠ°ΡΡΠΎ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΡΠΎΠ³Π»Π°ΡΠ°ΡΡΡΡ Π½Π° ΡΡΠΎ, ΠΈ Ρ Π²Π°Ρ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠ»ΠΈΡΠ½Π°Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π½Π° Π±ΡΠ΄Π½ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΠΏΠΎΠ»ΡΡΠΈΡΡ Π±Π΅ΡΡΠ΅Π½Π½ΡΠΉ ΠΎΠΏΡΡ ΠΎΡ Π±ΠΎΠ»Π΅Π΅ ΡΠΊΠΈΠ»ΠΎΠ²Π°Π½Π½ΡΡ ΠΊΠΎΠ»Π»Π΅Π³, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΎΡΠ²ΠΈΡΡ ΡΠ΅Π±Ρ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠΈ ΠΊΠ°ΠΊΠΈΡ -ΡΠΎ ΠΏΡΠΎΡΡΡΡ Π·Π°Π΄Π°Ρ. Π£ΠΌΠ½ΡΡ ΡΡΡΠ΄Π΅Π½ΡΠΎΠ² ΡΠ°ΡΡΠΎ Π±Π΅ΡΡΡ Π½Π° ΡΠ°Π±ΠΎΡΡ.
ΠΡΠ»ΠΈ ΠΆΠ΅ Π²Ρ ΡΠΆΠ΅ Π½Π΅ ΡΡΡΠ΄Π΅Π½Ρ, ΡΠΎ ΠΏΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ Π½Π°ΠΉΡΠΈ ΡΡΠ°ΠΆΠΈΡΠΎΠ²ΠΊΡ ΠΈΠ»ΠΈ ΠΊΡΡΡ Π² ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡΠ΄Ρ IT-ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. Π Π°Π±ΠΎΡΠ°ΡΡ ΠΏΡΠΈΠ΄ΡΡΡΡ ΠΎΡΠ΅Π½Ρ ΠΌΠ½ΠΎΠ³ΠΎ, Π½ΠΎ Π΅ΡΠ»ΠΈ Π²Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΌΠΎΡΠΈΠ²ΠΈΡΠΎΠ²Π°Π½Ρ, ΡΠΎ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΎΡΠ»ΠΈΡΠ½ΠΎΠΉ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΎΠΉ ΠΈ ΡΡΠ°ΡΡΠΎΠΌ Π΄Π»Ρ Π²Π°ΡΠ΅ΠΉ Π±ΡΠ΄ΡΡΠ΅ΠΉ ΠΊΠ°ΡΡΠ΅ΡΡ.
4) ΠΠ΅ ΠΎΡΡΠ°ΠΈΠ²Π°ΠΉΡΠ΅ΡΡ, Π΅ΡΠ»ΠΈ Π²Π°ΡΡ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°ΡΡΡΡ ΠΎΡΠΊΠ»ΠΎΠ½ΠΈΠ»ΠΈ.
ΠΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΠΈΡΠ΅ ΠΎΡΠ·ΡΠ² ΠΎΠ± ΠΈΠ½ΡΠ΅ΡΠ²ΡΡ, ΡΡΠΎΡΠ½ΡΠΉΡΠ΅ ΠΏΡΠΈΡΠΈΠ½Ρ ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΉ Π²Π°Ρ Π½Π΅ Ρ ΠΎΡΡΡ Π±ΡΠ°ΡΡ. Π§Π°ΡΡΠΎ ΡΡΠΎ Π°Π΄Π΅ΠΊΠ²Π°ΡΠ½ΡΠΉ ΡΠΈΠ΄Π±Π΅ΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΠΈΠ½ΡΠ΅ΡΠ²ΡΡ.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΠΏΡΠΎΡΠΈΡΠ΅, ΠΊΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠΉΡΠΈ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ. Π§Π°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π΄Π°ΡΡ ΠΏΠ΅ΡΠ΅ΡΡΠ² Π² ΠΏΠΎΠ»Π³ΠΎΠ΄Π°.
Π ΠΊΠ°ΠΊ Π²Ρ Π½Π°ΡΠ»ΠΈ ΡΠ²ΠΎΡ ΠΏΠ΅ΡΠ²ΡΡ ΡΠ°Π±ΠΎΡΡ? ΠΠ°ΠΊΠΈΠ΅ ΡΠΎΠ²Π΅ΡΡ Π΄Π°Π΄ΠΈΡΠ΅ Π½ΠΎΠ²ΠΈΡΠΊΠ°ΠΌ? ΠΡΠ΄Π΅Ρ Π·Π΄ΠΎΡΠΎΠ²ΠΎ, Π΅ΡΠ»ΠΈ ΡΠ°ΡΡΠΊΠ°ΠΆΠΈΡΠ΅ ΠΎΠ± ΡΡΠΎΠΌ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ .
#Π²ΠΎΠΏΡΠΎΡ #ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ
ΠΠ΅Π΄Π°Π²Π½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΠ» Π²ΠΎΠΏΡΠΎΡ ΠΎΡ ΠΏΠΎΠ΄ΠΏΠΈΡΡΠΈΠΊΠ°:
ΠΡΠΈΠ²Π΅Ρ! ΠΠ°ΠΊΠΈΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ ΠΌΠΎΠ³ΡΡ Π·Π°Π΄Π°ΡΡ Π΄ΠΆΡΠ½Ρ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ? Π ΠΊΠ°ΠΊ Π½Π°ΠΉΡΠΈ ΠΏΠ΅ΡΠ²ΡΡ ΡΠ°Π±ΠΎΡΡ?
Π‘Π΅Π³ΠΎΠ΄Π½Ρ Ρ ΠΎΡΡ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ ΡΠ²ΠΎΠΈΠΌ ΠΎΠΏΡΡΠΎΠΌ Π² ΡΡΠΎΠΌ Π²ΠΎΠΏΡΠΎΡΠ΅ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°ΡΡ ΠΊΠΎΠΌΡ-ΡΠΎ ΠΈΠ· Π²Π°Ρ Π²Π΅ΠΊΡΠΎΡ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ.
1) Π‘Π΄Π΅Π»Π°ΠΉΡΠ΅ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
Π― ΡΡΡΡΠ°ΠΈΠ²Π°Π»ΡΡ Π½Π° ΡΠ²ΠΎΡ ΠΏΠ΅ΡΠ²ΡΡ ΡΠ°Π±ΠΎΡΡ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ ΡΠ½ΠΈΠ²Π΅ΡΡΠΈΡΠ΅ΡΠ°, ΠΈ ΠΌΠΎΡ Π΄ΠΈΠΏΠ»ΠΎΠΌΠ½Π°Ρ ΡΠ°Π±ΠΎΡΠ° Π±ΡΠ»Π° ΡΠ²ΡΠ·Π°Π½Π° Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΠ΅ ΡΠ΅Π»Π΅ΡΠΎΠ½Ρ. Π’ΠΎΠ³Π΄Π° ΡΡΠΎ ΠΊΠ°Π·Π°Π»ΠΎΡΡ ΡΠ΅ΠΌ-ΡΠΎ Π½ΠΎΠ²ΡΠΌ ΠΈ ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½Π½ΡΠΌ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ Π²ΡΠΏΡΡΠΊΠ½ΠΈΠΊΠΎΠ² Π΄Π΅Π»Π°Π»ΠΈ ΡΠ°ΠΉΡΡ.
ΠΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±ΡΠ»ΠΎ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΡΠΌ, Π² Π½Π΅ΠΌ ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅ Π±ΡΠ»ΠΎ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ ΠΈ Π²Π΅ΡΠ½ΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΎΠ² ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠ°ΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΡΠΎ, ΡΡΠΎ ΠΎΠ½ΠΎ Π·Π°ΠΏΡΡΠΊΠ°Π»ΠΎΡΡ ΠΈ ΡΠ°Π±ΠΎΡΠ°Π»ΠΎ. Π£ΠΆΠ΅ ΡΠ°ΠΌΠΎ Π½Π°Π»ΠΈΡΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π±ΡΠ»ΠΎ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π½Π΅ΠΏΠ»ΠΎΡ ΠΈΠΌ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΌ, ΡΡΠΎ Ρ Π½Π΅ ΠΏΡΠΎΡΡΠΎ Π²ΡΠΏΡΡΠΊΠ½ΠΈΠΊ Ρ ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ Π·Π½Π°Π½ΠΈΡΠΌΠΈ, Π½ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°ΠΏΠΈΡΠ°Π» ΠΎΠ΄Π½ΠΎ, Ρ ΠΎΡΡ ΠΈ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
ΠΠΎΡΡΠΎΠΌΡ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°ΡΠΈΠ½Π°Π΅ΡΠ΅ ΡΠ²ΠΎΠΉ ΠΏΡΡΡ Π² ΠΌΠΈΡ Android-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ β Π½Π°ΡΠ½ΠΈΡΠ΅ Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π²Π΅Π΄Ρ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ° Π½Π°ΡΠ΅ Π²ΡΠ΅.
2) ΠΠ½Π°ΠΉΡΠ΅ ΠΎΡΠ²Π΅ΡΡ Π½Π° Π±Π°Π·ΠΎΠ²ΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ.
Π’Π°ΠΊ ΠΊΠ°ΠΊ Π²Π°ΡΠ΅ ΡΠ΅Π·ΡΠΌΠ΅ ΠΏΠΎΡΡΠΈ ΠΏΡΡΡΠΎΠ΅ (ΠΏΠΎΡΡΠΈ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Ρ Π²Π°Ρ Π΅ΡΡΡ ΡΠΆΠ΅ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ ΠΎΠ΄Π½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ· ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΠΏΡΠ½ΠΊΡΠ°), ΡΠΎ Π²Π°Ρ Π±ΡΠ΄ΡΡ ΡΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ ΠΏΠΎ Π±Π°Π·ΠΎΠ²ΡΠΌ Π²ΠΎΠΏΡΠΎΡΠ°ΠΌ.
Π― Π±Ρ ΠΎΡΠ½Π΅Ρ ΠΊ Π½ΠΈΠΌ: ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ , ΠΠΠ, SOLID, ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ Π΄ΠΎΡΡΡΠΏΠ°, ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ. ΠΠ»ΡΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠΎΡΡΡΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΡ, Π° ΡΠ°ΠΊΠΆΠ΅ Π΅ΡΠ»ΠΈ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠ΅Π½ΠΈΠ²Π°ΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ².
ΠΠΎ Android Π²ΠΎΠΏΡΠΎΡΡ Π±ΡΠ΄ΡΡ ΡΠ²ΡΠ·Π°Π½Ρ Ρ Π±Π°Π·ΠΎΠ²ΡΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ: ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Activity, Fragment, Service ΠΈ Ρ.Π΄. Π₯ΠΎΡΡ, ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠ° Π²ΠΎΠΏΡΠΎΡΠΎΠ² Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ.
3) ΠΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ Π² ΡΡΠΎΡΠΎΠ½Ρ ΡΡΠ°ΠΆΠΈΡΠΎΠ²ΠΊΠΈ ΠΈΠ»ΠΈ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ.
ΠΡΠ»ΠΈ Π²Ρ ΡΡΡΠ΄Π΅Π½Ρ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π²ΡΠ·Π°, ΡΠΎ Ρ ΠΎΡΠΎΡΠ΅ΠΉ Β«ΡΠ΄ΠΎΡΠΊΠΎΠΉΒ» Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° Π½ΠΎΠ²ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠ»ΡΠΆΠΈΡΡ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ° Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. ΠΠ½ΠΎΠ³ΠΈΠ΅ ΡΡΡΠ΄Π΅Π½ΡΡ Π΅ΠΉ ΠΏΡΠ΅Π½Π΅Π±ΡΠ΅Π³Π°ΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π΅Ρ Π΄Π»Ρ ΡΠ΄Π°ΡΠΈ Β«Ρ Π²ΠΎΡΡΠΎΠ²Β» ΠΈΠ»ΠΈ ΠΎΡΠ΄ΡΡ Π°.
ΠΠ΄Π½Π°ΠΊΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ Π²ΡΠ΅ΡΡΡΠ· Ρ ΠΎΡΠΈΡΠ΅ Π±ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ, ΡΠΎ ΠΏΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ Π½Π°ΠΉΡΠΈ IT-ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ Π² ΡΠ²ΠΎΡΠΌ Π³ΠΎΡΠΎΠ΄Π΅ ΠΈ Π½Π°ΠΏΡΠΎΡΠΈΡΡΡΡ ΠΊ Π½ΠΈΠΌ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΡ. ΠΡΠ΅Π½Ρ ΡΠ°ΡΡΠΎ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΡΠΎΠ³Π»Π°ΡΠ°ΡΡΡΡ Π½Π° ΡΡΠΎ, ΠΈ Ρ Π²Π°Ρ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠ»ΠΈΡΠ½Π°Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π½Π° Π±ΡΠ΄Π½ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΠΏΠΎΠ»ΡΡΠΈΡΡ Π±Π΅ΡΡΠ΅Π½Π½ΡΠΉ ΠΎΠΏΡΡ ΠΎΡ Π±ΠΎΠ»Π΅Π΅ ΡΠΊΠΈΠ»ΠΎΠ²Π°Π½Π½ΡΡ ΠΊΠΎΠ»Π»Π΅Π³, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΎΡΠ²ΠΈΡΡ ΡΠ΅Π±Ρ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠΈ ΠΊΠ°ΠΊΠΈΡ -ΡΠΎ ΠΏΡΠΎΡΡΡΡ Π·Π°Π΄Π°Ρ. Π£ΠΌΠ½ΡΡ ΡΡΡΠ΄Π΅Π½ΡΠΎΠ² ΡΠ°ΡΡΠΎ Π±Π΅ΡΡΡ Π½Π° ΡΠ°Π±ΠΎΡΡ.
ΠΡΠ»ΠΈ ΠΆΠ΅ Π²Ρ ΡΠΆΠ΅ Π½Π΅ ΡΡΡΠ΄Π΅Π½Ρ, ΡΠΎ ΠΏΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ Π½Π°ΠΉΡΠΈ ΡΡΠ°ΠΆΠΈΡΠΎΠ²ΠΊΡ ΠΈΠ»ΠΈ ΠΊΡΡΡ Π² ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡΠ΄Ρ IT-ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. Π Π°Π±ΠΎΡΠ°ΡΡ ΠΏΡΠΈΠ΄ΡΡΡΡ ΠΎΡΠ΅Π½Ρ ΠΌΠ½ΠΎΠ³ΠΎ, Π½ΠΎ Π΅ΡΠ»ΠΈ Π²Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΌΠΎΡΠΈΠ²ΠΈΡΠΎΠ²Π°Π½Ρ, ΡΠΎ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΎΡΠ»ΠΈΡΠ½ΠΎΠΉ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΎΠΉ ΠΈ ΡΡΠ°ΡΡΠΎΠΌ Π΄Π»Ρ Π²Π°ΡΠ΅ΠΉ Π±ΡΠ΄ΡΡΠ΅ΠΉ ΠΊΠ°ΡΡΠ΅ΡΡ.
4) ΠΠ΅ ΠΎΡΡΠ°ΠΈΠ²Π°ΠΉΡΠ΅ΡΡ, Π΅ΡΠ»ΠΈ Π²Π°ΡΡ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°ΡΡΡΡ ΠΎΡΠΊΠ»ΠΎΠ½ΠΈΠ»ΠΈ.
ΠΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΠΈΡΠ΅ ΠΎΡΠ·ΡΠ² ΠΎΠ± ΠΈΠ½ΡΠ΅ΡΠ²ΡΡ, ΡΡΠΎΡΠ½ΡΠΉΡΠ΅ ΠΏΡΠΈΡΠΈΠ½Ρ ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΉ Π²Π°Ρ Π½Π΅ Ρ ΠΎΡΡΡ Π±ΡΠ°ΡΡ. Π§Π°ΡΡΠΎ ΡΡΠΎ Π°Π΄Π΅ΠΊΠ²Π°ΡΠ½ΡΠΉ ΡΠΈΠ΄Π±Π΅ΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΠΈΠ½ΡΠ΅ΡΠ²ΡΡ.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΠΏΡΠΎΡΠΈΡΠ΅, ΠΊΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠΉΡΠΈ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ. Π§Π°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π΄Π°ΡΡ ΠΏΠ΅ΡΠ΅ΡΡΠ² Π² ΠΏΠΎΠ»Π³ΠΎΠ΄Π°.
Π ΠΊΠ°ΠΊ Π²Ρ Π½Π°ΡΠ»ΠΈ ΡΠ²ΠΎΡ ΠΏΠ΅ΡΠ²ΡΡ ΡΠ°Π±ΠΎΡΡ? ΠΠ°ΠΊΠΈΠ΅ ΡΠΎΠ²Π΅ΡΡ Π΄Π°Π΄ΠΈΡΠ΅ Π½ΠΎΠ²ΠΈΡΠΊΠ°ΠΌ? ΠΡΠ΄Π΅Ρ Π·Π΄ΠΎΡΠΎΠ²ΠΎ, Π΅ΡΠ»ΠΈ ΡΠ°ΡΡΠΊΠ°ΠΆΠΈΡΠ΅ ΠΎΠ± ΡΡΠΎΠΌ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ .
ββAndroid 11 Developer Preview
#Π½ΠΎΠ²ΠΎΡΡΠΈ
ΠΡΠ΅ΡΠ° ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎ Π²ΡΡΠ΅Π» ΡΠ²Π΅ΠΆΠΈΠΉ Android 11 Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². ΠΡΠ»ΠΈ Π²Ρ ΠΎΠ±Π»Π°Π΄Π°ΡΠ΅Π»Ρ Pixel 2, 3, 3a ΠΈΠ»ΠΈ 4, ΡΠΎ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΅Ρ ΡΠ΅Π±Π΅ ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ, ΠΊΠ°ΠΊ ΡΠ΅Π±Ρ Π²Π΅Π΄ΡΡ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΠΈ Ρ Π½ΠΎΠ²ΡΠΌΠΈ ΡΠΈΡΠ°ΠΌΠΈ.
Π’Π°ΠΊ ΠΊΠ°ΠΊ ΡΡΠΎ Developer Preview Π²Π΅ΡΡΠΈΡ, ΡΠΎ Π½Π΅ ΡΡΠΎΠΈΡ Π΅Ρ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ Π½Π° ΡΠ΅Π»Π΅ΡΠΎΠ½, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ.
ΠΠ· Π½ΠΎΠ²ΡΡ ΡΠΈΡ:
β’ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Π² API Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ 5G;
β’ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Π² ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅ ΡΠΊΡΠ°Π½ΠΎΠ² Ρ Π²ΡΡΠ΅Π·Π°ΠΌΠΈ ΠΈ Π½ΠΎΠ²ΡΡ ΡΠΎΡΠΌ-ΡΠ°ΠΊΡΠΎΡΠΎΠ² ΡΠ΅Π»Π΅ΡΠΎΠ½ΠΎΠ² (ΡΠ°ΠΊ ΡΡΠΎ Π΅ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΠΌ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° insets Π² ΡΠ²ΠΎΡΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ);
β’ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Bubbles API Π΄Π»Ρ ΡΠ°ΡΠΈΠΊΠΎΠ² Ρ ΠΈΠ·Π±ΡΠ°Π½Π½ΡΠΌΠΈ ΠΊΠΎΠ½ΡΠ°ΠΊΡΠ°ΠΌΠΈ (ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΡΡΡ)
β’ Π²ΡΡΠ°Π²ΠΊΠ° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΏΡΠΈ Π±ΡΡΡΡΠΎΠΌ ΠΎΡΠ²Π΅ΡΠ΅ ΠΈΠ· ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ;
β’ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Π² ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π΅;
β’ one-time permissions (Π½Π°Π²Π΅ΡΠ½ΠΎΠ΅, ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΡΠ°ΠΌΡΡ Π²Π°ΠΆΠ½ΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ, ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΡΡΡ;
β’ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ Π² ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅ Π±ΠΈΠΎΠΌΠ΅ΡΡΠΈΠΈ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΡ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ°Ρ Π΄Π°Π½Π½ΡΡ ;
β’ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΉ post-call screen, Π³Π΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ Π·Π²ΠΎΠ½ΠΊΠ° ΠΏΠΎΠΌΠ΅ΡΠΈΡΡ ΡΠ΅Π»Π΅ΡΠΎΠ½ ΠΊΠ°ΠΊ ΡΠΏΠ°ΠΌ ΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π½ΠΎΠΌΠ΅Ρ Π² ΠΊΠΎΠ½ΡΠ°ΠΊΡΡ;
β’ ΠΊΡΡΡΠ°Ρ ΡΡΡΠΊΠ° Π΄Π»Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΡΠ°Π·Π½ΡΡ Π²Π΅ΡΡΠΈΠΉ targetSdkVersion (ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΡΡΡ.
ΠΡΠ»ΠΈ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ·Π½Π°ΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΏΡΠΎ ΡΡΠΈ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠΆΠΈΠ΄Π°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π² Android 11, ΡΠΎ Π²Π°ΠΌ ΡΡΠ΄Π°.
#Π½ΠΎΠ²ΠΎΡΡΠΈ
ΠΡΠ΅ΡΠ° ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎ Π²ΡΡΠ΅Π» ΡΠ²Π΅ΠΆΠΈΠΉ Android 11 Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². ΠΡΠ»ΠΈ Π²Ρ ΠΎΠ±Π»Π°Π΄Π°ΡΠ΅Π»Ρ Pixel 2, 3, 3a ΠΈΠ»ΠΈ 4, ΡΠΎ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΅Ρ ΡΠ΅Π±Π΅ ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ, ΠΊΠ°ΠΊ ΡΠ΅Π±Ρ Π²Π΅Π΄ΡΡ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΠΈ Ρ Π½ΠΎΠ²ΡΠΌΠΈ ΡΠΈΡΠ°ΠΌΠΈ.
Π’Π°ΠΊ ΠΊΠ°ΠΊ ΡΡΠΎ Developer Preview Π²Π΅ΡΡΠΈΡ, ΡΠΎ Π½Π΅ ΡΡΠΎΠΈΡ Π΅Ρ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ Π½Π° ΡΠ΅Π»Π΅ΡΠΎΠ½, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ.
ΠΠ· Π½ΠΎΠ²ΡΡ ΡΠΈΡ:
β’ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Π² API Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ 5G;
β’ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Π² ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅ ΡΠΊΡΠ°Π½ΠΎΠ² Ρ Π²ΡΡΠ΅Π·Π°ΠΌΠΈ ΠΈ Π½ΠΎΠ²ΡΡ ΡΠΎΡΠΌ-ΡΠ°ΠΊΡΠΎΡΠΎΠ² ΡΠ΅Π»Π΅ΡΠΎΠ½ΠΎΠ² (ΡΠ°ΠΊ ΡΡΠΎ Π΅ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΠΌ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° insets Π² ΡΠ²ΠΎΡΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ);
β’ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Bubbles API Π΄Π»Ρ ΡΠ°ΡΠΈΠΊΠΎΠ² Ρ ΠΈΠ·Π±ΡΠ°Π½Π½ΡΠΌΠΈ ΠΊΠΎΠ½ΡΠ°ΠΊΡΠ°ΠΌΠΈ (ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΡΡΡ)
β’ Π²ΡΡΠ°Π²ΠΊΠ° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΏΡΠΈ Π±ΡΡΡΡΠΎΠΌ ΠΎΡΠ²Π΅ΡΠ΅ ΠΈΠ· ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ;
β’ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Π² ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π΅;
β’ one-time permissions (Π½Π°Π²Π΅ΡΠ½ΠΎΠ΅, ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΡΠ°ΠΌΡΡ Π²Π°ΠΆΠ½ΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ, ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΡΡΡ;
β’ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ Π² ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅ Π±ΠΈΠΎΠΌΠ΅ΡΡΠΈΠΈ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΡ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ°Ρ Π΄Π°Π½Π½ΡΡ ;
β’ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΉ post-call screen, Π³Π΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ Π·Π²ΠΎΠ½ΠΊΠ° ΠΏΠΎΠΌΠ΅ΡΠΈΡΡ ΡΠ΅Π»Π΅ΡΠΎΠ½ ΠΊΠ°ΠΊ ΡΠΏΠ°ΠΌ ΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π½ΠΎΠΌΠ΅Ρ Π² ΠΊΠΎΠ½ΡΠ°ΠΊΡΡ;
β’ ΠΊΡΡΡΠ°Ρ ΡΡΡΠΊΠ° Π΄Π»Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΡΠ°Π·Π½ΡΡ Π²Π΅ΡΡΠΈΠΉ targetSdkVersion (ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΡΡΡ.
ΠΡΠ»ΠΈ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ·Π½Π°ΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΏΡΠΎ ΡΡΠΈ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠΆΠΈΠ΄Π°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π² Android 11, ΡΠΎ Π²Π°ΠΌ ΡΡΠ΄Π°.