Π Π°Π·Π½ΠΎΠ΅

Java android: Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Android. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ для Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Android. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ для Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²

Π‘Ρ€Π΅Π΄ΠΈ программистов Π½Π° Java Ρ‚ΠΎ ΠΈ Π΄Π΅Π»ΠΎ ΡΠ»Ρ‹ΡˆΠ½Ρ‹ Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€Ρ‹ ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΠΎΠ΄ Android. ИмСнно Android Π΄Π΅Ρ€ΠΆΠΈΡ‚ Java Π½Π° ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΏΠ»Π°Π½Π΅ Π² послСдниС нСсколько Π»Π΅Ρ‚. Насколько ΠΆΠ΅ Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΈΠ»ΠΈ Π·Π½Π°Ρ‚ΡŒ Android для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Π½Π° Java? Ну, зависит ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, нравится Π»ΠΈ Π²Π°ΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π»ΠΈ Π²Ρ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ вашими прилоТСниями пользовалось мноТСство людСй. Если Π΄Π°, Ρ‚ΠΎ Android даст Π²Π°ΠΌ эту Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ. ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ΠΎΠ² ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Android исчисляСтся ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π°ΠΌΠΈ ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ расти быстрСС, Ρ‡Π΅ΠΌ число iPhone с iOS. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ для Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΎΡ‡Π΅Π½ΡŒ Π΄Π°ΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ смысл Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄ Android, Ρ‡Π΅ΠΌΡƒ эта ΡΡ‚Π°Ρ‚ΡŒΡ ΠΊΠ°ΠΊ Ρ€Π°Π· ΠΈ посвящСна. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, это ΠΎΠ΄Π½Π° ΠΈΠ· Ρ…ΠΎΡ€ΠΎΡˆΠΈΡ… ΠΏΡ€ΠΈΡ‡ΠΈΠ½ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Java. Из этого ΠΎΠ±Π·ΠΎΡ€Π° Π²Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅ основы Ρ€Π°Π±ΠΎΡ‚Ρ‹ Android, Π±Π΅Π· Π»ΠΈΡˆΠ½ΠΈΡ… подробностСй, Π½ΠΎ Π² достаточном объСмС.

Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Android. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ для Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² - 1Одно ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎΠ΅ прСимущСство Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Π½Π°Π΄ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ – Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ API Android ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠ΅ Π½Π° API языка Java, ΠΈ Android ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ссли Π½Π΅ всС доступныС Π² J2SE SDK классы, Ρ‚ΠΎ, ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅, Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹Π΅. Π•Ρ‰Π΅ ΠΎΠ΄Π½ΠΎ прСимущСство: Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠΎΠ΄ Android Ρ‚Π΅ ΠΆΠ΅ инструмСнты, Ρ‡Ρ‚ΠΎ ΠΈ для Java. НапримСр, IDE Eclipse, вСдь Google прСдоставляСт для Eclipse ΠΏΠ»Π°Π³ΠΈΠ½ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Android. Π’ Π½Π°Ρ‡Π°Π»Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Android, ΠΈΠΌΠ΅Π΅Ρ‚ смысл Π·Π°Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π² Ρ‚Π°ΠΊΠΈΠ΅ руководства, ΠΊΠ°ΠΊ Head First Android Development ΠΈ Android in Action (3-Π΅ ΠΈΠ·Π΄.) – Π΄Π²Π΅ Π»ΡƒΡ‡ΡˆΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ Android для Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ².
Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Android. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ для Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² - 2 Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Android. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ для Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² - 3Напротив, Ссли Π²Ρ‹ Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π·Π°Π½ΡΡ‚ΡŒΡΡ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ ΠΏΠΎΠ΄ iOS, вас ΠΆΠ΄Ρ‘Ρ‚ нСпростой процСсс изучСния языка Objective-C ΠΈ SDK iOS. МнС каТСтся, ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° Objective-C ΠΈ iOS ΠΈΠΌΠ΅Π΅Ρ‚ большС смысла для C++-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°, Ρ‡Π΅ΠΌ для «дТависта». Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ классичСская Π²ΠΎΠΉΠ½Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Java ΠΈ C++ продолТаСтся благодаря Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для смартфонов. Π’ любом случаС Π΄Π°Π²Π°ΠΉΡ‚Π΅ разбСрСмся Π² особСнностях Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ функционирования Android.

Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Android?

Как я ΡƒΠΆΠ΅ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π», Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС Android для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Java. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ прилоТСния для Android с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ прСдоставляСмого Google API Java, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°Ρ‚Π΅ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ скомпилирован Π² Ρ„Π°ΠΉΠ»Ρ‹ классов. На этом ΡΡ…ΠΎΠΆΠ΅ΡΡ‚ΡŒ заканчиваСтся. Android Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ Java (JVM) для выполнСния Ρ„Π°ΠΉΠ»ΠΎΠ² классов, вмСсто этого, Π² Π½Ρ‘ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ машина Dalvik, Π½Π΅ ΡΠ²Π»ΡΡŽΡ‰Π°ΡΡΡ истинной JVM ΠΈ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π°Ρ с Java-Π±Π°ΠΉΡ‚ΠΊΠΎΠ΄ΠΎΠΌ. Для выполнСния Π½Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠ°ΡˆΠΈΠ½Π°Ρ… Dalvik, Ρ„Π°ΠΉΠ»Ρ‹ классов ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ DEX (Dalvik EXecutable – исполняСмыС Ρ„Π°ΠΉΠ»Ρ‹ Dalvik). ПослС прСобразования Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ DEX, Ρ„Π°ΠΉΠ»Ρ‹ классов вмСстС с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ рСсурсами ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ Π² ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Android (APK) для распространСния ΠΈ инсталляции Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… устройствах.

Π“Π»Π°Π²Π½ΠΎΠ΅, Ρ‡Ρ‚ΠΎ слСдуСт Π·Π½Π°Ρ‚ΡŒ: Π² основС Π±Π°Π·ΠΎΠ²ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ классов Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Dalvik Π»Π΅ΠΆΠΈΡ‚ подмноТСство ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Apache Harmony, вслСдствиС Ρ‡Π΅Π³ΠΎ ΠΎΠ½Π° Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ всё API J2SE. Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ для написания ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΎΠ΄ Android IDE Eclipse, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ особо Π½Π΅ Π²ΠΎΠ»Π½ΠΎΠ²Π°Ρ‚ΡŒΡΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ‚Π°ΠΌ Π΅ΡΡ‚ΡŒ Π°Π²Ρ‚ΠΎΠ΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ разбСрСмся, ΠΊΠ°ΠΊ прилоТСния Android Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π½Π° устройствах.

Как прилоТСния Android Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π½Π° устройствах?

Если Π²Π°ΠΌ Π·Π½Π°ΠΊΠΎΠΌΠ° опСрационная систСма Linux ΠΈ понятиС процСсса, Π²Π°ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ нСслоТно ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Android-прилоТСния. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, опСрационная систСма Android присваиваСт ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. ПослС запуска ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Android, ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΈΠ· Π½ΠΈΡ… выполняСтся Π² своём процСссС, Π² своСй собствСнной Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ машинС.
Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Android. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ для Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² - 4По ΠΌΠ΅Ρ€Π΅ нСобходимости, опСрационная систСма Android управляСт запуском ΠΈ остановом процСссов ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ всС прилоТСния Android Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°, Π½ΠΎ, разумССтся, ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ‚ΡŒ доступ ΠΊ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΌ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ систСмным рСсурсам.

Если Π²Ρ‹ Π·Π½Π°ΠΊΠΎΠΌΡ‹ с Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, допустим, Π² J2ME, Ρ‚ΠΎ, навСрняка, ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°Π»ΠΈΡΡŒ с понятиСм ΠΏΡ€Π°Π² доступа (permissions). ΠŸΡ€ΠΈ установкС ΠΈΠ»ΠΈ запускС прилоТСния Android, ΠΎΠ½ΠΎ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ ΠΏΡ€Π°Π²Π°, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для доступа ΠΊ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Ρƒ, Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅ ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ систСмным рСсурсам. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ явным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ прСдоставляСт эти ΠΏΡ€Π°Π²Π°, ΠΈΠ½Π°Ρ‡Π΅ Π² дСйствии Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΊΠ°Π·Π°Π½ΠΎ.

ВсС эти ΠΏΡ€Π°Π²Π° доступа ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π² Ρ„Π°ΠΉΠ»Π΅ манифСста прилоТСния Android. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Java, манифСст Android прСдставляСт собой XML-Ρ„Π°ΠΉΠ», Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ пСрСчислСны всС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ прилоТСния ΠΈ настройки для Π½ΠΈΡ….

Π§Π΅Ρ‚Ρ‹Ρ€Π΅ основных ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° прилоТСния Android: активности, сСрвисы, поставщики ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° ΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΎΠ²Π΅Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊΠΈ (broadcast receivers). Из Π½ΠΈΡ… Ρ‡Π°Ρ‰Π΅ всСго Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ активности, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ экранной Ρ„ΠΎΡ€ΠΌΠ΅ прилоТСния Android. НапримСр, Π² ΠΈΠ³Ρ€Π΅ для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Android ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСсколько экранов: для Π²Ρ…ΠΎΠ΄Π° Π² систСму, Ρ€Π΅ΠΊΠΎΡ€Π΄ΠΎΠ², инструкций ΠΈ экран самой ΠΈΠ³Ρ€Ρ‹. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· этих элСмСнтов соотвСтствуСт Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌ активностям Π² вашСм ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.
Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Android. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ для Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² - 5Как ΠΈ Π² Java, Π² ОБ Android Ρ…ΠΎΡ€ΠΎΡˆΠΎ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° выполняСт Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ вмСсто Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, создаСт ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ активностСй. Π—Π° ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡŽ активностСй ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ класс System. Если Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ, достаточно Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ startActivity() с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ Intent Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°. Π’ ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° этот Π²Ρ‹Π·ΠΎΠ², класс System ΠΈΠ»ΠΈ создаст Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ активности ΠΈΠ»ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ старый.

Аналогично сборкС мусора Π² языкС Java, ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‰Π΅ΠΉ Π·Π° Ρ‡Ρ€Π΅Π·Π²Ρ‹Ρ‡Π°ΠΉΠ½ΠΎ Π²Π°ΠΆΠ½ΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ использования памяти, Android управляСт запуском, остановом, созданиСм ΠΈ ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠœΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ слишком сильно ΠΈΡ… ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚, Π½ΠΎ это Π½Π΅ Ρ‚Π°ΠΊ. Android прСдоставляСт события ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ для Π²ΠΌΠ΅ΡˆΠ°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π° Π² этот процСсс.

Π’ΠΎΡ‚ ΠΈ всё ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Android. Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ, бСзусловно, ΠΈΠΌΠ΅Π΅Ρ‚ смысл ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ Android, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ эта систСма ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Java, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π²Ρ‹ смоТСтС Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ своими знаниями ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊ программирования Π½Π° Java, ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½Π°ΠΌΠΈ проСктирования ΠΈ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΡ‹ΠΌΠΈ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°ΠΌΠΈ для создания Ρ…ΠΎΡ€ΠΎΡˆΠΈΡ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Android. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π²Π°ΠΌ придСтся ΠΏΡ€ΠΈΡΠΏΠΎΡΠΎΠ±ΠΈΡ‚ΡŒΡΡ ΠΊ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ спСцифичСским для Android Π²Π΅Ρ‰Π°ΠΌ, Π½ΠΎ это ΠΏΡ€ΠΈΠ΄Ρ‘Ρ‚ само собой со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ. Π˜Ρ‚Π°ΠΊ, Ρ‡Π΅Π³ΠΎ ΠΆΠ΅ Π²Ρ‹ ΠΆΠ΄Ρ‘Ρ‚Π΅? Π’ΠΏΠ΅Ρ€Ρ‘Π΄, ΠΈΠ·ΡƒΡ‡Π°ΠΉΡ‚Π΅ Android ΠΈ ΠΏΠΈΡˆΠΈΡ‚Π΅ вашС ΠΏΠ΅Ρ€Π²ΠΎΠ΅ Android-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ HelloWorld! НаконСц, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Π·Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ, посвящСнныС основам Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° Android, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Head First Android Development – Π»ΡƒΡ‡ΡˆΡƒΡŽ ΠΈΠ· посвящСнных Android ΠΊΠ½ΠΈΠ³.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: Introduction of How Android Works for Java Programmers

Java. ЭкспрСсс-курс

Π‘Ρ‚Π°Ρ‚ΡŒΡ ΠΏΡ€ΠΎΠΏΠ»Π°Ρ‡Π΅Π½Π° кошками — всСмирно извСстными производитСлями котят.

Если ΡΡ‚Π°Ρ‚ΡŒΡ Π²Π°ΠΌ ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ»Π°ΡΡŒ, Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚.

ΠžΡ‡Π΅Π½ΡŒ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ программисты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ для Android, ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‚ Π·Π° ΠΏΠ»Π΅Ρ‡Π°ΠΌΠΈ ΠΎΠΏΡ‹Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ языками программирования. И, ΠΎΠ½ΠΈ Π½Π° Ρ…ΠΎΠ΄Ρƒ ΡƒΠΆΠ΅ Ρ€Π°Π·Π±ΠΈΡ€Π°ΡŽΡ‚ΡΡ с особСнностями Java. Π’Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅, Ρ‡Ρ‚ΠΎ Java Π² своСм синтаксисС ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆ Π½Π° C++, C#, PHP ΠΈ Ρ‚.Π΄.

Основой для Π»ΠΎΠ³ΠΎΡ‚ΠΈΠΏΠ° языка Java послуТил этот рисунок, Π½ΠΎ Π΄ΠΈΠ·Π°ΠΉΠ½Π΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΏΠΎΡ€ΡƒΡ‡ΠΈΠ»ΠΈ пСрСвСсти рисунок Π² Π²Π΅ΠΊΡ‚ΠΎΡ€, Π±Ρ‹Π» ΠΏΠΎΡ‚ΠΎΠΌΠΊΠΎΠΌ ΠžΡΡ‚Π°ΠΏΠ° Π‘Π΅Π½Π΄Π΅Ρ€Π°, поэтому ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»Π°ΡΡŒ какая-Ρ‚ΠΎ фигня.

А Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚Π΅ΠΌ, ΠΊΡ‚ΠΎ Ρ…ΠΎΡ‡Π΅Ρ‚ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ для Android, Π½ΠΎ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π» Ρ€Π°Π½ΡŒΡˆΠ΅? ΠŸΠΎΠ½ΡΡ‚Π½ΠΎ, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ сначала ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΡƒΡŽ-Ρ‚ΠΎ Π±Π°Π·Ρƒ — ΠΊΡƒΠΏΠΈΡ‚ΡŒ ΠΊΠ½ΠΈΠ³Ρƒ, ΠΏΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΡΡ‚Π°Ρ‚ΡŒΠΈ. Но Ссли Ρƒ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ° ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ ΠΎΠ±Ρ‰ΠΈΠ΅ прСдставлСния ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ (вСдь Π² школС ΠΈΠ·ΡƒΡ‡Π°ΡŽΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΡƒ), Ρ‚ΠΎ ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π±Ρ‹ Π²Π°ΠΌ Π½Π΅ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ для своСго любимого Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π° прямо сСйчас. Π’ этом нСбольшом экспрСсс-курсС я ΠΏΠΎΡΡ‚Π°Ρ€Π°ΡŽΡΡŒ Π΄Π°Ρ‚ΡŒ нСбольшиС ΡƒΡ€ΠΎΠΊΠΈ ΠΏΠΎ основным понятиям Java. А для экспСримСнтов Π½Π°ΠΌ понадобится какая-Ρ‚ΠΎ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ учСбная Ρ„ΠΎΡ€ΠΌΠ°, скаТСм экран с тСкстовым ΠΏΠΎΠ»Π΅ΠΌ, тСкстовой ΠΌΠ΅Ρ‚ΠΊΠΎΠΉ ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ. ΠœΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ вычислСния, Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π°ΠΆΠΈΠΌΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, сСйчас ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ язык Java Π²Π°ΠΌ каТутся Ρ‡Π΅ΠΌ-Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ слоТным ΠΈ ΡΡ‚Ρ€Π°ΡˆΠ½Ρ‹ΠΌ. А Π²Ρ‹ Ρ‚Π°ΠΊΠΎΠΉ малСнький ΠΈ Π±Π΅Π·Π·Π°Ρ‰ΠΈΡ‚Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ освоСния курса Java.

ΠŸΠ΅Ρ€Π΅Π±ΠΎΡ€ΠΎΠ² страх ΠΈ ΠΈΠ·ΡƒΡ‡ΠΈΠ² всС ΡƒΡ€ΠΎΠΊΠΈ курса, Π²Ρ‹ станСтС ΡƒΠ²Π΅Ρ€Π΅Π½Π½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ для своСго Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π°. И станСтС настоящим Π³ΡƒΡ€Ρƒ программирования.

Но, сначала, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Hello Kitty. Если это испытаниС Π²Ρ‹ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΏΡ€ΠΎΡˆΠ»ΠΈ, Π·Π½Π°Ρ‡ΠΈΡ‚ Ρƒ вас Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΅ΡΡ‚ΡŒ интСрСс ΠΊ Π΄Π°Π½Π½ΠΎΠΉ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ. ΠžΡΡ‚Π°Π»ΠΎΡΡŒ совсСм Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ, Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΡƒΡ‡Π΅Π±Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΈΠ»ΠΈ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ Ρƒ мСня ΠΎΠ±Ρ€Π°Π·Π΅Ρ†. И ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ, ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ, ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ…

На ΠΏΠ΅Ρ€Π²Ρ‹Ρ… ΠΏΠΎΡ€Π°Ρ… ΡΡ‚Π°Ρ‚ΡŒΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π² Ρ€Π°Π·Π½ΠΎΠ±ΠΎΠΉ. Π‘ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ, надСюсь, всё устаканится ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ Π² Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅, начиная с Π°Π·ΠΎΠ² ΠΈ заканчивая Π±ΠΎΠ»Π΅Π΅ слоТными ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ.

ПишСм ΡƒΡ‡Π΅Π±Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ

ΠžΡΠ½ΠΎΠ²Ρ‹

Π’ΠΈΠΏΡ‹

ΠŸΠΎΠ±ΠΈΡ‚ΠΎΠ²Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ сравнСния

ЛогичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹

Π›ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ if

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ switch

Π¦ΠΈΠΊΠ» while

Π¦ΠΈΠΊΠ» do-while

Π¦ΠΈΠΊΠ» for

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° break, continue, return

ΠšΠ»Π°ΡΡΡ‹ ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹

Класс Object

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹

Π’ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ. Π‘ΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ доступа

ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово static

Π’Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ ΠΈ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ классы

ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€

Π¨Π°Π±Π»ΠΎΠ½ Builder

Π¨Π°Π±Π»ΠΎΠ½ Singleton

НаслСдованиС

АбстрактныС классы ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹

ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹

Π‘Π»ΡƒΡˆΠ°Ρ‚Π΅Π»ΠΈ

Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ

ΠŸΠΎΡ‚ΠΎΠΊΠΈ. Класс Thread ΠΈ интСрфСйс Runnable

ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΡ enum

ΠžΠ±ΠΎΠ±Ρ‰Π΅Π½ΠΈΡ (Generic)

РСкурсия

Класс String

ΠšΠ»Π°ΡΡΡ‹ StringBuffer ΠΈ StringBuilder

Класс TextUtils (ΠΏΠ°ΠΊΠ΅Ρ‚ android.text)

Класс Scanner

Класс Math

Β Β BigDecimal ΠΈ BigInteger

ΠšΠ»Π°ΡΡΡ‹ Date, Calendar, DateFormat

Класс Currency

Locale

ΠœΠ°ΡΡΠΈΠ²Ρ‹

Β Β ΠœΠ°ΡΡΠΈΠ²Ρ‹.Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° (закрытая Π·ΠΎΠ½Π°)

Β Β ΠœΠ°ΡΡΠΈΠ²Ρ‹.ΠŸΠ΅Ρ€Π΅Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Π΅ΠΌ массив (закрытая Π·ΠΎΠ½Π°)

Stack

ΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ

Β ArrayList

Β LinkedList

ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π°: Set, HashSet, LinkedHashSet, TreeSet

Map (ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅)

Β Β HashMap

Β Β LinkedHashMap

Β Β ArrayMap ΠΈ SparseArray

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ Comparable

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ Comparator

БистСма Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π°

  Класс File

  Класс InputStream

  Класс PrintStream

ΠšΠ»Π°ΡΡΡ‹ NIO

Random

Π’Π°ΠΉΠΌΠ΅Ρ€ — классы Timer ΠΈ TimerTask

ΠŸΠ°ΠΊΠ΅Ρ‚ java.net

ΠŸΠ°ΠΊΠ΅Ρ‚ java.util.concurrent

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° событий

РСгулярныС выраТСния

Java 7. Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ Path

Новинки Java 8

Β Β Java 8. Лямбды

Β Β Java 8. Stream API

Β Β Java 8. Optional

Β Β Java 8. Date ΠΈ Time API

Β Β Java 8. StringJoiner

ПишСм красивый ΠΊΠΎΠ΄

JOptionPane

НСобработанныС записи

Π›ΠΈΡˆΠ½Π΅Π΅

assert

native

strictfp

Π—Π°Π΄Π°Ρ‡Π½ΠΈΠΊ

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒ свои знания, Ρ€Π΅ΡˆΠΈΠ² Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π° Π·Π½Π°Π½ΠΈΠ΅ Java.

Книги

Π˜Π·ΡƒΡ‡Π°Π΅ΠΌ Java

Новая толстая ΠΊΠ½ΠΈΠ³Π° Π·Π° 2020 Π³ΠΎΠ΄. Книги ΠΈΠ· этой сСрии Ρ…ΠΎΡ€ΠΎΡˆΠΎ сСбя Π·Π°Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π»ΠΈ, поэтому стоит ΠΏΡ€ΠΈΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒΡΡ.

Π—Π°ΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠ½ΠΈΠ³Ρƒ

Π›Π΅Π³ΠΊΠΈΠΉ способ Π²Ρ‹ΡƒΡ‡ΠΈΡ‚ΡŒ Java

Будя ΠΏΠΎ оглавлСнию, Ρ‚Π°ΠΌ Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ с ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΉ Java ΠΈ ΠΏΠΎΠ΄ Android. А Π½Π° ΠΎΠ±Π»ΠΎΠΆΠΊΠ΅ ΠΊΠΎΡ‚ΠΈΠΊ!

Π—Π°ΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠ½ΠΈΠ³Ρƒ

Head First. ΠŸΠ°Ρ‚Ρ‚Π΅Ρ€Π½Ρ‹ проСктирования

Π”ΠΎΠ²ΠΎΠ»ΡŒΠ½ΠΎ интСрСсная ΠΊΠ½ΠΈΠ³Π°, которая пытаСтся ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ слоТныС прилоТСния ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ извСстных ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½ΠΎΠ². Π’ ΠΊΠ½ΠΈΠ³Π΅ постоянно встрСчаСтся класс Cat — ΠΆΠΈΡ€Π½Ρ‹ΠΉ плюс Π°Π²Ρ‚ΠΎΡ€Ρƒ.

Ѐилософия Java

Если Π½Π° Ρ„ΠΎΡ€ΡƒΠΌΠ΅ Π²Ρ‹ попроситС Π½Π°Π·Π²Π°Ρ‚ΡŒ самыС Π»ΡƒΡ‡ΡˆΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΡŽ Java, Ρ‚ΠΎ Π² Ρ‚Ρ€ΠΎΠΉΠΊΡƒ Π»ΠΈΠ΄Π΅Ρ€ΠΎΠ² ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠΏΠ°Π΄Π΅Ρ‚ ΠΊΠ½ΠΈΠ³Π° Ѐилософия Java (Thinking Java) ΠΎΡ‚ Π‘Ρ€ΡŽΡΠ° ЭккСля. Данная ΠΊΠ½ΠΈΠ³Π° Π΄Π°ΠΆΠ΅ Π² России Π²Ρ‹Π΄Π΅Ρ€ΠΆΠ°Π»Π° Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ издания, Ρ‡Ρ‚ΠΎ ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚. Π£ΠΆΠ΅ с ΠΏΠ΅Ρ€Π²Ρ‹Ρ… страниц Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ «Π‘лагодарности» Π°Π²Ρ‚ΠΎΡ€, пСрСчисляя своих Π΄Ρ€ΡƒΠ·Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³Π°Π»ΠΈ Π΅ΠΌΡƒ Π² написании ΠΊΠ½ΠΈΠ³ΠΈ, ΠΏΠΈΡˆΠ΅Ρ‚:


Кошка Молли часто сидСла Ρƒ мСня Π½Π° колСнях, ΠΏΠΎΠΊΠ° я Ρ€Π°Π±ΠΎΡ‚Π°Π» Π½Π°Π΄ ΠΊΠ½ΠΈΠ³ΠΎΠΉ. Π’Π°ΠΊ ΠΎΠ½Π° вносила свой Ρ‚Π΅ΠΏΠ»Ρ‹ΠΉ, ΠΏΡƒΡˆΠΈΡΡ‚Ρ‹ΠΉ Π²ΠΊΠ»Π°Π΄ Π² мою Ρ€Π°Π±ΠΎΡ‚Ρƒ.

НСуТСли послС Ρ‚Π°ΠΊΠΈΡ… слов Π²Ρ‹ всё Π΅Ρ‰Ρ‘ ΡΠΎΠΌΠ½Π΅Π²Π°Π΅Ρ‚Π΅ΡΡŒ Π² полСзности этой ΠΊΠ½ΠΈΠ³ΠΈ? Π‘Π΅Π³ΠΎΠΌ Π² ΠΌΠ°Π³Π°Π·ΠΈΠ½!

Java. ПолноС руководство

ΠžΡ‡Π΅Π½ΡŒ толстая ΠΊΠ½ΠΈΠ³Π° (Π±ΠΎΠ»Π΅Π΅ 1000 страниц) извСстного Π°Π²Ρ‚ΠΎΡ€Π° Π“Π΅Ρ€Π±Π΅Ρ€Ρ‚Π° Π¨ΠΈΠ»Π΄Ρ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΈΡˆΠ΅Ρ‚, Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅, Π½Π° всСх языках программирования Π² ΠΌΠΈΡ€Π΅. Π’ Π΅Π³ΠΎ ΠΊΠ½ΠΈΠ³Π΅ Ρ‚ΠΎΠΆΠ΅ ΠΈΠ½ΠΎΠ³Π΄Π° ΡƒΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‚ΡΡ кошки. НапримСр, ΠΏΡ€ΠΈ объяснСнии Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π° класса, ΠΎΠ½ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊΠ»Π°ΡΡΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΆΠΈΠ²ΠΎΡ‚Π½ΠΎΠ³ΠΎ ΠΌΠΈΡ€Π° ΠΈ вспоминаСт ΠΏΡ€ΠΎ отряд ΠΊΠΎΡˆΠ°Ρ‡ΡŒΠΈΡ…. Но, ΠΏΠΎΡ…ΠΎΠΆΠ΅, ΠΎΠ½ большС тяготССт ΠΊ собакам ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² с Π½ΠΈΠΌΠΈ приводится большС. А Ρ„Ρ€Π°Π·Π° «Π•ΡΠ»ΠΈ собака ΠΎΡ‰ΡƒΡ‚ΠΈΡ‚ Π·Π°ΠΏΠ°Ρ… кошки, ΠΎΠ½Π° Π·Π°Π»Π°Π΅Ρ‚ ΠΈ погонится Π·Π° Π½Π΅ΠΉ…» ΠΌΠ½Π΅ Π½Π΅ ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ»Π°ΡΡŒ. Π‘Ρ‚ΠΎΠΈΡ‚ Π»ΠΈ ΠΏΠΎΠΊΡƒΠΏΠ°Ρ‚ΡŒ Ρ‚Π°ΠΊΡƒΡŽ ΠΊΠ½ΠΈΠ³Ρƒ?

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅

Π€ΠΎΡ€ΡƒΠΌ

Processing

Π Π΅ΠΊΠ»Π°ΠΌΠ°

Java vs Kotlin для Android: мнСния Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² / Π₯Π°Π±Ρ€

Π’ опросах Stack Overflow Π² 2018 Π³ΠΎΠ΄Ρƒ 45,3% рСспондСнтов Π½Π°Π·Ρ‹Π²Π°Π»ΠΈ Java самым популярным языком программирования, Π° Kotlin ΠΎΡ‚Π΄Π°Π»ΠΈ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚Π΅Π½ΠΈΠ΅ всСго 4,5% Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ². Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π² ΠΌΠ°Π΅ 2019 Π² Google объявили ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π½Ρ‹ΠΌ языком программирования ΠΈΠΌΠ΅Π½Π½ΠΎ Kotlin. ΠšΠΎΡ€ΠΏΠΎΡ€Π°Ρ†ΠΈΡ Π½Π΅ ΠΏΡ€ΠΈΠ·Ρ‹Π²Π°Π»Π° ΠΎΡ‚ΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ Π‘++ ΠΈ Java, Π½ΠΎ споры ΠΌΠ΅ΠΆΠ΄Ρƒ программистами Ρ€Π°Π·Π³ΠΎΡ€Π΅Π»ΠΈΡΡŒ Π΅Ρ‰Π΅ ΠΆΠ°Ρ€Ρ‡Π΅.

НСтология ΡƒΠ·Π½Π°Π»Π° Ρƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², ΠΊΠ°ΠΊΠΎΠΉ язык программирования ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΈ ΠΊΠ°ΠΊΠΈΠΌ видят Π±ΡƒΠ΄ΡƒΡ‰Π΅Π΅ Java ΠΈ Kotlin.

«Основной ΠΏΠΎΡ‚ΠΎΠΊ останСтся Π½Π° Java, Π° Kotlin Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для быстрой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈΒ»


