Android Dev Hub
Open in Telegram
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΏΠΎΠ΄ Android: Kotlin, Java.
Show more1 138
Subscribers
No data24 hours
-2417 days
-1 51830 days
Posts Archive
1 138
ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ Jetpack Compose ΠΈ
derivedStateOf
ΠΠΎΡΠ΅ΠΌΡ ΡΠ²ΠΎΠΉ derivedStateOf Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ ΡΡ Π΄ΡΠΌΠ°Π΅ΡΡ? π§
Π§Π°ΡΡΠΎ Π²ΠΈΠΆΡ Π½Π° ΠΊΠΎΠ΄-ΡΠ΅Π²ΡΡ ΡΠ°ΠΊΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ:
val listState = rememberLazyListState()
val showButton by remember {
derivedStateOf { listState.firstVisibleItemIndex > 0 }
}
ΠΡΠΎΠ΄Π΅ Π²ΡΡ ΠΎΠΊ? ΠΡ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΠΌ ΡΠ΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΠΈ. ΠΠΎ Π΅ΡΡΡ Π½ΡΠ°Π½Ρ, ΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌ Π·Π°Π±ΡΠ²Π°ΡΡ ΠΌΠΈΠ΄Π»Ρ.
ΠΡΠ»ΠΈ Π²Π½ΡΡΡΠΈ Π±Π»ΠΎΠΊΠ° derivedStateOf Π²Ρ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΠ΅ΡΡ ΠΊ ΠΎΠ±ΡΠ΅ΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ State-ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠΌ (ΠΈΠ»ΠΈ Snapshot-aware), ΠΌΠ°Π³ΠΈΠΈ Π½Π΅ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ. Compose ΠΏΡΠΎΡΡΠΎ Π½Π΅ ΡΠ·Π½Π°Π΅Ρ, ΡΡΠΎ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈΡΡ, ΠΏΠΎΠΊΠ° Π½Π΅ ΡΠ»ΡΡΠΈΡΡΡ ΡΠ΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΡ ΡΠΎΠ΄ΠΈΡΠ΅Π»Ρ ΠΏΠΎ Π΄ΡΡΠ³ΠΎΠΉ ΠΏΡΠΈΡΠΈΠ½Π΅.
π‘ ΠΠ΅ΠΉΡ ΠΈΠ· ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ: ΠΡ ΠΏΡΡΠ°Π»ΠΈΡΡ ΡΡΠ΅ΠΊΠ°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡΡΠ½ΠΎΠ³ΠΎ var ΠΏΠΎΠ»Ρ Π²Π½ΡΡΡΠΈ ΠΊΠ»Π°ΡΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ Π±ΡΠ» ΠΎΠ±Π΅ΡΠ½ΡΡ Π² Stable. Π ΠΈΡΠΎΠ³Π΅ ΠΊΠ½ΠΎΠΏΠΊΠ° "ΠΠ°Π²Π΅ΡΡ
" ΠΏΠΎΡΠ²Π»ΡΠ»Π°ΡΡ ΡΠ°Π½Π΄ΠΎΠΌΠ½ΠΎ.
ΠΡΠ°Π²ΠΈΠ»ΠΎ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΏΠ°Π»ΡΡΠ°: ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ derivedStateOf ΡΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠ³Π΄Π° Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΠΏΡΠ΅Π²ΡΠ°ΡΠΈΡΡ ΡΠ°ΡΡΠΎ ΠΌΠ΅Π½ΡΡΡΠΈΠΉΡΡ State (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΊΡΠΎΠ»Π» ΠΏΠΈΠΊΡΠ΅Π»Ρ-Π²-ΠΏΠΈΠΊΡΠ΅Π»Ρ) Π² ΡΠ΅Π΄ΠΊΠΎ ΠΌΠ΅Π½ΡΡΡΠΈΠΉΡΡ State (Π±ΡΠ»Π΅Π°Π½ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ). ΠΡΠ»ΠΈ Π²Ρ ΠΏΡΠΎΡΡΠΎ ΠΌΠ°ΠΏΠΈΡΠ΅ State A Π² State B - derivedStateOf ΡΠ°ΡΡΠΎ ΠΈΠ·Π±ΡΡΠΎΡΠ΅Π½ ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΠΎΠ²Π΅ΡΡ
Π΅Π΄ Π½Π° ΡΡΠ΅ΠΊΠΈΠ½Π³ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ.
#compose #performance #under_the_hood
π@androidspb1 138
ΠΠΈΡΠ΅ΠΌ ΠΏΡΠΎΡΡΠ΅Π½ΡΠΊΠΈΠΉ DI Π΄Π»Ρ Android ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
Π‘Π΅ΠΉΡΠ°Ρ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π»ΡΠ±ΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ ΠΈΠΌΠ΅Π΅Ρ Π² ΡΠ²ΠΎΡΠΌ ΡΠΎΡΡΠ°Π²Π΅ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ ΠΎΠ΄Π½Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ ΠΈΠ»ΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠ°Π·ΡΡΠ»ΠΈΠ²Π°Π½ΠΈΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ, Π½ΠΎ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ ΠΊΠ°ΠΊ ΡΡΡΡΠΎΠ΅Π½Ρ ΡΡΠΈ ΡΠ°ΠΌΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ. ΠΠΎΡΡΠΎΠΌΡ Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ Ρ
ΠΎΡΠ΅Π» Π±Ρ ΠΏΡΠΎΡΡΠ½ΠΈΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π±Π°Π·ΠΎΠ²ΡΠ΅ ΠΌΠΎΠΌΠ΅Π½ΡΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΡ
ΠΏΠΎΡΡΡΠΎΠ΅Π½Ρ ΡΠ°ΠΊΠΈΠ΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΊΠ°ΠΊ Dagger, Hilt ΠΈ Koin, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ²ΠΎΠ΅ DI ΡΠ΅ΡΠ΅Π½ΠΈΠ΅.
https://habr.com/ru/articles/843258/
π@androidspb
1 138
ΠΡΠ½ΠΎΠ²Ρ AGSL Π΄Π»Ρ android ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°
Π ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ Π³ΠΎΠ΄Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ Π²ΡΠ΅ Π±ΠΎΠ»Π΅Π΅ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠΌΠΈ. ΠΡΠΎΡΡΠΎΠ³ΠΎ ΡΡΡΠ΅ΠΊΡΠ° Π½Π°ΠΆΠ°ΡΠΈΡ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ ΡΠΆΠ΅ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ - ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΆΠ΄ΡΡ ΠΆΠΈΠ²ΡΡ
Π°Π½ΠΈΠΌΠ°ΡΠΈΠΉ ΠΈ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎΠΉ Π³Π»ΡΠ±ΠΈΠ½Ρ. ΠΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ°ΠΊΠΈΡ
ΡΡΡΠ΅ΠΊΡΠΎΠ² ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΠΎ ΡΡΠ΅Π±ΠΎΠ²Π°Π»ΠΎ ΠΎΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΡ
ΡΡΠΈΠ»ΠΈΠΉ.
ΠΡΠ΅Π΄ΡΡΠ°Π²Ρ: ΡΠ΅Π±Π΅ Π½ΡΠΆΠ½ΠΎ Β«ΠΏΠΎΠΊΠΎΠ»Π΄ΠΎΠ²Π°ΡΡΒ» Π½Π°Π΄ ΠΏΠΈΠΊΡΠ΅Π»ΡΠΌΠΈ ΠΏΡΡΠΌΠΎ Π² UI - Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΆΠΈΠ²ΠΎΠΉ Π³ΡΠ°Π΄ΠΈΠ΅Π½Ρ, ΠΈΡΠΊΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ ΠΏΠΎΠ΄ ΠΏΠ°Π»ΡΡΠ΅ΠΌ, ΡΡΠ΅ΠΊΠ»ΡΠ½Π½ΡΠΉ Π±Π»Π΅ΡΠΊ ΠΊΠ°ΡΡΠΎΡΠΊΠ΅ ΠΈ ΡΠΎΠΌΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ ΡΡΡΠ΅ΠΊΡΡ. Π Π°Π½ΡΡΠ΅ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΈΡ
ΠΎΠ΄ΠΈΠ»ΠΎΡΡ ΠΏΡΠΈΠ±Π΅Π³Π°ΡΡ ΠΊ Β«ΡΡΠΆΠ΅Π»ΠΎΠ²Π΅ΡΠ°ΠΌΒ» ΡΠ°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ OpenGL/Vulkan, Π»ΠΈΠ±ΠΎ ΠΌΡΡΠΈΡΡ CPU ΠΏΠΎΡΡΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ Π±ΠΈΡΠΌΠ°ΠΏΠΎΠ². AGSL (Android Graphics Shading Language) ΡΠ΅ΡΠ°Π΅Ρ ΡΡΠΎ ΡΠ»Π΅Π³Π°Π½ΡΠ½Π΅Π΅: ΡΡΠΎ ΡΠ·ΡΠΊ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ½ΡΡ
ΡΠ΅ΠΉΠ΄Π΅ΡΠΎΠ², Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ Π² ΡΠ°ΠΌ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΡΠ΅ΠΊ Android, ΡΠ°ΠΊ ΡΡΠΎ ΡΡΡΠ΅ΠΊΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΠΏΡΡΠΌΠΎ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°.
https://habr.com/ru/articles/971992/
π@androidspb
1 138
LazyTimetable - Π²ΡΡΠΎΠΊΠΎΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ° Π΄Π»Ρ ΡΠ°ΡΠΏΠΈΡΠ°Π½ΠΈΡ Ρ ΠΎΡΠ»ΠΎΠΆΠ΅Π½Π½ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΎΠΉ Π΄Π»Ρ Jetpack Compose Π΄Π»Ρ Android. ΠΠ΄Π΅Π°Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°ΡΠΏΠΈΡΠ°Π½ΠΈΠΉ ΡΠ΅ΡΡΠΈΠ²Π°Π»Π΅ΠΉ, ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΠΉ ΠΈ Π»ΡΠ±ΡΡ
ΠΌΠ½ΠΎΠ³ΠΎΠΊΠΎΠ»ΠΎΠ½ΠΎΡΠ½ΡΡ
ΠΌΠ°ΠΊΠ΅ΡΠΎΠ² Ρ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌΠΈ ΡΠ°ΠΌΠΊΠ°ΠΌΠΈ.
Π€ΠΈΡΠΈ:
- ΠΡΡΠΎΠΊΠ°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ: Π»Π΅Π½ΠΈΠ²Π°Ρ Π·Π°Π³ΡΡΠ·ΠΊΠ° Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ Π΄Π»Ρ ΠΎΠ±Π»Π°ΡΡΠΈ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° Π΄Π»Ρ ΠΏΠ»Π°Π²Π½ΠΎΠΉ ΠΏΡΠΎΠΊΡΡΡΠΊΠΈ Π΄Π°ΠΆΠ΅ ΠΏΡΠΈ Π±ΠΎΠ»ΡΡΠΈΡ
Π½Π°Π±ΠΎΡΠ°Ρ
Π΄Π°Π½Π½Ρ
- ΠΠΎΠ·ΠΈΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ: ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΏΠΎΠ·ΠΈΡΠΈΠΎΠ½ΠΈΡΡΡΡΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π² ΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΡΠ°ΡΡΡΡΠΎΠΌ ΠΌΠ°ΠΊΠ΅ΡΠ°
- ΠΠ²ΡΠ½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π½Π°Ρ ΠΏΡΠΎΠΊΡΡΡΠΊΠ°: ΠΏΠ»Π°Π²Π½Π°Ρ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½Π°Ρ ΠΈ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½Π°Ρ ΠΏΡΠΎΠΊΡΡΡΠΊΠ°
- Π¨ΠΈΡΠΎΠΊΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ: Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΡΠ²Π΅ΡΠΎΠ², ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»ΠΎΠ² ΠΈ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ Π²ΠΈΠ΄Π° ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ°
- Π’ΠΈΠΏΠΎΠ±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠΉ DSL: ΡΠΈΡΡΡΠΉ, Π΄Π΅ΠΊΠ»Π°ΡΠ°ΡΠΈΠ²Π½ΡΠΉ API Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΡΡΡΠΊΡΡΡΡ ΡΠ°ΡΠΏΠΈΡΠ°Π½ΠΈΡ
https://github.com/MoyuruAizawa/LazyTimetable
π@androidspb
1 138
ΠΠ»ΠΎΠΆΠ΅Π½Π½Π°Ρ ΠΏΡΠΎΠΊΡΡΡΠΊΠ° Π² Jetpack Compose
ΠΠ»ΠΎΠΆΠ΅Π½Π½Π°Ρ ΠΏΡΠΎΠΊΡΡΡΠΊΠ° Π² Jetpack Compose ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ³Π»Π°ΡΠΎΠ²ΡΠ²Π°ΡΡ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΠΌΠΈ ΠΈ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ, ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Ρ Π½Π΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΊΡΡΡΠΊΠΈ ΠΏΠΎ ΠΈΠ΅ΡΠ°ΡΡ
ΠΈΠΈ.
ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ API
scrollable ΠΈ Lazy Π² Compose Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΡ ΠΏΡΠΎΠΊΡΡΡΠΊΡ, ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Ρ ΠΎΡΡΠ°Π²ΡΠ΅Π΅ΡΡ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ, ΠΊΠΎΠ³Π΄Π° Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠΉ Π΄ΠΎΡΡΠΈΠ³Π°Π΅Ρ ΠΏΡΠ΅Π΄Π΅Π»Π°. ΠΠ»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ
ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² β ΡΠ°ΠΊΠΈΡ
ΠΊΠ°ΠΊ ΡΠ²ΠΎΡΠ°ΡΠΈΠ²Π°ΡΡΠΈΠ΅ΡΡ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ»ΠΈ ΡΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΏΠ°Π½Π΅Π»ΠΈ β Compose ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ NestedScrollConnection ΠΈ NestedScrollDispatcher, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΏΠ΅ΡΠ΅Ρ
Π²Π°ΡΡΠ²Π°ΡΡ ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΡΡΠΈΡ ΠΏΡΠΎΠΊΡΡΡΠΊΠΈ Π΄ΠΎ ΠΈ ΠΏΠΎΡΠ»Π΅ ΠΈΡ
ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠΌ.
https://victorbrandalise.com/nested-scrolling-in-jetpack-compose/
π@androidspb1 138
ΠΠ°ΠΊ Π² Duolingo ΠΏΠΎΠ²ΡΡΠΈΠ»ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Android-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
ΠΠ°ΡΠ° ΠΌΠΈΡΡΠΈΡ Π² Duolingo β ΡΠΎΠ·Π΄Π°ΡΡ Π»ΡΡΡΠ΅Π΅ ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΌΠΈΡΠ΅ ΠΈ ΡΠ΄Π΅Π»Π°ΡΡ Π΅Π³ΠΎ Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ. ΠΠ΄Π½Π°ΠΊΠΎ Π½Π°ΡΠΈ ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ, ΡΡΠΎ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Ρ ΡΡΠ°ΡΠΈΡ
ΡΡ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠ΅ Π½Π΅Π΄ΠΎΡΠΎΠ³ΠΈΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π½Π° ΡΠ°Π·Π²ΠΈΠ²Π°ΡΡΠΈΡ
ΡΡ ΡΡΠ½ΠΊΠ°Ρ
, ΠΏΠ΅ΡΠ΅ΡΡΠ°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΈΠ·-Π·Π° ΡΠ°Π·Π΄ΡΠ°ΠΆΠ°ΡΡΠ΅Π³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠΈ: Π² Π½Π°ΡΠ°Π»Π΅ 2024 Π³ΠΎΠ΄Π° ΡΠ΅Π»ΡΡ
39% ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Π½Π° Π±ΡΠ΄ΠΆΠ΅ΡΠ½ΡΡ
Android-ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ
ΠΆΠ΄Π°Π»ΠΈ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π±ΠΎΠ»Π΅Π΅ 5 ΡΠ΅ΠΊΡΠ½Π΄. ΠΡΠΎ Π½Π°ΠΏΡΡΠΌΡΡ ΠΏΠΎΠ΄ΡΡΠ²Π°Π»ΠΎ Π½Π°ΡΡ ΠΌΠΈΡΡΠΈΡ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠΉ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΠΈ.
Π§ΡΠΎΠ±Ρ ΡΠ΅ΡΠΈΡΡ ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΠΌΡ ΡΠΎΠ±ΡΠ°Π»ΠΈ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΠΊΠΎΡΠΎΡΠ°Ρ Π·Π°Π½ΡΠ»Π°ΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠ΅ΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π½Π°ΡΠ΅Π³ΠΎ Android-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
https://blog.duolingo.com/android-app-performance/
π@androidspb
1 138
Basic Guide to Animation in Jetpack Compose
Animations in Jetpack Compose bring life to your UI, making interactions feel natural and engaging. Whether itβs fading elements in/out, moving objects, scaling components, or applying physics-based motion, Jetpack Compose provides powerful tools to achieve smooth animations effortlessly. This guide covers everything you need to know about the basics of animations in Jetpack Compose.
https://nameisjayant.medium.com/basic-guide-to-animation-in-jetpack-compose-acd11659fdf1
π@androidspb
1 138
Kotlin 2.2 - ΠΠ°ΠΏΠΈΡΡ Π»Π°ΠΉΠ²ΡΡΡΠΈΠΌ Ρ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ Language Evolution Team
Π‘ Π²ΡΡ
ΠΎΠ΄ΠΎΠΌ Kotlin 2.2 ΠΊΠΎΠΌΠ°Π½Π΄Π° JetBrains ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ ΡΠ°Π·Π²ΠΈΠ²Π°ΡΡ ΡΠ·ΡΠΊ, Π΄Π΅Π»Π°Ρ Π΅Π³ΠΎ Π΅ΡΡ ΠΌΠΎΡΠ½Π΅Π΅ ΠΈ ΡΠ΄ΠΎΠ±Π½Π΅Π΅. Π ΡΡΠΎΠΌ ΡΡΠΈΡΠ΅ ΡΠ°Π·ΠΎΠ±ΡΠ°Π»ΠΈ Π½ΠΎΠ²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Kotlin 2.2.
Π‘ΡΠ°Π±ΠΈΠ»ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ:
break ΠΈ continue Π²Π½Π΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°, guard-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½Π°Ρ ΠΈΠ½ΡΠ΅ΡΠΏΠΎΠ»ΡΡΠΈΡ Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ $ ΡΠ΅ΠΏΠ΅ΡΡ ΡΡΠ°Π»ΠΈ ΡΠ°ΡΡΡΡ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ°.
ΠΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π»ΡΡΡΠ΅ ΡΠΏΡΠ°Π²Π»ΡΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΠΌΠΈ ΠΈ ΡΠ΅ΡΠ²ΠΈΡΠ°ΠΌΠΈ, ΡΠΌΠ΅Π½ΡΡΠ°Ρ ΡΠ°Π±Π»ΠΎΠ½Π½ΡΠΉ ΠΊΠΎΠ΄.
ΠΠ»ΠΎΠΆΠ΅Π½Π½ΡΠ΅ typealias Π΄Π΅Π»Π°ΡΡ ΡΠ·ΡΠΊ Π±ΠΎΠ»Π΅Π΅ Π΅Π΄ΠΈΠ½ΠΎΠΎΠ±ΡΠ°Π·Π½ΡΠΌ β Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΎΠ±ΡΡΠ²Π»ΡΡΡ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΡ ΡΠΈΠΏΠΎΠ² ΡΠΎΠ»ΡΠΊΠΎ Π½Π° Π²Π΅ΡΡ
Π½Π΅ΠΌ ΡΡΠΎΠ²Π½Π΅.
ΠΠ½Π½ΠΎΡΠ°ΡΠΈΠΈ Ρ ΡΠ²ΠΎΠΉΡΡΠ² ΡΠ΅ΠΏΠ΅ΡΡ ΠΈΠΌΠ΅ΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ°Π·ΡΠΌΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Π° Π½ΠΎΠ²ΡΠΉ ΡΠ°ΡΠ³Π΅Ρ all ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡ Π°Π½Π½ΠΎΡΠ°ΡΠΈΡ ΡΡΠ°Π·Ρ Π½Π° getter, setter ΠΈ ΠΏΠΎΠ»Π΅ Ρ
ΡΠ°Π½Π΅Π½ΠΈΡ.
Inline value-ΠΊΠ»Π°ΡΡΡ ΡΠ°Π½Π΅Π΅ Π±ΡΠ»ΠΈ ΡΠΈΡΠ΅ΠΉ, ΠΏΠΎΠ½ΡΡΠ½ΠΎΠΉ ΡΠΎΠ»ΡΠΊΠΎ Kotlin, Π½ΠΎ ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΠΎΡΠ²ΠΈΠ»ΡΡ ΡΠΏΠΎΡΠΎΠ± Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡ
ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΈ Π±ΡΠ»ΠΈ Π΄ΡΡΠΆΠ΅Π»ΡΠ±Π½Ρ ΠΊ Java.
ΠΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΠΎ-Π·Π°Π²ΠΈΡΠΈΠΌΠΎΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠΌΠ΅Π½ΡΡΠ°Π΅Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΡΡ
ΠΊΠ²Π°Π»ΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΎΠΊΡΡΠΆΠ°ΡΡΡΡ ΡΠΈΠΏΠΎΠ²ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ°.
ΠΠ΅Π²Π°ΠΆΠ½ΠΎ, Π²Ρ ΠΎΠΏΡΡΠ½ΡΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π½Π° Kotlin ΠΈΠ»ΠΈ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°ΡΠΈΠ½Π°Π΅ΡΠ΅ β ΡΡΠΎ ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ ΡΠ°Π½Ρ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌΠΈ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡΠΌΠΈ ΡΠ·ΡΠΊΠ°.
ΠΈΡΡΠΎΡΠ½ΠΈΠΊ
π@androidspb1 138
ΠΠΎΠΊ-ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅. ΠΠ½Π΄ΡΠ΅ΠΉ Π‘ΡΠΌΠΈΠ½ vs Π ΡΡΠ»Π°Π½ Π₯Π°ΡΠΈΠ·ΠΎΠ²
π₯ Π‘ΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡ Π·Π°ΡΠ»ΡΠΆΠ΅Π½Π½ΡΠΉ Π² Π½Π°ΡΠΈΡ
ΠΊΡΡΠ³Π°Ρ
Π°Π²ΡΠΎΡ Π°Π½Π΄ΡΠΎΠΈΠ΄ ΠΊΡΡΡΠΎΠ² - ΠΠ½Π΄ΡΠ΅ΠΉ Π‘ΡΠΌΠΈΠ½.
ΠΠ° Π³ΠΎΠ΄Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° Π² Π²ΠΈΠ΄Π΅ ΠΎΠ±ΡΡΠ°ΡΡΠΈΡ
ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»ΠΎΠ² Ρ ΠΠ½Π΄ΡΠ΅Ρ ΡΠ²Π½ΠΎ Π΅ΡΡΡ ΡΡΠΎ ΡΠΏΡΠΎΡΠΈΡΡ. ΠΡΠ΄Π΅Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ)
ΠΈΡΡΠΎΡΠ½ΠΈΠΊ
π@androidspb
1 138
Android Interview Questions
ΠΡΠ΅ΠΎΠ±ΡΠ΅ΠΌΠ»ΡΡΠ°Ρ ΠΏΠΎΠ΄Π±ΠΎΡΠΊΠ° ΠΊΠ»Π°ΡΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
Π²ΠΎΠΏΡΠΎΡΠΎΠ² Π΄Π»Ρ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎ Android, ΠΎΡ
Π²Π°ΡΡΠ²Π°ΡΡΠ°Ρ ΠΠΠ, Kotlin, Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΡ, ΠΊΠΎΡΡΡΠΈΠ½Ρ, Ρ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ
, ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅, Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅.
https://github.com/DoggyDoggyDoggy/Android-Interview-Questions
π@androidspb
1 138
ΠΠΎΠ΄Π±ΠΎΡΠΊΠ° ΠΊΠ½ΠΈΠ³ ΠΏΠΎ Java
ΠΡΠ½ΠΎΠ²Ρ Java:
1. "Head First Java" ΠΎΡ ΠΡΡΠΈ Π‘ΡΠ΅ΡΡΠ° ΠΈ ΠΠ΅ΡΡ ΠΠ΅ΠΉΡΡ
ΠΡΠ° ΠΊΠ½ΠΈΠ³Π° ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ ΠΊ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΡΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΡ
ΡΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΠΉ. ΠΠ½Π° ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΡΠ΅Ρ
, ΠΊΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°ΡΠΈΠ½Π°Π΅Ρ ΠΈΠ·ΡΡΠ°ΡΡ Java ΠΈ Ρ
ΠΎΡΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΡΠΎΡΠ½ΡΠ΅ ΠΎΡΠ½ΠΎΠ²Ρ. ΠΠ½ΠΈΠ³Π° Π½Π°ΠΏΠΈΡΠ°Π½Π° Π² Π»Π΅Π³ΠΊΠΎΠΌ ΠΈ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΌ ΡΡΠΈΠ»Π΅, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΠΏΡΠΎΡΠ΅ΡΡ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ ΡΠ²Π»Π΅ΠΊΠ°ΡΠ΅Π»ΡΠ½ΡΠΌ ΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΌ.
2. "Java: A Beginner's Guide" ΠΎΡ ΠΠ΅ΡΠ±Π΅ΡΡΠ° Π¨ΠΈΠ»Π΄ΡΠ°
ΠΠ΅ΡΠ±Π΅ΡΡ Π¨ΠΈΠ»Π΄Ρ β ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠΉ Π°Π²ΡΠΎΡ ΡΡΠ΅Π±Π½ΠΈΠΊΠΎΠ² ΠΏΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΈ Π΅Π³ΠΎ ΠΊΠ½ΠΈΠ³Π° "Java: A Beginner's Guide" ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠ»ΠΈΡΠ½ΡΠΌ ΡΠ΅ΡΡΡΡΠΎΠΌ Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ
. Π ΡΡΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅ ΠΎΠ½ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠ±ΡΡΡΠ½ΡΠ΅Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΈ Java, Π½Π°ΡΠΈΠ½Π°Ρ Ρ ΡΠ°ΠΌΡΡ
ΠΏΡΠΎΡΡΡΡ
ΠΈ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Ρ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠΌΠΈ. ΠΠ½ΠΈΠ³Π° Π½Π°ΠΏΠΈΡΠ°Π½Π° Π² Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΌ ΡΡΠΈΠ»Π΅ ΠΈ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΠΊΠΎΠ΄Π°.
3. "Effective Java" ΠΎΡ ΠΠΆΠΎΡΡΠ° ΠΠ»ΠΎΡ
Π°
Π₯ΠΎΡΡ ΡΡΠ° ΠΊΠ½ΠΈΠ³Π° Π½Π΅ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π΄Π»Ρ Π½ΠΎΠ²ΠΈΡΠΊΠΎΠ², ΠΎΠ½Π° ΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌΡΠΌ ΡΠ΅ΡΡΡΡΠΎΠΌ Π΄Π»Ρ ΡΠ΅Ρ
, ΠΊΡΠΎ Ρ
ΠΎΡΠ΅Ρ ΠΏΠΈΡΠ°ΡΡ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΉ ΠΊΠΎΠ΄ Π½Π° Java. ΠΠΆΠΎΡΡΠ° ΠΠ»ΠΎΡ
Π΄Π΅Π»ΠΈΡΡΡ ΡΠ²ΠΎΠΈΠΌΠΈ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡΠΌΠΈ ΠΈ Π»ΡΡΡΠΈΠΌΠΈ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³ΡΡ Π²Π°ΠΌ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ
ΠΎΡΠΈΠ±ΠΎΠΊ ΠΈ ΡΠ»ΡΡΡΠΈΡΡ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π°.
ΠΡΠΎΠ΄Π²ΠΈΠ½ΡΡΡΠΉ ΡΡΠΎΠ²Π΅Π½Ρ:
1. "Java Concurrency in Practice" ΠΎΡ ΠΡΠ°ΠΉΠ°Π½Π° ΠΠ΅ΡΡΠ° ΠΈ Π΄ΡΡΠ³ΠΈΡ
Π°Π²ΡΠΎΡΠΎΠ²
ΠΡΠ° ΠΊΠ½ΠΈΠ³Π° ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ Π΄Π»Ρ ΡΠ΅Ρ
, ΠΊΡΠΎ Ρ
ΠΎΡΠ΅Ρ ΡΠ³Π»ΡΠ±ΠΈΡΡΡΡ Π² ΡΠ΅ΠΌΡ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡΠΎΡΠ½ΠΎΡΡΠΈ ΠΈ ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π° Java. ΠΠ½Π° ΠΎΡ
Π²Π°ΡΡΠ²Π°Π΅Ρ Π²ΡΠ΅ Π°ΡΠΏΠ΅ΠΊΡΡ, Π½Π°ΡΠΈΠ½Π°Ρ ΠΎΡ Π±Π°Π·ΠΎΠ²ΡΡ
ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΉ ΠΈ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Ρ ΡΠ»ΠΎΠΆΠ½ΡΠΌΠΈ ΠΏΠ°ΡΡΠ΅ΡΠ½Π°ΠΌΠΈ. ΠΠ½ΠΈΠ³Π° Π½Π°ΠΏΠΈΡΠ°Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ ΡΠΊΡΠΏΠ΅ΡΡΠΎΠ², ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ Π΅Ρ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΡΠ΅Π½Π½ΠΎΠΉ.
2. "Clean Code: A Handbook of Agile Software Craftsmanship" ΠΎΡ Π ΠΎΠ±Π΅ΡΡΠ° ΠΠ°ΡΡΠΈΠ½Π°
Π₯ΠΎΡΡ ΡΡΠ° ΠΊΠ½ΠΈΠ³Π° Π½Π΅ ΠΏΠΎΡΠ²ΡΡΠ΅Π½Π° ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Java, ΠΎΠ½Π° ΡΠ²Π»ΡΠ΅ΡΡΡ Π²Π°ΠΆΠ½ΡΠΌ ΡΠ΅ΡΡΡΡΠΎΠΌ Π΄Π»Ρ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°. Π ΠΎΠ±Π΅ΡΡ ΠΠ°ΡΡΠΈΠ½ Π΄Π΅Π»ΠΈΡΡΡ ΡΠ²ΠΎΠΈΠΌΠΈ ΠΏΡΠΈΠ½ΡΠΈΠΏΠ°ΠΌΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠΈΡΡΠΎΠ³ΠΎ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°. ΠΠ½ΠΈΠ³Π° Π½Π°ΠΏΠΈΡΠ°Π½Π° Π² Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΌ ΡΡΠΈΠ»Π΅ ΠΈ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΠΊΠΎΠ΄Π°.
3. "Java Performance: The Definitive Guide" ΠΎΡ Π‘ΠΊΠΎΡΡΠ° ΠΡΠΊΡΠ°
ΠΡΠ° ΠΊΠ½ΠΈΠ³Π° ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π²Π°ΡΠΈΡ
Java-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π‘ΠΊΠΎΡΡ ΠΡΠΊΡ ΠΎΠ±ΡΡΡΠ½ΡΠ΅Ρ, ΠΊΠ°ΠΊ ΠΈΠ·ΠΌΠ΅ΡΡΡΡ ΠΈ ΡΠ»ΡΡΡΠ°ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΊΠΎΠ΄Π°. ΠΠ½ΠΈΠ³Π° Π½Π°ΠΏΠΈΡΠ°Π½Π° Π² Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΌ ΡΡΠΈΠ»Π΅ ΠΈ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΠΊΠΎΠ΄Π°.
π@androidspb
1 138
Π₯ΡΠΎΠ½ΠΈΠΊΠ° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ API ΡΠΎΠ½ΠΎΠ²ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Π² Android
ΠΡΠΈΠ²Π΅Ρ! ΠΠ΅Π½Ρ Π·ΠΎΠ²ΡΡ ΠΠ»Π΅ΠΊΡΠ΅ΠΉ, Ρ ΡΠ°Π±ΠΎΡΠ°Ρ Android-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ Π² ΠΠ±Π»Π°ΠΊΠ΅ Mail. ΠΠ°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π²Π°ΠΆΠ½ΡΡ Π·Π°Π΄Π°ΡΡ β Ρ
ΡΠ°Π½ΠΈΡ Π²ΠΎΡΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΌΠ΅ΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ Π² ΡΠΎΠ½Π΅, ΡΡΠΎΠ±Ρ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°Π΄ΡΠΆΠ½ΠΎ Ρ
ΡΠ°Π½ΠΈΡΡ ΡΠ΅ ΡΠ°ΠΌΡΠ΅ Π²ΠΎΡΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΡ, Π½ΠΎ ΠΈ Π±ΡΡΡΡΠΎ ΠΈΡ
Π·Π°Π³ΡΡΠΆΠ°ΡΡ, ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈ Π΄Π΅Π»ΠΈΡΡΡΡ. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ ΡΠ°ΡΡΠΊΠ°ΠΆΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΌΡ ΠΏΡΠΈΡΠ»ΠΈ ΠΊ Π½Π°ΡΠΈΠΌ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌ ΡΠΎΠ½ΠΎΠ²ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Π² Android.
https://habr.com/ru/companies/vk/articles/916466/
π@androidspb