Π”ΠΌΠΈΡ‚Ρ€ΠΈΠΉ ΠšΠ°Ρ‡Π°Π»ΠΎΠ², Π²Π΅Π΄ΡƒΡ‰ΠΈΠΉ программист Kelly IT Solutions

КакиС языки Π·Π½Π°Π΅Ρ‚. Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ я ΠΈΠ·ΡƒΡ‡Π°Π» языки Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π½ΠΎ Π² ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π·Π°Ρ…ΠΎΡ‚Π΅Π» Π·Π°Π½ΡΡ‚ΡŒΡΡ ΠΈ мобильной Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ Ρ‚ΠΎΠΆΠ΅. Π― Π½Π°Ρ‡Π°Π» ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ для Android ΠΈ освоил язык Java Π² Ρ‚ΠΎΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠΌ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹Π΅ прилоТСния, Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅, ΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΌΠ°Ρ€ΠΊΠ΅Ρ‚Π΅. Π­Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ Π΅Ρ‰Π΅ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° Kotlin Ρ‚ΠΎΠ»ΡŒΠΊΠΎ появился ΠΈ Π½Π΅ Π±Ρ‹Π» извСстСн ΡˆΠΈΡ€ΠΎΠΊΠΎΠΌΡƒ ΠΊΡ€ΡƒΠ³Ρƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ².

КакиС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚. БСйчас ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ я ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡΡŒ ΠΈΠΌΠ΅Π½Π½ΠΎ Java. Для Π½Π΅Π³ΠΎ доступно ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, Π΅ΡΡ‚ΡŒ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Android Studio Π΅Π³ΠΎ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΉ Π±ΡƒΠΊΠ²Π΅, ΠΈ ΠΊΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΈΡΠ°Ρ‚ΡŒΡΡ сам Π·Π° тСбя. Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ.

Π’ ΠΌΠΎΠ΅ΠΉ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ Π½Π΅ Π±Ρ‹Π»ΠΎ Ρ‚Π°ΠΊΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎΡΡŒ Π·Π½Π°Π½ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ языка. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ достаточно Java, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π½Π° Π½Π΅ΠΌ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π² ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅ Π»ΡŽΠ±ΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ. ЕдинствСнноС, стоит ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ ограничСния самой ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Android. ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΊΠΎΠΉ Π±Ρ‹ Π½ΠΈ Π±Ρ‹Π» язык, всС ограничСния Ρ€Π°Π½ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ·Π΄Π½ΠΎ ΡƒΠΏΠΈΡ€Π°ΡŽΡ‚ΡΡ Π² ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. На ΠΌΠΎΠΉ взгляд, Π½Π΅Ρ‚ большой Ρ€Π°Π·Π½ΠΈΡ†Ρ‹, Π½Π° ΠΊΠ°ΠΊΠΎΠΌ языкС Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ Π·Π°Π΄Π°Ρ‡Ρƒ, Π³Π»Π°Π²Π½ΠΎΠ΅ Π½Π°ΠΉΡ‚ΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°Π΅Ρ‚ Java. На Π½Π΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ бСсплатныС сСрвисы, свои ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ API, ΠΏΠΈΡΠ°Ρ‚ΡŒ сайты, сСрвСра, ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ прилоТСния. Π­Ρ‚ΠΎ ΠΏΠΎ сути ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ язык, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ большоС количСство ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΈ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ прилоТСния. К Π½Π΅ΠΌΡƒ Π΅ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Π½Π°Ρ€Π°Π±ΠΎΡ‚ΠΎΠΊ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ. А Π΅Ρ‰Π΅ β€” большоС сообщСство, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ всСгда Π³ΠΎΡ‚ΠΎΠ²ΠΎ ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ Π½Π° вопросы ΠΈ ΠΏΠΎΠΌΠΎΡ‡ΡŒ.

О противостоянии ΠΈ Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ языков. Kotlin β€” ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎ, интСрСсный шаг Π²ΠΏΠ΅Ρ€Π΅Π΄, Π½ΠΎ Π½Π° ΠΌΠΎΠΉ взгляд, ΠΎΠ½ Π½Π΅ нСсСт Π² сСбС ΠΊΠ°ΠΊΠΈΡ…-Ρ‚ΠΎ Π½ΠΎΠ²Ρ‹Ρ… ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ² ΠΈ ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌ. ΠŸΡ€ΠΎΡΡ‚ΠΎ сокращаСт врСмя написания ΠΊΠΎΠ΄Π° Π·Π° счСт Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΡ… конструкций. ΠŸΡ€ΠΈ этом Π² основС всС Ρ€Π°Π²Π½ΠΎ Π»Π΅ΠΆΠΈΡ‚ Ρ‚Π° ΠΆΠ΅ самая Java.

Π’ блиТайшСС врСмя Java всС Ρ€Π°Π²Π½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ самой популярной. Основной ΠΏΠΎΡ‚ΠΎΠΊ останСтся Π½Π° Java, Π° Kotlin Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для быстрой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π² условиях быстрого прототипирования простых ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΠΎΠ². Π₯ΠΎΡ‚ΡŒ это ΠΈ ΠΎΡ‡Π΅Π½ΡŒ провокационная Ρ‚ΠΎΡ‡ΠΊΠ° зрСния. Kotlin совмСстим с Java, поэтому нСльзя ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎ измСнится.

«Если Π²Ρ‹ Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ ΠΈ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Android β€” ΡƒΡ‡ΠΈΡ‚Π΅ Kotlin. Π’ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… случаях я Π±Ρ‹ Π²Ρ‹Π±Ρ€Π°Π» JavaΒ»


АртСм ΠŸΠ΅Ρ€Π²ΡƒΡˆΠΎΠ², Π»ΠΈΡ†Π΅Π½Π·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ спСциалист Android ATC, Π°Π²Ρ‚ΠΎΡ€ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ курса Β«Android-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΒ» Π² НСтологии

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°Π΅Ρ‚ Java. ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго, Π½Π°Π΄ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΎ Ρ‡Π΅ΠΌ Kotlin. Kotlin β€” это Π² большСй стСпСни ΠΎ синтаксичСском сахарС. НуТно Π»ΠΈ ΠΌΠ½Π΅ Ρ‚Π°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ сахара? НавСрноС, Π½Π΅Ρ‚, я ΡƒΠΆΠ΅ ΠΏΡ€ΠΈΠ²Ρ‹ΠΊ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° Java ΠΈ Π½Π΅ Π΄Π΅Π»Π°Ρ‚ΡŒ ошибок (ΠΏΠΎΡ‡Ρ‚ΠΈ). Π”ΠΎΠ»ΠΆΠ΅Π½ Π»ΠΈ Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ Π·Π°Π²Π΅Π΄ΠΎΠΌΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡƒΡŽ Java? НавСрноС, Ρ‚ΠΎΠΆΠ΅ Π½Π΅Ρ‚.

Π•Ρ‰Π΅ Π½ΡƒΠΆΠ½ΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Π²Ρ‹Π³ΠΎΠ΄Ρƒ влоТСния вашСго Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Java β€” это история Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΎ Android ΠΈ desktop. На Π½Π΅ΠΉ сущСствуСт ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ число Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ². И Ссли Π²Ρ‹ Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΈΠ· Android ΠΊΡƒΠ΄Π°-Ρ‚ΠΎ Π΅Ρ‰Π΅, Π·Π½Π°Π½ΠΈΠ΅ языка пригодится.

О Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ языков. ΠœΠΎΠΆΠ΅Ρ‚ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ Kotlin Π·Π°Ρ…Π²Π°Ρ‚ΠΈΡ‚ ΠΌΠΈΡ€, Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈ Π½Π΅Ρ‚. Β«Π—Π°Ρ…Π²Π°Ρ‚ ΠΌΠΈΡ€Π°Β» Go, Python, Ruby, JS, <ΠΏΠΎΠ΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π½ΡƒΠΆΠ½ΠΎΠ΅> происходит Π³ΠΎΡ€Π°Π·Π΄ΠΎ Ρ€Π΅ΠΆΠ΅, Ρ‡Π΅ΠΌ Π½Π°ΠΌ говорят ΠΏΠΎΠΊΠ»ΠΎΠ½Π½ΠΈΠΊΠΈ этих Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΠΎΠΉ совСт Ρ‚Π°ΠΊΠΎΠΉ β€” Ссли Π²Ρ‹ Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ ΠΈ Ρ‚Π²Π΅Ρ€Π΄ΠΎ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΡΠ²ΡΠ·Π°Ρ‚ΡŒ свою ΡΡƒΠ΄ΡŒΠ±Ρƒ с Android β€” ΡƒΡ‡ΠΈΡ‚Π΅ Kotlin, это ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈ ΠΌΠΎΠ΄Π½ΠΎ. Π’ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… случаях я Π±Ρ‹ остановился Π½Π° Java.

Β«Kotlin-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Java-Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ понятный ΠΈ простой ΠΊΠΎΠ΄Β»


Π‘Π΅ΠΌΠ΅Π½ ΠŸΠΈΠ»ΡƒΠ½Ρ†, Android-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ, экспСрт курса НСтологии

КакиС языки Π·Π½Π°Π΅Ρ‚. Знакомство с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ Ρƒ мСня Π² институтС, Π½Π°Ρ‡Π°Π» с Pascal, Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠ·ΡƒΡ‡Π°Π»ΠΈ Basic, QBasic. Π£ΠΆΠ΅ Π² ΠΊΠΎΠ½Ρ†Π΅ ΡƒΡ‡Π΅Π±Π½Ρ‹Ρ… Π»Π΅Ρ‚ Π½Π°Ρ‡Π°Π» ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ C. На этом я Π½Π΅ остановился ΠΈ Π½Π°Ρ‡Π°Π» ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ языки β€” Javascript, VB 6.0, MS SQL, Java. ВскорС осознал, Ρ‡Ρ‚ΠΎ Π±Π»ΠΈΠΆΠ΅ всСх ΠΌΠ½Π΅ Java, поэтому Ρ€Π΅ΡˆΠΈΠ» ΡΡ„ΠΎΠΊΡƒΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π° Π½Π΅ΠΌ.

Бпустя ΠΏΠ°Ρ€Ρƒ Π»Π΅Ρ‚ ΠΏΠΎ Π²ΠΎΠ»Π΅ случая Π½Π°Ρ‡Π°Π» ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Java для создания ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΎΠ΄ Андроид. Иногда ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ Π² самом АндроидС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Javascript, HTML, SQL. Π—Π½Π°Π½ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΡ… языков всСгда ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚.

КакиС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚. БСйчас я Ρ€Π°Π±ΠΎΡ‚Π°ΡŽ ΠΊΠ°ΠΊ Π½Π° Java, Ρ‚Π°ΠΊ ΠΈ Π½Π° Kotlin. Пока Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΎΡ‚ΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ Java ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ, Π½ΠΎ постСпСнно ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ.

На ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅, ΠΏΡ€Π΅ΠΆΠ΄Π΅, Ρ‡Π΅ΠΌ Π±Ρ€Π°Ρ‚ΡŒΡΡ Π·Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ, Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ Π΅Π΅, ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΈ ΠΏΡƒΡ‚ΠΈ выполнСния. Π—Π΄Π΅ΡΡŒ ΠΆΠ΅ станСт понятно, ΠΊΠ°ΠΊΠΎΠΉ язык Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ. Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ситуации, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Π½Π΅ смоТСтС справится с Π·Π°Π΄Π°Ρ‡Π΅ΠΉ. ΠŸΡ€ΠΈ этом Kotlin-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Java-Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ понятный ΠΈ простой ΠΊΠΎΠ΄.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°Π΅Ρ‚ Kotlin. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Kotlin ΠΏΡ€ΠΎΡ‰Π΅ ΠΈ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅, Ρ‡Π΅ΠΌ Π”ΠΆΠ°Π²Ρƒ. Π’ Π½Π΅ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ получаСтся Π² срСднСм Π½Π° 40% ΠΊΠΎΡ€ΠΎΡ‡Π΅. А Π΅Ρ‰Π΅ ΠΎΠ½ позволяСт Π½Π΅ Π΄ΠΎΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ошибок, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ Π² Ρ…ΠΎΠ΄Π΅ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Когда ΠΊΠΎΠ΄ Π±ΠΎΠ»Π΅Π΅ простой ΠΈ понятный, ошибки слоТнСС ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈ Π»Π΅Π³Ρ‡Π΅ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ΡŒ, поэтому ΠΈΡ… число ΡΡ‚Ρ€Π΅ΠΌΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ сниТаСтся. Π’Ρ‹ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚Π΅ мСньшС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΈ тСстированиС.

О Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ языков. Π”ΡƒΠΌΠ°ΡŽ, Π² блиТайшСм Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ ΠšΠΎΡ‚Π»ΠΈΠ½ смоТСт практичСски ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π”ΠΆΠ°Π²Ρƒ. Π£ΠΆΠ΅ сСйчас ΠΎΠ½ ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Ρ€Ρ‹Π½ΠΎΠΊ Android Π½Π° 50%, ΠΈ это всСго Π·Π° 3 Π³ΠΎΠ΄Π° послС появлСния. Но всС ΠΆΠ΅ Π”ΠΆΠ°Π²Ρƒ Π½Π°Π΄ΠΎ Π·Π½Π°Ρ‚ΡŒ, Π±Π΅Π· Π½Π΅Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΠΏΠ΅Ρ€Π΅Π½ΠΎΡΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° ΠšΠΎΡ‚Π»ΠΈΠ½. Π—Π΄Π΅ΡΡŒ ΠΎΡ‚ΠΌΠ΅Ρ‡Ρƒ, Ρ‡Ρ‚ΠΎ ΠšΠΎΡ‚Π»ΠΈΠ½ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ совмСстим с Java, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ вовсС Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ сразу ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Часто ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅ Π΄Π΅Π»Π°Ρ‚ΡŒ это постСпСнно.

А Π΅Ρ‰Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Android-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ β€” Π½Π΅ СдинствСнноС Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Kotlin. Он ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ JavaScript, программисты ΠΌΠΎΠ³ΡƒΡ‚ пСрСнСсти Π½Π° Π½Π΅Π³ΠΎ Ρ„Ρ€ΠΎΠ½Ρ‚Π΅Π½Π΄, Kotlin ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ сСрвСрных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, позволяя ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΉ ΠΈ Π²Ρ‹Ρ€Π°Π·ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄, сохраняя ΠΏΠΎΠ»Π½ΡƒΡŽ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ с ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌΠΈ стСками Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ Π½Π° основС Java. Π’Π°ΠΊΠΆΠ΅ создатСли Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Gradle, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³Π»ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π° Π½Π΅ΠΌ Gradle-Ρ„Π°ΠΉΠ»Ρ‹. Активно ΠΈΠ΄Π΅Ρ‚ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ Kotlin Native, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ iOS-прилоТСния.

Β«Kotlin Π½Π΅ Π»ΡƒΡ‡ΡˆΠ΅ Java Π² Ρ†Π΅Π»ΠΎΠΌ, Π½ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ Π² ΠΌΠΈΡ€Π΅ AndroidΒ»


Ильназ Π“ΠΈΠ»ΡŒΡΠ·ΠΎΠ², ΡΠΎΠΎΡΠ½ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ AIMS, Π°Π²Ρ‚ΠΎΡ€ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ курса Β«Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π½Π° KotlinΒ» Π² НСтологии

КакиС языки Π·Π½Π°Π΅Ρ‚. Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ я ΡƒΡ‡ΠΈΠ» нСсколько языков ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ нСобходимости: АссСмблСр, C/C++, ΠΏΠΎΡ‚ΠΎΠΌ ΡƒΠΆΠ΅ Java, JS, PHP, Python. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ€Π°Π±ΠΎΡ‚Π°Π» ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽ Π² сфСрС Π˜Π‘, Π½Π΅ ΠΌΠΎΠ³Ρƒ ΠΎΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ языкС.

КакиС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚. БСйчас Π²Ρ‹Π±ΠΈΡ€Π°ΡŽ инструмСнты Π² зависимости ΠΎΡ‚ Π·Π°Π΄Π°Ρ‡ ΠΈ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚Π΅Π½ΠΈΠΉ Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ°. Для бэкСнда β€” Java/Kotlin, для лСгковСсных Π²Π΅Ρ‰Π΅ΠΉ Π±Π΅Π· мноТСства ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΉ β€” Go/NodeJS, для Ρ„Ρ€ΠΎΠ½Ρ‚Π΅Π½Π΄Π° β€” JS/TypeScript + Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ, для систСмных Π²Π΅Ρ‰Π΅ΠΉ β€” C++/Go. Π’ΠΎ Π΅ΡΡ‚ΡŒ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽ Π½Π΅ Π»ΠΈΡ‡Π½Ρ‹Π΅ прСдпочтСния, Π° исхоТу ΠΈΠ· Π·Π°Π΄Π°Ρ‡ΠΈ ΠΈ возмоТностСй языка ΠΈ Π΅Π³ΠΎ экосистСмы.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°Π΅Ρ‚ Kotlin. ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° языка Kotlin Π² свСТСм взглядС Π½Π° Π²Π΅Ρ‰ΠΈ, Π² ΠΆΠ΅Π»Π°Π½ΠΈΠΈ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ простыС ΠΈ ΡƒΠ΄ΠΎΠ±Π½Ρ‹Π΅ инструмСнты, Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΠ΅ большого количСства ΠΊΠΎΠ΄Π°. Π­Ρ‚ΠΎ ΠΈ синтаксичСский сахар, ΠΈ ΠΊΠΎΡ€ΡƒΡ‚ΠΈΠ½Ρ‹. Kotlin позволяСт ΠΏΠΈΡΠ°Ρ‚ΡŒ мСньшС ΠΊΠΎΠ΄Π° β€” это Ρ€Π°Π΄ΡƒΠ΅Ρ‚.

Π’ Android Π²Ρ‹Π±ΠΎΡ€ Kotlin вмСсто Java ΠΎΡ‡Π΅Π²ΠΈΠ΄Π΅Π½. Π’ ΠΌΠΈΡ€Π΅ backend ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ Kotlin Π³ΠΎΡ€Π°Π·Π΄ΠΎ слабСС, хотя ΠΈ Ρ‚Π°ΠΌ ΠΎΠ½ сСбС ΠΏΡ€ΠΎΠ±ΠΈΠ²Π°Π΅Ρ‚ Π΄ΠΎΡ€ΠΎΠ³Ρƒ. Π’ Spring Framework (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ для ΠΌΠ½ΠΎΠ³ΠΈΡ… β€” стандарт Π² backend) Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Ρ„ΠΈΡˆΠΊΠΈ для Kotlin, нСдоступныС для Java. Π­Ρ‚ΠΎ ΡƒΠΆΠ΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ. Π’ большом ΠΈ слоТном backend ΠΌΡ‹ ΠΏΠΎΠΊΠ° ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ Π½Π° Java, хотя ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… мСстах Kotlin. Π’ случаС микросСрвисной Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹, Π³Π΄Π΅ для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ микросСрвиса Π½Π΅ трСбуСтся большого количСства ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΉ, Kotlin Ρ‡ΡƒΠ²ΡΡ‚Π²ΡƒΡŽΡ‚ сСбя прСкрасно.

Kotlin Π½Π΅ Π»ΡƒΡ‡ΡˆΠ΅ Java Π² Ρ†Π΅Π»ΠΎΠΌ, Π½ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ Π² ΠΌΠΈΡ€Π΅ Android. Π₯отя с этим Ρ‚ΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΏΠΎΡ€ΠΈΡ‚ΡŒ β€” всС зависит ΠΎΡ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΡ‹ ΠΎΡ†Π΅Π½ΠΈΠ²Π°Π΅ΠΌ.

О противостоянии ΠΈ Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ языков. ΠŸΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡΡ‚ΠΎΡΠ½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ Π½Π° Kotlin ΠΈ Java ΠΈΠ½ΠΎΠ³Π΄Π° наблюдаю Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ…, Π³Π΄Π΅ Π½Π΅Ρ‚ ΠΎΠ±Ρ‰Π΅ΠΉ договорСнности ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΎΠ±Π° языка. А Π΅Ρ‰Π΅ Π΅ΡΡ‚ΡŒ Ρ„Π°Π½Π°Ρ‚ΠΈΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ вСрят Π² СдинствСнно ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ язык. Π’ ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠΌ всС Π±ΠΎΠ»Π΅Π΅-ΠΌΠ΅Π½Π΅Π΅ Π³Π»Π°Π΄ΠΊΠΎ, хотя Π² вопросах ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ ΡˆΠ΅Ρ€ΠΎΡ…ΠΎΠ²Π°Ρ‚ΠΎΡΡ‚ΠΈ. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΡ‚Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡ„ΠΈ Π² Android, придСтся Π·Π½Π°Ρ‚ΡŒ ΠΎΠ±Π° языка. Π”Π° ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅, стоит ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ½ΡƒΡ‚ΡŒ ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ придСтся постоянно ΠΎΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ языки, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ, ΠΈΠ΄Π΅ΠΈ ΠΈ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹.

БСйчас Π±ΡƒΠ΄ΡƒΡ‰Π΅Π΅ Java Π² Android нСпонятно. Когда ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π²Π΅Π»ΠΈ всС свои Android-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ Π½Π° Kotlin, Java Π² Android застряла Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ сСдьмой вСрсии с Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Ρ„ΠΈΡˆΠΊΠ°ΠΌΠΈ ΠΈΠ· восьмой. И Π΄ΠΎ сих ΠΏΠΎΡ€ нСясно, собираСтся Π»ΠΈ Google Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ свои споры с Oracle ΠΈ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Π½ΠΎΠ²Ρ‹Ρ… вСрсий, Π»ΠΈΠ±ΠΎ остановится Π½Π° Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΡ… позициях. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ инвСстиции Π² ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅, использованиС ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Java Π½Π° Android выглядят, ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ, рискованными Π² срСднСсрочной пСрспСктивС.

Kotlin ΠΆΠ΅ развиваСтся Π±ΠΎΠ»Π΅Π΅-ΠΌΠ΅Π½Π΅Π΅ прСдсказуСмо ΠΈ прСдоставляСт ΠΎΠ±Π΅Ρ€Ρ‚ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ всС соврСмСнныС возмоТности языка, добавляСт ряд удобств ΠΈ возмоТностСй ΠΈΠΌΠ΅Π½Π½ΠΎ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠΎΠ΄ Android. Π­Ρ‚ΠΎ Π½Π΅ΠΌΠ°Π»ΠΎΠ²Π°ΠΆΠ½Ρ‹ΠΉ Ρ„Π°ΠΊΡ‚ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ влияСт Π½Π° ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€Π΅Π½Π½ΠΎΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ².

Π’ блиТайшСм Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ я Π½Π΅ Π΄ΡƒΠΌΠ°ΡŽ, Ρ‡Ρ‚ΠΎ Kotlin Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ Java. Π‘ΠΊΠΎΡ€Π΅Π΅, ΠΎΠ½ смоТСт ΡΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с Java, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π½Π° это ΠΈ ориСнтировался. ΠΠ°Π΄Π΅ΡΡ‚ΡŒΡΡ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… популярных Java-Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡˆΡƒΡ‚ Π½Π° Kotlin Π½Π΅ стоит. Но Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π° Kotlin (Ρ€Π°Π·ΠΎΠ±Ρ€Π°Π²ΡˆΠΈΡΡŒ Π² Π½ΡŽΠ°Π½ΡΠ°Ρ… ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Kotlin <-> Java, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, рСфлСксии ΠΈ всСх ΠΏΠΎΠ΄Π²ΠΎΠ΄Π½Ρ‹Ρ… камнях) ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, написанныС Π½Π° Java.

«БСйчас Π½ΠΈΠΊΡ‚ΠΎ Π½Π΅ ΠΈΡ‰Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° со Π·Π½Π°Π½ΠΈΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Java ΠΈΠ»ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Kotlin. НуТно Π±Ρ‹Ρ‚ΡŒ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΌ спСциалистом»


Π”ΠΌΠΈΡ‚Ρ€ΠΈΠΉ Π“ΠΎΡ€Π΄ΠΈΠ½, Android developer Π² RoadAR

О противостояни. Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Ρ€Π°Π·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ дСмагогию ΠΈ Π½Π΅ ΠΎΡΠ½ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒΡΡ Π½Π° Π»ΠΈΡ‡Π½Ρ‹Ρ… ощущСниях, Π΄Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π½Π° ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… ΠΈΠ³Ρ€ΠΎΠΊΠΎΠ² Ρ€Ρ‹Π½ΠΊΠ°. Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, Google ΠΏΡ€ΠΈΠ·Π½Π°Π΅Ρ‚ Kotlin основным языком Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠΎΠ΄ Android. Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, Π²ΠΎΡ‚ Ρ‚Π°ΠΊ выглядят вакансии Π½Π° HH.ru ΠΎΡ‚ Ρ‚ΠΎΠΏΠΎΠ²Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ:

  • Tinkoff β€” «БущСствСнный плюс: ΠΎΠΏΡ‹Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° KotlinΒ»;
  • ЯндСкс β€” Β«ΠŸΡ€ΠΈΠ²Π΅Ρ‚ΡΡ‚Π²ΡƒΠ΅Ρ‚ΡΡ: ΠΎΠΏΡ‹Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° KotlinΒ»;
  • Redmadrobot β€” Β«Π–Π΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ: ΠΎΠΏΡ‹Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° KotlinΒ»;
  • Π΄Π°ΠΆΠ΅ Β«ΠŸΠΎΡ‡Ρ‚Π° России» β€” «ОТидаСм ΠΎΡ‚ вас ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ знания ΠΈ ΠΊΠΎΠΌΠΏΠ΅Ρ‚Π΅Π½Ρ†ΠΈΠΈ: Π·Π½Π°Π½ΠΈΠ΅ тСхнологичСского стСка Android SDK, Kotlin/JavaΒ».

О Π²Ρ‹Π±ΠΎΡ€Π΅ языка. НуТно Π·Π½Π°Ρ‚ΡŒ ΠΎΠ±Π° языка. НСвозмоТно Π·Π½Π°Ρ‚ΡŒ Kotlin ΠΈ Π½Π΅ Π·Π½Π°Ρ‚ΡŒ Java. Π›ΠΈΠ³Π° Π·Π°Π½ΡƒΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ΄Ρ€Π°Ρ‚ΡŒΡΡ ΠΈ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Kotlin Native, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ связан с Java. Но ΠΌΡ‹ Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎΠ± Android Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅, Π° Π·Π½Π°Ρ‡ΠΈΡ‚, ΠΎ срСдС выполнСния Dalvik/ART. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ всС Ρ€Π°Π±ΠΎΡ‚ΠΎΠ΄Π°Ρ‚Π΅Π»ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΈΡˆΡƒΡ‚, Ρ‡Ρ‚ΠΎ ΠΈΡ‰ΡƒΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π½Π° Kotlin, Π½Π° самом Π΄Π΅Π»Π΅ ΠΈΡ‰ΡƒΡ‚ ΠΎΠ±Π° языка.

По ΠΌΠΎΠ΅ΠΌΡƒ мнСнию, ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ β€” Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π½ΡŒΠΊΠΎ ΠΎΡΠ²ΠΎΠΈΡ‚ΡŒΡΡ с Java, Π° Π·Π°Ρ‚Π΅ΠΌ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΏΠ»Π°Π²Π½ΠΎ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π° Kotlin. Kotlin Π½Π΅ ΠΏΠ΅Ρ€Π΅Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Π΅Ρ‚ с Π½ΠΎΠ³ Π½Π° Π³ΠΎΠ»ΠΎΠ²Ρƒ всС, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π·Π½Π°Π»ΠΈ ΠΈΠ· Java. Π’Ρ‹ с ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ измСнСниями смоТСтС ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° Π½ΠΎΠ²Ρ‹ΠΉ язык ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² Β«Java-стилС», постСпСнно котлинизируя ваш ΠΊΠΎΠ΄, добавляя Π² Π½Π΅Π³ΠΎ сахар ΠΈ спСцифичныС для Kotlin Ρ„ΠΈΡˆΠΊΠΈ.

ΠžΡ‚ Ρ€Π΅Π΄Π°ΠΊΡ†ΠΈΠΈ

ΠœΡ‹ ΡƒΡ‡Π»ΠΈ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ с языками программирования ΠΈ мнСния самих Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² β€” Π½Π° курсС Β«Android-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ с нуля» ΠΎΠ±ΡƒΡ‡Π°Π΅ΠΌ Java ΠΈ Kotlin. Благодаря этому студСнты ΠΌΠΎΠ³ΡƒΡ‚ сами Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ, Π½Π° ΠΊΠ°ΠΊΠΎΠΌ языкС ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ Π² дальнСйшСм, ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±Π°.

38 Π»ΡƒΡ‡ΡˆΠΈΡ… Open Source Android-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° Java

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ†Π΅Π½Π½Ρ‹ΠΌ рСсурсом для всСх программистов. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΌΠ½ΠΎΠ³ΠΎΠΌΡƒ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ, просто ΠΈΠ·ΡƒΡ‡ΠΈΠ² исходный ΠΊΠΎΠ΄ ΠΈΠ»ΠΈ ΠΆΠ΅ создав Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΏΠΎΠ²Π΅Ρ€Ρ… ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Π’ этом спискС Π»ΡƒΡ‡ΡˆΠΈΠ΅ open source прилоТСния для Android, написанныС Π½Π° Java. Π‘Ρ€Π΅Π΄Π½Π΅Π΅ число Π·Π²Π΅Π·Π΄ Github Π² Π½Π΅ΠΌ – 3,874.

Π‘ΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ сСти

Kickstarter – ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

NewPipe – лСгковСсный фронтэнд для YouTube.

WordPress – ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

Новости

Plaid – ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π΄ΠΈΠ·Π°ΠΉΠ½Π° Π² новостном Π°Π³Ρ€Π΅Π³Π°Ρ‚ΠΎΡ€Π΅.

FastHub – ΠΊΠ»ΠΈΠ΅Π½Ρ‚ для GitHub.

Materialistic – ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Hacker News Π² ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ Π΄ΠΈΠ·Π°ΠΉΠ½Π΅.

Π€ΠΎΡ‚ΠΎ ΠΈ Π²ΠΈΠ΄Π΅ΠΎ

Telecine – запись Π²ΠΈΠ΄Π΅ΠΎ.

LeafPic – галСрСя Π² ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ Π΄ΠΈΠ·Π°ΠΉΠ½Π΅.

ΠŸΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ

K-9 Mail – ΠΏΠΎΡ‡Ρ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚.

ownCloud – Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΈ организация всСго.

AmazeFileManager – Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€.

Omni-Notes – Π·Π°ΠΌΠ΅Ρ‚ΠΊΠΈ.

ΠœΡƒΠ·Ρ‹ΠΊΠ°

Timber – ΠΌΡƒΠ·Ρ‹ΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ»Π΅Π΅Ρ€.

Phonograph – ΠΌΡƒΠ·Ρ‹ΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ»Π΅Π΅Ρ€.

Shuttle Music Player – Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½.

Π˜Π³Ρ€Ρ‹

Pixel Dungeon – традиционная Π°Ρ€ΠΊΠ°Π΄Π° Π² пиксСль-Π°Ρ€Ρ‚Π΅.

Google Santa Tracker for Android – Ρ€Π°Π·Π²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для Π΄Π΅Ρ‚Π΅ΠΉ.

2048 – классичСская ΠΈΠ³Ρ€Π° с числами.

ΠœΠ΅ΡΡΠ΅Π½Π΄ΠΆΠ΅Ρ€Ρ‹

Telegram – исходники Ρ‚ΠΎΠ³ΠΎ, ΠΊΠΎΠ³ΠΎ скоро Π² России Π·Π°ΠΊΡ€ΠΎΡŽΡ‚.

Signal – ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½Ρ‹ΠΉ мСссСндТСр.

Qksms – красивый SMS-мСссСндТСр.

МСдиа

ExoPlayer – ΠΌΠ΅Π΄ΠΈΠ°-ΠΏΠ»Π΅Π΅Ρ€.

VLC – ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π»ΡƒΡ‡ΡˆΠΈΡ… ΠΏΠ»Π΅Π΅Ρ€ΠΎΠ² для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

AntennaPod – ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ подкастов.

MovieGuide – ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для открытия Π½ΠΎΠ²Ρ‹Ρ… Ρ„ΠΈΠ»ΡŒΠΌΠΎΠ².

Ѐинансы

CoCoin – ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ счСтами.

Kickmaterial – ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для ΠΊΡ€Π°ΡƒΠ΄Ρ„Π°Π½Π΄ΠΈΠ½Π³Π°.

Bitcoin Wallet Android – кошСлСк.

GnuCash Android – отслСТиваниС Ρ‚Ρ€Π°Ρ‚.

АрхитСктура

Android CleanArchitecture – ΠΏΡ€ΠΈΠΌΠ΅Ρ€ чистой Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹.

Archi – Standard Android, MVP ΠΈ MVVM.

Android MVP Architecture – ΠΏΡ€ΠΈΠΌΠ΅Ρ€ MVP.

Π£Ρ‚ΠΈΠ»ΠΈΡ‚Ρ‹

Shadowsocks – socks5 прокси.

SoundRecorder – Π΄ΠΈΠΊΡ‚ΠΎΡ„ΠΎΠ½ с ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌ Π΄ΠΈΠ·Π°ΠΉΠ½ΠΎΠΌ.

Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠΈ

iosched – ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Google I/O 2017.

Wikipedia Android – ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ энциклопСдии.

Погода

SeeWeather – RxJava+RxBus+Retrofit+Glide+Material Design

Android Studio ΠΈ созданиС ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

Android Studio ΠΈ созданиС ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

ПослСднСС обновлСниС: 23.01.2017

Π’Π΅ΠΏΠ΅Ρ€ΡŒ создадим ΠΏΠ΅Ρ€Π²ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² срСдС Android Studio для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Android. ΠžΡ‚ΠΊΡ€ΠΎΠ΅ΠΌ Android Studio ΠΈ Π½Π° Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΌ экранС Π²Ρ‹Π±Π΅Ρ€Π΅ΠΌ ΠΏΡƒΠ½ΠΊΡ‚
Start new Android Project:

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π² Android Studio

(Если Android Studio ΡƒΠΆΠ΅ Π·Π°ΠΏΡƒΡΠΊΠ°Π»Π°ΡΡŒ, Ρ‚ΠΎ Π² мСню Π½Π°Π΄ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΏΡƒΠ½ΠΊΡ‚ File -> New-> New Project…).
ПослС этого отобразится Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ создания Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°:

Настройка ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π² Android Studio

Π’ ΠΎΠΊΠ½Π΅ создания Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ настройки:

  • Π’ ΠΏΠΎΠ»Π΅ Application Name вводится Π½Π°Π·Π²Π°Π½ΠΈΠ΅ прилоТСния. Π£ΠΊΠ°ΠΆΠ΅ΠΌ Π² качСствС ΠΈΠΌΠ΅Π½ΠΈ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ HelloApplication

  • Π’ ΠΏΠΎΠ»Π΅ Company Domain указываСтся Π΄ΠΎΠΌΠ΅Π½ прилоТСния ΠΈΠ»ΠΈ Ρ‚ΠΎΡ‚ ΠΏΠ°ΠΊΠ΅Ρ‚ классов, Π³Π΄Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒΡΡ Π³Π»Π°Π²Π½Ρ‹ΠΉ класс
    прилоТСния. Π›ΡƒΡ‡ΡˆΠ΅ Ρ‚Π°ΠΊΠΆΠ΅ сразу Π·Π°Π΄Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΎΠ΅-Π½ΠΈΠ±ΡƒΠ΄ΡŒ своС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ΠΏΠΎΠ»Π΅ Company Domain. Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΌΠ°Π³Π°Π·ΠΈΠ½Π΅ Google Play,
    Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для этого поля Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ для всСго ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°. Π₯отя для тСстовых ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠ°ΠΊ Π² Π΄Π°Π½Π½ΠΎΠΌ случаС, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² этом ΠΏΠΎΠ»Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

  • Π’ ΠΏΠΎΠ»Π΅ Project Location ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ располоТСниС Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π° ТСстком дискС

Π”Π°Π»Π΅Π΅ Π½Π°ΠΆΠΌΠ΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Next ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ ΡˆΠ°Π³Ρƒ:

Минимальная вСрсия Π² Android Studio

На этом шагС Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ устанавливаСтся вСрсия Android 4.1, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚
Π±ΠΎΠ»Π΅Π΅ 95% устройств Android. ΠžΡΡ‚Π°Π²ΠΈΠΌ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈ Π½Π°ΠΆΠΌΠ΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Next.

На ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ шагС Π½Π°Π΄ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ шаблон ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°:

Π’Ρ‹Π±ΠΎΡ€ Activity Π² Android Studio

Android Studio прСдоставляСт ряд шаблонов для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ситуаций, Π½ΠΎ самыми распространСнными ΡΠ²Π»ΡΡŽΡ‚ΡΡ Basic Activity ΠΈ Empty Activity.
Π­Ρ‚ΠΎ самыС ΡƒΠ΄ΠΎΠ±Π½Ρ‹Π΅ ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ для старта для создания Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΌΡ‹ Π²Ρ‹Π±Π΅Ρ€Π΅ΠΌ шаблон Empty Activity.

ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ Empty Activity Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ шагС Π½Π°Π΄ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ряд настроСк ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°:

  • Activity Name: Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ класса прилоТСния

  • Layout Name: Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° xml, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ интСрфСйса

  • Generate Layout File: Π½Π°Π΄ΠΎ Π»ΠΈ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» xml с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ интСрфСйса

  • Backwards Compatibility (AppCompat): Π² ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½Π½ΠΎΠΌ состоянии позволяСт ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ вСрсиями Android

Настройка Activity Π² Android Studio

ΠžΡΡ‚Π°Π²ΠΈΠΌ всС настройки ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈ Π½Π°ΠΆΠΌΠ΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Finish. И Ρ‡Π΅Ρ€Π΅Π· Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ врСмя Android Studio создаст ΠΈ ΠΎΡ‚ΠΊΡ€ΠΎΠ΅Ρ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚:

Новый ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π² Android Studio

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

ПослС создания ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° структура ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Android отобраТаСтся Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Π²ΠΈΠ΄Π΅:

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° для ОБ Android

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ Android ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΡΡ‚ΠΎΡΡ‚ΡŒ ΠΈΠ· Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ создаСм ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, создаСтся ΠΎΠ΄ΠΈΠ½ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ — app. ΠœΠΎΠ΄ΡƒΠ»ΡŒ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚Ρ€ΠΈ ΠΏΠΎΠ΄ΠΏΠ°ΠΏΠΊΠΈ:

  • manifests: Ρ…Ρ€Π°Π½ΠΈΡ‚ Ρ„Π°ΠΉΠ» манифСста AndroidManifest.xml, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ опрСдСляСт ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ

  • java: Ρ…Ρ€Π°Π½ΠΈΡ‚ Ρ„Π°ΠΉΠ»Ρ‹ ΠΊΠΎΠ΄Π° Π½Π° языкС java, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ структурированы ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌ

  • res: содСрТит ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ рСсурсы

ΠžΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ элСмСнт Gradle Scripts содСрТит ряд скриптов gradle (ΠΊΠ°ΠΊ для модуля app ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, Ρ‚Π°ΠΊ ΠΈ для всСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°),
ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ построСнии прилоТСния.

ΠŸΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ ΠΊ ΠΏΠΎΠ»Π½ΠΎΠΉ структурС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Для этого ΠΌΠΎΠΆΠ½ΠΎ Π΄Π²ΠΎΠΉΠ½Ρ‹ΠΌ Ρ‰Π΅Π»Ρ‡ΠΊΠΎΠΌ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. ПослС этого ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ откроСтся ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ:

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π² Android Studio

Рассмотрим ΠΏΠΎΠ»Π½ΡƒΡŽ структуру ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° прилоТСния ΠΏΠΎΠ΄ ОБ Android, которая создаСтся ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. Π—Π΄Π΅ΡΡŒ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΡ‹ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ СдинствСнный ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° — ΠΌΠΎΠ΄ΡƒΠ»ΡŒ app. БобствСнно вСсь ΠΊΠΎΠ΄, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, располагаСтся Π²Π½ΡƒΡ‚Ρ€ΠΈ этого модуля.

ВсС ΠΌΠΎΠ΄ΡƒΠ»ΠΈ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Ρ„Π°ΠΉΠ»ΠΎΠΌ setting.gradle. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΎΠ½ ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅
содСрТимоС:


include ':app'

Π€Π°ΠΉΠ» build.gradle содСрТит ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, которая ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈ построСнии ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΈΠΌΠ΅Π΅Ρ‚ свой Ρ„Π°ΠΉΠ» build.gradle, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ опрСдСляСт ΠΊΠΎΠ½Ρ„Π³ΡƒΡ€Π°Ρ†ΠΈΡŽ построСния ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, ΡΠΏΠ΅Ρ†ΠΈΡ„ΠΈΡ‡Π½ΡƒΡŽ для Π΄Π°Π½Π½ΠΎΠ³ΠΎ
модуля. Π’Π°ΠΊ, Ссли ΠΌΡ‹ посмотрим Π½Π° содСрТимоС ΠΏΠ°ΠΏΠΊΠΈ app, Ρ‚ΠΎ ΠΊΠ°ΠΊ Ρ€Π°Π· Π½Π°ΠΉΠ΄Π΅ΠΌ Π² Π½Π΅ΠΉ Ρ‚Π°ΠΊΠΎΠΉ Ρ„Π°ΠΉΠ». На Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΌ этапС Π΄Π°Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ Π½Π΅ ΡΡ‚ΠΎΠ»ΡŒ Π²Π°ΠΆΠ½Ρ‹,
достаточно лишь ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, для Ρ‡Π΅Π³ΠΎ ΠΎΠ½ΠΈ Π½ΡƒΠΆΠ½Ρ‹.

Π’ ΠΌΠΎΠ΄ΡƒΠ»Π΅ app ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ нСсколько ΠΏΠ°ΠΏΠΎΠΊ ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… для нас ваТнСйшими ΡΠ²Π»ΡΡŽΡ‚ΡΡ:

  • ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ libs — ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для хранСния Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ

  • ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ src — ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для хранСния исходного ΠΊΠΎΠ΄Π°. Он содСрТит ряд ΠΏΠΎΠ΄ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ². ΠšΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ androidTest ΠΈ
    test ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для хранСния Ρ„Π°ΠΉΠ»ΠΎΠ² тСстов прилоТСния. А собствСнно исходныС ΠΊΠΎΠ΄Ρ‹ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ Π² ΠΏΠ°ΠΏΠΊΠ΅ main.

Папка main ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»ΠΎΠΆΠ½ΡƒΡŽ структуру:

Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹ Π² Android Studio

  • AndroidManifest.xml прСдставляСт Ρ„Π°ΠΉΠ» манифСста, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ описываСт
    Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Π΅ характСристики прилоТСния, Π΅Π³ΠΎ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ ΠΈ опрСдСляСт ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Π΄Π°Π½Π½ΠΎΠ³ΠΎ прилоТСния.

  • Папка java содСрТит исходныС Ρ„Π°ΠΉΠ»Ρ‹ прилоТСния. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π² Π½Π΅ΠΌ находится Ρ„Π°ΠΉΠ» класса MainActivity,
    ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ запускаСтся ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΡ€ΠΈ стартС прилоТСния.

  • Папка res содСрТит ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ с рСсурсами. Π’ частности, ΠΎΠ½Π° содСрТит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ:

    • ΠΏΠ°ΠΏΠΊΠ° drawable ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для хранСния ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ

    • ΠΏΠ°ΠΏΠΊΠ° layout ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для хранСния Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΡ… графичСский интСрфСйс.
      По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ здСсь Π΅ΡΡ‚ΡŒ Ρ„Π°ΠΉΠ» activity_main.xml, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ опрСдСляСт интСрфСйс для СдинствСнной Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ activity — MainActivity

    • ΠΏΠ°ΠΏΠΊΠΈ mipmap-xxxx содСрТат Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для создания ΠΈΠΊΠΎΠ½ΠΊΠΈ прилоТСния ΠΏΡ€ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΡ… экрана. И для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ здСсь имССтся свой ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³

    • ΠΏΠ°ΠΏΠΊΠ° values Ρ…Ρ€Π°Π½ΠΈΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ xml-Ρ„Π°ΠΉΠ»Ρ‹, содСрТащиС ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ рСсурсов — Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ

Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Android. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ для Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²

Π‘Ρ€Π΅Π΄ΠΈ программистов Π½Π° Java ΠΈ Π΄Π΅Π»ΠΎ ΡΠ»Ρ‹ΡˆΠ½Ρ‹ Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€Ρ‹ ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΠΎΠ΄ Android. ИмСнно Android Π΄Π΅Ρ€ΠΆΠΈΡ‚ Java Π½Π° ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΏΠ»Π°Π½Π΅ Π² послСдниС нСсколько Π»Π΅Ρ‚. Насколько Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΈΠ»ΠΈ Π·Π½Π°Ρ‚ΡŒ Android для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Π½Π° Java? Ну, зависит ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, нравится Π»ΠΈ Π²Π°ΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π»ΠΈ Π²Ρ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ваши прилоТСниями пользовались мноТСством людСй. Если Π΄Π°, Ρ‚ΠΎ Android даст Π²Π°ΠΌ эту Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ. ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ΠΎΠ² ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Android исчисляСтся ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π°ΠΌΠΈ ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ расти быстрСС, Ρ‡Π΅ΠΌ число iPhone с iOS.Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ для Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΎΡ‡Π΅Π½ΡŒ Π΄Π°ΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ смысл Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄ Android, Ρ‡Π΅ΠΌΡƒ эта ΡΡ‚Π°Ρ‚ΡŒΡ ΠΊΠ°ΠΊ Ρ€Π°Π· ΠΈ посвящСна. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, это ΠΎΠ΄Π½Π° ΠΈΠ· Ρ…ΠΎΡ€ΠΎΡˆΠΈΡ… ΠΏΡ€ΠΈΡ‡ΠΈΠ½ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Java. Из этого ΠΎΠ±Π·ΠΎΡ€Π° Π²Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅ основы Ρ€Π°Π±ΠΎΡ‚Ρ‹ Android, Π±Π΅Π· достаточных подробностСй, Π½ΠΎ Π² достаточном объСмС.

Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Android. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ для Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² - 1 Одно ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎΠ΅ прСимущСство Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π½Π°Π΄ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹ΠΌ, Ρ‡Ρ‚ΠΎ API Android ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠ΅ Π½Π° API языка Java, ΠΈ Android ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚, Ссли Π½Π΅ всС доступныС Π² J2SE SDK классы, Ρ‚ΠΎ, ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅, Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹Π΅. Π•Ρ‰Π΅ ΠΎΠ΄Π½ΠΎ прСимущСство: Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠΎΠ΄ Android Ρ‚Π΅ ΠΆΠ΅ инструмСнты, Ρ‡Ρ‚ΠΎ ΠΈ для Java. НапримСр, IDE Eclipse, вСдь Google прСдоставляСт для Eclipse ΠΏΠ»Π°Π³ΠΈΠ½ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Android. Π’ Π½Π°Ρ‡Π°Π»Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Android, ΠΈΠΌΠ΅Π΅Ρ‚ смысл Π·Π°Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π² Ρ‚Π°ΠΊΠΈΠ΅ руководства, ΠΊΠ°ΠΊ Head First Android Development ΠΈ Android in Action (3-Π΅ ΠΈΠ·Π΄.) — Π΄Π²Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ Android для Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ².
Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Android. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ для Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² - 2 Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Android. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ для Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² - 3 Напротив, Ссли Π²Ρ‹ Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π·Π°Π½ΡΡ‚ΡŒΡΡ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ ΠΏΠΎΠ΄ iOS, Π²Ρ‹ ΠΆΠ΄Π΅Ρ‚Π΅ нСпростой процСсс изучСния языка Objective-C ΠΈ SDK iOS.МнС каТСтся, ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° Objective-C ΠΈ iOS большС смысла для C ++ — Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°, Ρ‡Π΅ΠΌ для «дТависта». Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ классичСская ΠΌΠ΅ΠΆΠ΄Ρƒ Java ΠΈ C ++ продолТаСтся благодаря Π²ΠΎΠΉΠ½Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для смартфонов. Π’ случаС Π΄Π°Π²Π°ΠΉΡ‚Π΅ разбСрСмся Π² любом случаС Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ функционирования Android.

Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Android?

Как я ΡƒΠΆΠ΅ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π» Π² систСмС Android для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Java. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для Android с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ прСдоставляСмого Google API Java , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ скомпилирован Π² Ρ„Π°ΠΉΠ»Ρ‹ классов.На этом ΡΡ…ΠΎΠΆΠ΅ΡΡ‚ΡŒ заканчиваСтся. Android Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ Java (JVM) для выполнСния Ρ„Π°ΠΉΠ»ΠΎΠ² классов, вмСсто этого Π² Π½Ρ‘ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ машина Dalvik , Π½Π΅ ΡΠ²Π»ΡΡŽΡ‰Π°ΡΡΡ истинной JVM ΠΈ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π°Ρ с Java-Π±Π°ΠΉΡ‚ΠΊΠΎΠ΄ΠΎΠΌ. Для выполнСния Π½Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠ°ΡˆΠΈΠ½Π°Ρ… Dalvik Ρ„Π°ΠΉΠ»Ρ‹ классов ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ DEX (Dalvik EXecutable — исполняСмыС Ρ„Π°ΠΉΠ»Ρ‹ Dalvik). ПослС прСобразования Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ DEX Ρ„Π°ΠΉΠ»Ρ‹ классов ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ Π² ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Android (APK) для распространСния ΠΈ инсталляции Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… устройствах.Π“Π»Π°Π²Π½ΠΎΠ΅, Ρ‡Ρ‚ΠΎ слСдуСт Π·Π½Π°Ρ‚ΡŒ: Π² основС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ классов ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Dalvik Π»Π΅ΠΆΠΈΡ‚ подмноТСство ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Apache Harmony, Π·Π°ΠΊΠ°Π· Ρ‡Π΅Π³ΠΎ ΠΎΠ½Π° Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ всё API J2SE. Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ для написания ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΎΠ΄ Android IDE Eclipse, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ особо Π½Π΅ Π²ΠΎΠ»Π½ΠΎΠ²Π°Ρ‚ΡŒΡΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ‚Π°ΠΌ Π΅ΡΡ‚ΡŒ Π°Π²Ρ‚ΠΎΠ΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ разбСрСмся, ΠΊΠ°ΠΊ прилоТСния Android Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π½Π° устройствах.

Как прилоТСния Android Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π½Π° устройствах?

Если Π²Π°ΠΌ Π·Π½Π°ΠΊΠΎΠΌΠ° опСрационная систСма Linux ΠΈ понятиС процСсса, Π²Π°ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ нСслоТно ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Android-прилоТСния.По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, опСрационная систСма Android присваиваСт ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. ПослС запуска ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Android, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· Π½ΠΈΡ… выполняСтся Π² своСй собствСнной машинС.
Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Android. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ для Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² - 4 По ΠΌΠ΅Ρ€Π΅ нСобходимости, опСрационная систСма Android управляСт запуском ΠΈ остановом процСссов ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ всС прилоТСния Android Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°, Π½ΠΎ, разумССтся, ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ‚ΡŒ доступ ΠΊ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΌ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ систСмным рСсурсам.Если Π²Ρ‹ Π·Π½Π°ΠΊΠΎΠΌΡ‹ с Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, допустим, Π² J2ME, Ρ‚ΠΎ, навСрняка, ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°Π»ΠΈΡΡŒ с понятиСм ΠΏΡ€Π°Π² доступа (Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ). ΠŸΡ€ΠΈ установкС ΠΈΠ»ΠΈ запускС прилоТСния Android, ΠΎΠ½ΠΎ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ ΠΏΡ€Π°Π²Π°, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для доступа ΠΊ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Ρƒ, Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅ ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ систСмным рСсурсам. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ явным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ дСйствуСт эти ΠΏΡ€Π°Π²Π°, ΠΈΠ½Π°Ρ‡Π΅ Π²ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΊΠ°Π·Π°Π½ΠΎ.

ВсС эти ΠΏΡ€Π°Π²Π° доступа ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π² Ρ„Π°ΠΉΠ»Π΅ манифСста прилоТСния Android. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Java, манифСст Android прСдставляСт собой XML-Ρ„Π°ΠΉΠ», Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ всС прилоТСния ΠΈ прилоТСния для Π½ΠΈΡ….Π§Π΅Ρ‚Ρ‹Ρ€Π΅ основных прилоТСния ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Android: активности, сСрвисы, поставщики ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° ΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΎΠ²Π΅Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊΠΈ (ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊΠΈ вСщания). Из Π½ΠΈΡ… Ρ‡Π°Ρ‰Π΅ всСго Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ сообщСния, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ экранной Ρ„ΠΎΡ€ΠΌΠ΅ прилоТСния Android. НапримСр, Π² ΠΈΠ³Ρ€Π΅ для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Android ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСсколько экранов: для Π²Ρ…ΠΎΠ΄Π° Π² систСму, Ρ€Π΅ΠΊΠΎΡ€Π΄ΠΎΠ², инструкций ΠΈ экран самой ΠΈΠ³Ρ€Ρ‹. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· этих элСмСнтов соотвСтствуСт Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌ активностям Π² вашСм ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.
Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Android. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ для Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² - 5 Как ΠΈ Π² Java, Π² ОБ Android Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ срСдства Π°ΠΊΡ‚ΠΈΠ²ΠΈΠ·Π°Ρ†ΠΈΠΈ вмСсто Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°.Π—Π° ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡŽ активностСй ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ класс БистСма . Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ, достаточно Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ startActivity () с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ НамСрСниС Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°. Π’ ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° этот Π²Ρ‹Π·ΠΎΠ², класс БистСма ΠΈΠ»ΠΈ создаст Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ активности ΠΈΠ»ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ старый.

Аналогично сборкС мусора Π½Π° языкС Java, ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‰Π΅ΠΉ Π·Π° Π·Π°Π΄Π°Ρ‡Ρƒ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ использования памяти, Android управляСт запуском, остановом, созданиСм ΠΈ ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.ΠœΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ слишком сильно ΠΈΡ… ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚, Π½ΠΎ это Π½Π΅ Ρ‚Π°ΠΊ. Android создаСт события ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ для Π²ΠΌΠ΅ΡˆΠ°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π° Π² этот процСсс.

Π’ΠΎΡ‚ ΠΈ всё ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Android . Java бСзусловно, ΠΈΠΌΠ΅Π΅Ρ‚ смысл ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ Android, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ эта систСма ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Java, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ свои знания ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊ программирования Π½Π° Java, ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½Π°ΠΌΠΈ проСктирования ΠΈ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΡ‹ΠΌΠΈ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°ΠΌΠΈ для создания Ρ…ΠΎΡ€ΠΎΡˆΠΈΡ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Android.ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π²Π°ΠΌ придСтся ΠΏΡ€ΠΈΡΠΏΠΎΡΠΎΠ±ΠΈΡ‚ΡŒΡΡ ΠΊ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ спСцифичСским для Android Π²Π΅Ρ‰Π°ΠΌ. Π˜Ρ‚Π°ΠΊ, Ρ‡Π΅Π³ΠΎ ΠΆΠ΅ Π²Ρ‹ ΠΆΠ΄Ρ‘Ρ‚Π΅? Π’ΠΏΠ΅Ρ€Ρ‘Π΄, ΠΈΠ·ΡƒΡ‡Π°ΠΉΡ‚Π΅ Android ΠΈ ΠΏΠΈΡˆΠΈΡ‚Π΅ вашС ΠΏΠ΅Ρ€Π²ΠΎΠ΅ Android-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ HelloWorld! НаконСц, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Π·Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ, посвящСнныС основам Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° Android, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Head First Android Development — Π»ΡƒΡ‡ΡˆΡƒΡŽ ΠΈΠ· посвящСнных Android ΠΊΠ½ΠΈΠ³.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Ρ€Π°Π±ΠΎΡ‚Ρƒ Android для программистов Π½Π° Java .

Π―Π²Π°. ЭкспрСсс-курс

Π‘Ρ‚Π°Ρ‚ΡŒΡ ΠΏΡ€ΠΎΠΏΠ»Π°Ρ‡Π΅Π½Π° кошками — всСмирно извСстными производитСлями котят.

Если ΡΡ‚Π°Ρ‚ΡŒΡ Π²Π°ΠΌ ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ»Π°ΡΡŒ, Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚.

ΠžΡ‡Π΅Π½ΡŒ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ программисты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ для Android, ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‚ языками ΠΎΠΏΡ‹Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ. И, ΠΎΠ½ΠΈ Π½Π° Ρ…ΠΎΠ΄Ρƒ ΡƒΠΆΠ΅ Ρ€Π°Π·Π±ΠΈΡ€Π°ΡŽΡ‚ΡΡ с особСнностями Java. Π’Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅, Ρ‡Ρ‚ΠΎ Java Π² своСм синтаксисС ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆ Π½Π° C ++, C #, PHP ΠΈ Ρ‚.Π΄.

Основой для Π»ΠΎΠ³ΠΎΡ‚ΠΈΠΏΠ° языка Java послуТил этот рисунок, Π½ΠΎ Π΄ΠΈΠ·Π°ΠΉΠ½Π΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΏΠΎΡ€ΡƒΡ‡ΠΈΠ»ΠΈ пСрСвСсти рисунок Π² Π²Π΅ΠΊΡ‚ΠΎΡ€, Π±Ρ‹Π» ΠΏΠΎΡ‚ΠΎΠΌΠΊΠΎΠΌ ΠžΡΡ‚Π°ΠΏΠ° Π‘Π΅Π½Π΄Π΅Ρ€Π°, поэтому ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»Π°ΡΡŒ какая-Ρ‚ΠΎ фигня.

А Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚Π΅ΠΌ, ΠΊΡ‚ΠΎ Ρ…ΠΎΡ‡Π΅Ρ‚ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ для Android, Π½ΠΎ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π½ΡŒΡˆΠ΅? ΠŸΠΎΠ½ΡΡ‚Π½ΠΎ, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ сначала ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΡƒΡŽ-Ρ‚ΠΎ Π±Π°Π·Ρƒ — ΠΊΡƒΠΏΠΈΡ‚ΡŒ ΠΊΠ½ΠΈΠ³Ρƒ, ΠΏΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΡΡ‚Π°Ρ‚ΡŒΠΈ. Но Ссли Ρƒ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ° ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ ΠΎΠ±Ρ‰ΠΈΠ΅ прСдставлСния ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ (вСдь Π² школС ΠΈΠ·ΡƒΡ‡Π°ΡŽΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΡƒ), Ρ‚ΠΎ ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π±Ρ‹ Π²Π°ΠΌ Π½Π΅ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ для своСго любимого Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π° прямо сСйчас.Π’ этом нСбольшом экспрСсс-курсС я ΠΏΠΎΡΡ‚Π°Ρ€Π°ΡŽΡΡŒ Π΄Π°Ρ‚ΡŒ нСбольшиС ΡƒΡ€ΠΎΠΊΠΈ ΠΏΠΎ основным понятиям Java. А для экспСримСнтов Π½Π°ΠΌ понадобится какая-Ρ‚ΠΎ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ учСбная Ρ„ΠΎΡ€ΠΌΠ°, скаТСм экран с тСкстовым ΠΏΠΎΠ»Π΅ΠΌ, тСкстовой ΠΌΠ΅Ρ‚ΠΊΠΎΠΉ ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ. ΠœΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ, Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π°ΠΆΠΈΠΌΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, сСйчас ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ язык Java Π²Π°ΠΌ каТутся Ρ‡Π΅ΠΌ-Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ слоТным ΠΈ ΡΡ‚Ρ€Π°ΡˆΠ½Ρ‹ΠΌ. А Π²Ρ‹ Ρ‚Π°ΠΊΠΎΠΉ малСнький ΠΈ Π±Π΅Π·Π·Π°Ρ‰ΠΈΡ‚Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ освоСния курса Java.

ΠŸΠ΅Ρ€Π΅Π±ΠΎΡ€ΠΎΠ² страх ΠΈ ΠΈΠ·ΡƒΡ‡ΠΈΠ² всС ΡƒΡ€ΠΎΠΊΠΈ курса, Π²Ρ‹ станСтС ΡƒΠ²Π΅Ρ€Π΅Π½Π½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ для своСго Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π°. И станСтС настоящСго Π³ΡƒΡ€Ρƒ программирования.

Но, сначала, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Hello Kitty. Если это испытаниС Π²Ρ‹ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΏΡ€ΠΎΡˆΠ»ΠΈ, Π·Π½Π°Ρ‡ΠΈΡ‚ Ρƒ вас Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΅ΡΡ‚ΡŒ интСрСсная ΠΊ Π΄Π°Π½Π½ΠΎΠΉ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ. ΠžΡΡ‚Π°Π»ΠΎΡΡŒ совсСм Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ, Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΡƒΡ‡Π΅Π±Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΈΠ»ΠΈ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ Ρƒ мСня ΠΎΠ±Ρ€Π°Π·Π΅Ρ† . И ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ, ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ, ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ…

На ΠΏΠ΅Ρ€Π²Ρ‹Ρ… ΠΏΠΎΡ€Π°Ρ… ΡΡ‚Π°Ρ‚ΡŒΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π² Ρ€Π°Π·Π½ΠΎΠ±ΠΎΠΉ. Π‘ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ, надСюсь, всё устаканится ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ Π² Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅, начиная с Π°Π·ΠΎΠ² ΠΈ заканчивая Π±ΠΎΠ»Π΅Π΅ слоТными ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ.

ПишСм ΡƒΡ‡Π΅Π±Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ

ΠžΡΠ½ΠΎΠ²Ρ‹

Π’ΠΈΠΏΡ‹

ΠŸΠΎΠ±ΠΈΡ‚ΠΎΠ²Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ сравнСния

ЛогичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹

Π›ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ if

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ switch

Π¦ΠΈΠΊΠ», Π°

Π¦ΠΈΠΊΠ» do-while

Π¦ΠΈΠΊΠ» Π·Π°

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° break, continue, return

ΠšΠ»Π°ΡΡΡ‹ ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹

Класс Object

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹

Π’ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ.Π‘ΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ доступа

ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово static

Π’Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ ΠΈ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ классы

ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€

Π¨Π°Π±Π»ΠΎΠ½ Builder

Π¨Π°Π±Π»ΠΎΠ½ Singleton

НаслСдованиС

АбстрактныС классы ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹

ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹

Π‘Π»ΡƒΡˆΠ°Ρ‚Π΅Π»ΠΈ

Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ

ΠŸΠΎΡ‚ΠΎΠΊΠΈ. Класс Thread ΠΈ интСрфСйс Runnable

ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΡ enum

ΠžΠ±ΠΎΠ±Ρ‰Π΅Π½ΠΈΡ (ΠžΠ±Ρ‰ΠΈΠΉ)

РСкурсия

Класс String

ΠšΠ»Π°ΡΡΡ‹ StringBuffer ΠΈ StringBuilder

Класс TextUtils (ΠΏΠ°ΠΊΠ΅Ρ‚ android.тСкст)

Класс Scanner

Класс Math

BigDecimal ΠΈ BigInteger

ΠšΠ»Π°ΡΡΡ‹ Date, Calendar, DateFormat

Класс Π’Π°Π»ΡŽΡ‚Π°

Π―Π·Ρ‹ΠΊ

ΠœΠ°ΡΡΠΈΠ²Ρ‹

ΠœΠ°ΡΡΠΈΠ²Ρ‹.Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° (закрытая Π·ΠΎΠ½Π°)

ΠœΠ°ΡΡΠΈΠ²Ρ‹.ΠŸΠ΅Ρ€Π΅Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Π΅ΠΌ массив (закрытая Π·ΠΎΠ½Π°)

Π‘Ρ‚Π΅ΠΊ

ΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ

ArrayList

LinkedList

ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π°: Set, HashSet, LinkedHashSet, TreeSet

ΠšΠ°Ρ€Ρ‚Π° (ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅)

HashMap

LinkedHashMap

ArrayMap ΠΈ SparseArray

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ Бопоставимый

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠšΠΎΠΌΠΏΠ°Ρ€Π°Ρ‚ΠΎΡ€

БистСма Π²Π²ΠΎΠ΄Π° / Π²Ρ‹Π²ΠΎΠ΄Π°

Класс Ѐайл

Класс InputStream

Класс PrintStream

ΠšΠ»Π°ΡΡΡ‹ NIO

Π‘Π»ΡƒΡ‡Π°ΠΉΠ½ΠΎΠ΅

Π’Π°ΠΉΠΌΠ΅Ρ€ — классы Timer ΠΈ TimerTask

ΠŸΠ°ΠΊΠ΅Ρ‚ java.Π½Π΅Ρ‚Ρ‚ΠΎ

ΠŸΠ°ΠΊΠ΅Ρ‚ java.util.concurrent

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° событий

РСгулярныС выраТСния

Java 7. ΠŸΡƒΡ‚ΡŒ интСрфСйса

Новинки Java 8

Π―Π²Π° 8. Лямбды

Java 8. Stream API

Java 8. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ

Java 8. API Π΄Π°Ρ‚Ρ‹ ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ

Java 8. StringJoiner

ПишСм красивый ΠΊΠΎΠ΄

JOptionPane

НСобработанныС записи

Π›ΠΈΡˆΠ½Π΅Π΅

ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π°Ρ‚ΡŒ

Ρ€ΠΎΠ΄Π½ΠΎΠΉ

strictfp

Π—Π°Π΄Π°Ρ‡Π½ΠΈΠΊ

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒ свои знания, Ρ€Π΅ΡˆΠΈΠ² Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π° Π·Π½Π°Π½ΠΈΠ΅ Java.

Книги

Π˜Π·ΡƒΡ‡Π°Π΅ΠΌ Π―Π²Π°

Новая толстая ΠΊΠ½ΠΈΠ³Π° Π·Π° 2020 Π³ΠΎΠ΄. Книги ΠΈΠ· этой сСрии Ρ…ΠΎΡ€ΠΎΡˆΠΎ сСбя Π·Π°Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π»ΠΈ, поэтому стоит ΠΏΡ€ΠΈΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒΡΡ.

Π—Π°ΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠ½ΠΈΠ³Ρƒ

Π›Π΅Π³ΠΊΠΈΠΉ способ Π²Ρ‹ΡƒΡ‡ΠΈΡ‚ΡŒ Java

Будя ΠΏΠΎ оглавлСнию, Ρ‚Π°ΠΌ Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΉ Java ΠΈ ΠΏΠΎΠ΄ Android. А Π½Π° ΠΎΠ±Π»ΠΎΠΆΠΊΠ΅ ΠΊΠΎΡ‚ΠΈΠΊ!

Π—Π°ΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠ½ΠΈΠ³Ρƒ

Π‘Π½Π°Ρ‡Π°Π»Π° Π³ΠΎΠ»ΠΎΠ²Π°. ΠŸΠ°Ρ‚Ρ‚Π΅Ρ€Π½Ρ‹ проСктирования

Π”ΠΎΠ²ΠΎΠ»ΡŒΠ½ΠΎ интСрСсная ΠΊΠ½ΠΈΠ³Π°, которая пытаСтся ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ слоТныС прилоТСния ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ извСстных ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½ΠΎΠ².Π’ ΠΊΠ½ΠΈΠ³Π΅ постоянно класс Cat — ΠΆΠΈΡ€Π½Ρ‹ΠΉ плюс Π°Π²Ρ‚ΠΎΡ€Ρƒ.

Ѐилософия Java

Если Π½Π° Ρ„ΠΎΡ€ΡƒΠΌΠ΅ Π²Ρ‹ попроситС Π½Π°Π·Π²Π°Ρ‚ΡŒ самыС Π»ΡƒΡ‡ΡˆΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΡŽ Java, Ρ‚ΠΎ Π² Ρ‚Ρ€ΠΎΠΉΠΊΡƒ Π»ΠΈΠ΄Π΅Ρ€ΠΎΠ² ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠΏΠ°Π΄Π΅Ρ‚ ΠΊΠ½ΠΈΠ³Π° Ѐилософия Java (Thinking Java) ΠΎΡ‚ Π‘Ρ€ΡŽΡΠ° ЭккСля. Данная ΠΊΠ½ΠΈΠ³Π° Π΄Π°ΠΆΠ΅ Π² России Π²Ρ‹Π΄Π΅Ρ€ΠΆΠ°Π»Π° Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ издания, Ρ‡Ρ‚ΠΎ ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚. Π£ΠΆΠ΅ с ΠΏΠ΅Ρ€Π²Ρ‹Ρ… страниц Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ «Π‘лагодарности» Π°Π²Ρ‚ΠΎΡ€, пСрСчисляя своих Π΄Ρ€ΡƒΠ·Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³Π°Π»ΠΈ Π΅ΠΌΡƒ Π² написании ΠΊΠ½ΠΈΠ³ΠΈ, ΠΏΠΈΡˆΠ΅Ρ‚:

Кошка Молли часто сидСла Ρƒ мСня Π½Π° колСнях, ΠΏΠΎΠΊΠ° я Ρ€Π°Π±ΠΎΡ‚Π°Π» Π½Π°Π΄ ΠΊΠ½ΠΈΠ³ΠΎΠΉ.Π’Π°ΠΊ ΠΎΠ½Π° вносила свой Ρ‚Π΅ΠΏΠ»Ρ‹ΠΉ, ΠΏΡƒΡˆΠΈΡΡ‚Ρ‹ΠΉ Π²ΠΊΠ»Π°Π΄ Π² мою Ρ€Π°Π±ΠΎΡ‚Ρƒ.

НСуТСли послС Ρ‚Π°ΠΊΠΈΡ… слов Π²Ρ‹ всё Π΅Ρ‰Ρ‘ ΡΠΎΠΌΠ½Π΅Π²Π°Π΅Ρ‚Π΅ΡΡŒ Π² полСзности этой ΠΊΠ½ΠΈΠ³ΠΈ? Π‘Π΅Π³ΠΎΠΌ Π² ΠΌΠ°Π³Π°Π·ΠΈΠ½!

Java. ПолноС руководство

ΠžΡ‡Π΅Π½ΡŒ толстая ΠΊΠ½ΠΈΠ³Π° (Π±ΠΎΠ»Π΅Π΅ 1000 страниц) извСстного Π°Π²Ρ‚ΠΎΡ€Π° Π“Π΅Ρ€Π±Π΅Ρ€Ρ‚Π° Π¨ΠΈΠ»Π΄Ρ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΈΡˆΠ΅Ρ‚, Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅, Π½Π° всСх языках программирования Π² ΠΌΠΈΡ€Π΅. Π’ Π΅Π³ΠΎ ΠΊΠ½ΠΈΠ³Π΅ Ρ‚ΠΎΠΆΠ΅ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ кошки. НапримСр, ΠΏΡ€ΠΈ объяснСнии Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π° класса, ΠΎΠ½ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊΠ»Π°ΡΡΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΆΠΈΠ²ΠΎΡ‚Π½ΠΎΠ³ΠΎ ΠΌΠΈΡ€Π° ΠΈ вспоминаСт ΠΏΡ€ΠΎ отряд ΠΊΠΎΡˆΠ°Ρ‡ΡŒΠΈΡ….Π˜Π½Ρ‹ΠΌΠΈ словами, ΠΎΠ½ большС тяготССт ΠΊ собакам ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ источникам. А Ρ„Ρ€Π° Π·Π°ΠΏΠ°Ρ…Π·Π° «Π•ΡΠ»ΠΈ собака ΠΎΡ‰ΡƒΡ‚ΠΈΡ‚ кошки, ΠΎΠ½Π° Π·Π°Π»Π°Π΅Ρ‚ ΠΈ погонится Π·Π° Π½Π΅ΠΉ …» ΠΌΠ½Π΅ Π½Π΅ ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ»Π°ΡΡŒ. Π‘Ρ‚ΠΎΠΈΡ‚ Π»ΠΈ ΠΏΠΎΠΊΡƒΠΏΠ°Ρ‚ΡŒ ΠΊΠ½ΠΈΠ³Ρƒ?

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅

Π€ΠΎΡ€ΡƒΠΌ

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°

Π Π΅ΠΊΠ»Π°ΠΌΠ°

.

38 Π»ΡƒΡ‡ΡˆΠΈΡ… Android-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ Π½Π° Java

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ†Π΅Π½Π½Ρ‹ΠΌ рСсурсом для всСх программистов. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΌΠ½ΠΎΠ³ΠΎΠΌΡƒ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ, просто ΠΈΠ·ΡƒΡ‡ΠΈΠ² исходный ΠΊΠΎΠ΄ ΠΈΠ»ΠΈ ΠΆΠ΅ создаваСмоС Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΏΠΎΠ²Π΅Ρ€Ρ… ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Π’ этом спискС Π»ΡƒΡ‡ΡˆΠΈΡ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ для Android, написанныС Π½Π° Java. Π‘Ρ€Π΅Π΄Π½Π΅Π΅ число Π·Π²Π΅Π·Π΄ Github Π² Π½Π΅ΠΌ — 3 874.

Π‘ΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ сСти

Kickstarter — ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

NewPipe — лСгковСсный фронтэнд для YouTube.

WordPress — ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

Новости

Plaid — ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π΄ΠΈΠ·Π°ΠΉΠ½Π° Π² новостном Π°Π³Ρ€Π΅Π³Π°Ρ‚ΠΎΡ€Π΅.

FastHub — ΠΊΠ»ΠΈΠ΅Π½Ρ‚ для GitHub.

Materialistic — ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Hacker News Π² ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ Π΄ΠΈΠ·Π°ΠΉΠ½Π΅.

Π€ΠΎΡ‚ΠΎ ΠΈ Π²ΠΈΠ΄Π΅ΠΎ

Telecine — запись Π²ΠΈΠ΄Π΅ΠΎ.

LeafPic — галСрСя Π² ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ Π΄ΠΈΠ·Π°ΠΉΠ½Π΅.

ΠŸΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ

K-9 Mail — ΠΏΠΎΡ‡Ρ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚.

ownCloud — Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΈ организация всСго.

AmazeFileManager — Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€.

Omni-Notes — Π·Π°ΠΌΠ΅Ρ‚ΠΊΠΈ.

ΠœΡƒΠ·Ρ‹ΠΊΠ°

Timber — ΠΌΡƒΠ·Ρ‹ΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ»Π΅Π΅Ρ€.

Π€ΠΎΠ½ΠΎΠ³Ρ€Π°Ρ„ — ΠΌΡƒΠ·Ρ‹ΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ»Π΅Π΅Ρ€.

ΠœΡƒΠ·Ρ‹ΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ»Π΅Π΅Ρ€ Shuttle — Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½.

Π˜Π³Ρ€Ρ‹

Pixel Dungeon — традиционная Π°Ρ€ΠΊΠ°Π΄Π° Π² пиксСль-Π°Ρ€Ρ‚Π΅.

Google Santa Tracker для Android — Ρ€Π°Π·Π²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для Π΄Π΅Ρ‚Π΅ΠΉ.

2048 — классичСская ΠΈΠ³Ρ€Π° с числами.

ΠœΠ΅ΡΡΠ΅Π½Π΄ΠΆΠ΅Ρ€Ρ‹

Telegram — исходники Ρ‚ΠΎΠ³ΠΎ, ΠΊΠΎΠ³ΠΎ скоро Π² России Π·Π°ΠΊΡ€ΠΎΡŽΡ‚.

Π‘ΠΈΠ³Π½Π°Π» — ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½Ρ‹ΠΉ мСссСндТСр.

Qksms — красивый SMS-мСссСндТСр.

МСдиа

ExoPlayer — ΠΌΠ΅Π΄ΠΈΠ°-ΠΏΠ»Π΅Π΅Ρ€.

VLC — ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π»ΡƒΡ‡ΡˆΠΈΡ… ΠΏΠ»Π΅Π΅Ρ€ΠΎΠ² для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

AntennaPod — ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ подкастов.

MovieGuide — ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для открытия Π½ΠΎΠ²Ρ‹Ρ… Ρ„ΠΈΠ»ΡŒΠΌΠΎΠ².

Ѐинансы

CoCoin — ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ счСтами.

Kickmaterial — ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для ΠΊΡ€Π°ΡƒΠ΄Ρ„Π°Π½Π΄ΠΈΠ½Π³Π°.

Π‘ΠΈΡ‚ΠΊΠΎΠΉΠ½-кошСлСк для Android — кошСлСк.

GnuCash Android — отслСТиваниС Ρ‚Ρ€Π°Ρ‚.

АрхитСктура

Android CleanArchitecture — ΠΏΡ€ΠΈΠΌΠ΅Ρ€ чистой Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹.

Archi — Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ Android, MVP ΠΈ MVVM.

АрхитСктура Android MVP — ΠΏΡ€ΠΈΠΌΠ΅Ρ€ MVP.

Π£Ρ‚ΠΈΠ»ΠΈΡ‚Ρ‹

Shadowsocks — прокси socks5.

SoundRecorder — Π΄ΠΈΠΊΡ‚ΠΎΡ„ΠΎΠ½ с ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌ Π΄ΠΈΠ·Π°ΠΉΠ½ΠΎΠΌ.

Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠΈ

iosched — ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Google I / O 2017.

Wikipedia Android — ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ энциклопСдии.

Погода

SeeWeather — RxJava + RxBus + Retrofit + Glide + Material Design

.

πŸ›£οΈ ДороТная ΠΊΠ°Ρ€Ρ‚Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Android

ЦСль этого руководства — Π΄Π°Ρ‚ΡŒ прСдставлСниС ΠΎ ΠΌΠΈΡ€Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Android ΠΈ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π² освоСнии этого Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½ΠΎΠ³ΠΎ Π»Π°Π½Π΄ΡˆΠ°Ρ„Ρ‚Π°. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° прСдставлСнный Π½ΠΈΠΆΠ΅ ΠΏΠ»Π°Π½ являСтся лишь ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ². МнСния, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ. ΠœΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°Π΄Ρ‹ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ваши ΠΈΠ΄Π΅ΠΈ Π² коммСнтариях ΠΊ Π΄Π°Π½Π½ΠΎΠΌΡƒ посту.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅

Π”Π°Π½Π½Ρ‹ΠΉ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» ΠΌΡ‹ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ΅ ΠΎΠ½Π»Π°ΠΉΠ½-ΡˆΠΊΠΎΠ»Ρ‹ OTUS — с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этой ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‚Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ Android, Π½ΠΎ ΠΈ ΠΏΠΎΡƒΡ‡Π°ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² интСрСсных Π²Π΅Π±ΠΈΠ½Π°Ρ€Π°Ρ… Π½Π° ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹Π΅ Ρ‚Π΅ΠΌΡ‹. Π‘Π»ΠΈΠΆΠ°ΠΉΡˆΠΈΠΉ Π²Π΅Π±ΠΈΠ½Π°Ρ€, связанный с Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ для Android, состоится 21 сСнтября ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ посвящСн Dependency Injection с Hilt.

БущСствуСт нСсколько Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… способов Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для Android.МоТно ΠΏΠΎΠΉΡ‚ΠΈ ΠΏΠΎ ΠΏΡƒΡ‚ΠΈ создания Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π³Π΄Π΅ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространСны Flutter, React Native ΠΈ NativeScript. Flutter ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Dart, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ React Native ΠΈ Native Script ΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ Π½Π° JavaScript.

ΠžΡ‚Π²Π΅Ρ‚ Π½Π° вопрос ΠΎ Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½ΠΎΠΌ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ Π·Π° Ρ€Π°ΠΌΠΊΠΈ Π΄Π°Π½Π½ΠΎΠΉ Π΄ΠΎΡ€ΠΎΠΆΠ½ΠΎΠΉ ΠΊΠ°Ρ€Ρ‚Ρ‹ — ΠΎΠ½Π° ​​ориСнтирована Π½Π° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Π½ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для Android Π½Π° языках Java ΠΈ Kotlin.

Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ возмоТностСй Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹Ρ… Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ² ΠΌΡ‹ ΠΏΡ€ΠΎΠ²Π΅Π»ΠΈ Π² ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π’ΠΎΠΏ-10 Android-Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ².Наши ΠΊΠΎΠ»Π»Π΅Π³ΠΈ ΠΈΠ· OTUS ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΠ»ΠΈ курс Flutter Mobile Developer для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ заинтСрСсован Π² Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ΅ Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. А 21 сСнтября Π² 20:00 ΠΏΡ€ΠΎΠΉΠ΄Π΅Ρ‚ Π²Π΅Π±ΠΈΠ½Π°Ρ€ ΠΏΠΎ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Flutter.

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½Π° ​​полная вСрсия Π΄ΠΎΡ€ΠΎΠΆΠ½ΠΎΠΉ ΠΊΠ°Ρ€Ρ‚Ρ‹ Π² Π²ΠΈΠ΄Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ изобраТСния, созданного Π½Π° ΠΏΠΎΡ€Ρ‚Π°Π»Π΅ roadmap.sh. Π”Π°Π»Π΅Π΅ ΠΌΡ‹ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½Π΅Π΅ рассмотрим ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· Π±Π»ΠΎΠΊΠΎΠ² ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΠΌ ΠΈΡ… ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌΠΈ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°ΠΌΠΈ ΠΈ ссылками.

План развития Android-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°. Для ΠΏΠΎΠ»Π½ΠΎΡ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ просмотра ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ, ΠΊΠ»ΠΈΠΊΠ½ΠΈΡ‚Π΅ Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ ΠΈΠ»ΠΈ ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ ΠΏΠΎ <a href="https://roadmap.sh/roadmaps/android/roadmap.png" target="_blank" rel="noopener noreferrer nofollow">ссылкС</a> План развития Android-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°. Для ΠΏΠΎΠ»Π½ΠΎΡ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ просмотра ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ, ΠΊΠ»ΠΈΠΊΠ½ΠΈΡ‚Π΅ Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ ΠΈΠ»ΠΈ ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ ΠΏΠΎ ссылкС

Π§Ρ‚ΠΎ касаСтся языка, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ прилоТСния для Android с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Kotlin ΠΈΠ»ΠΈ Java. НСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π² 2019 Π³ΠΎΠ΄Ρƒ Google объявил Kotlin ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ языком Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Android-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½Π° Java написан ΠΊΠΎΠ»ΠΎΡΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ объСм ΠΊΠΎΠ΄Π°, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΠ»Π°Π²Π½ΠΎ.Π’ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Android ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠ΄Π° ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π° ΠΎΠ±ΠΎΠΈΡ… языках.

ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Π»Π°Π΄Π΅Π΅Ρ‚ ΠΎΠ±ΠΎΠΈΠΌΠΈ языками Π±ΡƒΠ΄Π΅Ρ‚ Π½Π° Ρ€Ρ‹Π½ΠΊΠ΅ Ρ‚Ρ€ΡƒΠ΄Π° ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ‚Π½ΠΎΠ΅ прСимущСство.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ свои знания Π½Π° языках, ΠΏΡ€ΠΎΠΉΠ΄ΠΈΡ‚Π΅ тСсты ΠΏΠΎ Π±Π°Π·ΠΎΠ²Ρ‹ΠΌ знаниям Java ΠΈ Kotlin. Или ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹ΠΉ тСст ΠΏΠΎ знаниям Java ΠΎΡ‚ OTUS.

Если Π²Ρ‹ ΡƒΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ с Java, Π½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΏΠΎΡ€Π° ΠΏΠΎΠ΄Π½ΡΡ‚ΡŒ свой ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ, совСтуСм курс OTUS Java Developer.ΠŸΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ. ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, ΠΊΠ°ΠΊ выглядит ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ 21 сСнтября Π² 20:00 Π½Π° ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ ΡƒΡ€ΠΎΠΊΠ΅ ΠœΠΈΠΊΡ€ΠΎΡΠ΅Ρ€Π²ΠΈΡΡ‹, управляСмыС событиями.

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ шаг — ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Android Studio ΠΈ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒ примСнСния языка Π²Π½ΡƒΡ‚Ρ€ΠΈ срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π£ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ отличная ясная докумСнтация, которая поддСрТиваСтся Π² Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΌ состоянии.

НСдавно Π²Ρ‹ΡˆΠ΅Π» Π½ΠΎΠ²Ρ‹ΠΉ Ρ€Π΅Π»ΠΈΠ· ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ — Ссли Π²Ρ‹ ΡƒΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ с Android Studio, ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° нововвСдСния вСрсии 4.0.

Git являСтся самой популярной систСмой управлСния вСрсиями ΠΊΠΎΠ΄Π°, Π° GitHub — самым популярным ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΌ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π².Если Π²Ρ‹ Π΄Π΅Π»Π°Π΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π²Ρ‹Π΅ шаги, ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΡ€Π°Π½ΡŒΡˆΠ΅ создайтС Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ для своих ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ². Π”Π°ΠΆΠ΅ Ссли Π²Ρ‹ Π½Π΅ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ ΠΈΡ… Π½ΠΈΠΊΠΎΠΌΡƒ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ — Π½Π° GitHub ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ.

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Π±Π»ΠΎΠΊΠ΅ прСдставлСн список Π²Π΅Ρ‰Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ для создания ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для Android. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ всё пСрСчислСнноС с самого Π½Π°Ρ‡Π°Π»Π°.ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ прСдставлСниС ΠΎ пСрСчислСнных элСмСнтах ΠΈ ​​просто Π½Π°Ρ‡Π½ΠΈΡ‚Π΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ интСрСсноС Π²Π°ΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, изучая ΠΏΠΎΡ…ΠΎΠ΄Ρƒ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΈ ΠΏΠΎΠ³Ρ€ΡƒΠΆΠ°ΡΡΡŒ Π³Π»ΡƒΠ±ΠΆΠ΅ Π² ΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅. МоТно Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠΌ ΠΏΠΎ Android нашСй супСрподборки ΠΏΠΎΠΊΡƒΠΏΠ°ΡŽ курсов ΠΈΠ»ΠΈ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒΡΡ Π½Π° ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ курс. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ, насколько Π²Ρ‹ Ρ…ΠΎΡ€ΠΎΡˆΠΎ Ρ€Π°Π·Π±ΠΈΡ€Π°Π΅Ρ‚Π΅ΡΡŒ Π² экосистСмС Android, ΠΏΡ€ΠΎΠΉΠ΄ΠΈΡ‚Π΅ комплСксный тСст OTUS.

ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΠΉΡ‚Π΅ ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ: Ρ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ Java, ΠΈΠ·ΡƒΡ‡Π°ΠΉΡ‚Π΅ рСсурсы Π½Π° Kotlin, смотритС YouTube-ΠΊΠ°Π½Π°Π»Ρ‹, ΡˆΡ‚ΡƒΠ΄ΠΈΡ€ΡƒΠΉΡ‚Π΅ вопросы с собСсСдований Π½Π° ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Android.

ΠŸΠΎΠ΄ΠΏΠΈΡΡ‹Π²Π°ΠΉΡ‚Π΅ΡΡŒ Π½Π° наши Ρ‚Π΅Π³ΠΈ Java, Kotlin, Android. ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ собрали ΠΏΠΎΠ΄Π±ΠΎΡ€ΠΊΡƒ плСйлистов YouTube ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… аспСктах мобильной Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠΎΠ΄ Android: курсы ΠΏΠΎ языкам ΠΈ созданию ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, записи Π΄ΠΎΠΊΠ»Π°Π΄ΠΎΠ² ΠΈ скринкастов, Π΄ΠΈΠ·Π°ΠΉΠ½ ΠΈ ΠΊΠΎΠ΄ΠΈΠ½Π³.

Π“Π»Π°Π²Π½ΠΎΠ΅ — ΡΡ‚Π°Ρ€Π°ΠΉΡ‚Π΅ΡΡŒ Ρ€Π°ΡΡˆΠΈΡ€ΡΡ‚ΡŒ свою Π»ΠΈΡ‡Π½ΡƒΡŽ Π΄ΠΎΡ€ΠΎΠΆΠ½ΡƒΡŽ ΠΊΠ°Ρ€Ρ‚Ρƒ дальшС. УчаствуйтС Π² Π²Π΅Π±ΠΈΠ½Π°Ρ€Π°Ρ… ΠΈ курсах, особСнно Ρ‚Π°ΠΊΠΈΡ…, Ρ‡Ρ‚ΠΎ максимально обогатят ваш ΠΊΡ€ΡƒΠ³ΠΎΠ·ΠΎΡ€.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Π·Π½Π°Π½ΠΈΠΉ ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° курсах, совСтуСм ΠΏΡ€ΠΎΠΉΡ‚ΠΈ подходящий тСст:

  • Java (Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²)
  • Flutter (Ссли Π²Ρ‹ Π²Ρ‹Π±Ρ€Π°Π»ΠΈ Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½ΡƒΡŽ ΠΊΠ°ΠΌΠ΅Ρ€Ρƒ)
  • Android

ΠŸΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π°Π΅ΠΌ: тСсты OTUS Π½Π΅ Ρ‚Π°ΠΊΠΈΠ΅ простыС, ΠΊΠ°ΠΊ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ тСстов Π½Π° ΠΎΠ±Ρ‰ΠΈΠ΅ знания.ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ состоит ΠΈΠ· 20 вопросов ΠΈ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΠΊΠΎΠ»ΠΎ 30 ΠΌΠΈΠ½. Π½Π° ΠΏΡ€ΠΎΡ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅.

Π‘Π°ΠΌΠΈ курсы:

.

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *