ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ Apple ΠΎΠ±ΡΡΠ²ΠΈΠ»Π° ΠΎ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π²Π°ΡΠΈΠ°Π½ΡΠ° ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Swift SDK Π΄Π»Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Android. SDK ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½ ΡΠ°Π±ΠΎΡΠ΅ΠΉ Π³ΡΡΠΏΠΏΠΎΠΉ, ΡΠΎΠ·Π΄Π°Π½Π½ΠΎΠΉ ΠΈ ΠΈΡΠ½Π΅ Π΄Π»Ρ ΠΏΡΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ Swift Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ·ΡΠΊΠ° Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π΄Π»Ρ Android. Π‘Π±ΠΎΡΠΊΠΈ Swift SDK Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Android-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Ρ Π΄Π»Ρ macOS, Linux ΠΈ Windows.
ΠΠ»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π° Π±Π°Π·ΠΎΠ²Π°Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΏΠΎ Π½Π°ΡΠ°Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΡΡ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° ΡΠ·ΡΠΊΠ΅ Swift, ΡΠΏΠΎΡΠΎΠ±Π½ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅ Android, ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π³ΠΎΡΠΎΠ²ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π’Π°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΠΎ ΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π»Ρ Android ΡΠ°Π½Π΅Π΅ ΡΠΎΠ·Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ Swift ΠΏΠ°ΠΊΠ΅ΡΠΎΠ². Π ΡΠ΅ΠΊΡΡΠ΅ΠΌ Π²ΠΈΠ΄Π΅ΠΎ 27.9% ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² (~9000), ΡΠ°Π·ΠΌΠ΅ΡΡΠ½Π½ΡΡ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ Swift Package Index, ΡΠΆΠ΅ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠΎΠ±ΡΠ°Π½Ρ Π΄Π»Ρ Android. ΠΠ»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΠΎΡΡΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ·ΡΠΊΠ°ΠΌΠΈ Java ΠΈ Swift ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ ΠΏΠ°ΠΊΠ΅Ρ swift-java, Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΠΉ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ ΠΎΠ±Π²ΡΠ·ΠΎΠΊ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Π΄Π»Ρ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΈΠ· Swift-ΠΊΠΎΠ΄Π° ΠΊ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌ Π½Π° ΡΠ·ΡΠΊΠ΅ Java ΠΈ Π½Π°ΠΎΠ±ΠΎΡΠΎΡ.
Π―Π·ΡΠΊ Swift ΡΠΎΡΠ΅ΡΠ°Π΅Ρ Π»ΡΡΡΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠ·ΡΠΊΠΎΠ² C ΠΈ Objective-C, ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΡ ΠΌΠΎΠ΄Π΅Π»Ρ, ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΡ Ρ Objective-C (Swift-ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ ΡΠΌΠ΅ΡΠΈΠ²Π°ΡΡΡΡ Ρ ΠΊΠΎΠ΄ΠΎΠΌ Π½Π° Π‘ ΠΈ Objective-C), Π½ΠΎ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠ΅Π΄ΡΡΠ² Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ, ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΈ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ², Π·Π°ΡΠΈΡΠΎΠΉ ΠΎΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π½Π΅ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΈ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΠΏΠ°ΠΌΡΡΠΈ ΠΏΠΎΡΠ»Π΅ Π΅Ρ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π΅Π½ΠΈΡ, ΡΡΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅Ρ Π½Π°Π΄ΡΠΆΠ½ΠΎΡΡΡ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΠΊΠΎΠ΄Π°. Swift ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ Π·Π°ΠΌΡΠΊΠ°Π½ΠΈΡ, ΠΎΠ±ΠΎΠ±ΡΡΠ½Π½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅, Π»ΡΠΌΠ±Π΄Π°-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΡΠ΅ΠΆΠΈ ΠΈ ΡΠ»ΠΎΠ²Π°ΡΠ½ΡΠ΅ ΡΠΈΠΏΡ, Π±ΡΡΡΡΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π½Π°Π΄ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡΠΌΠΈ, ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
PΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Swift ΠΏΠΎΡΡΡΠΎΠ΅Π½Π° Ρ Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ ΠΏΡΠΎΠ΅ΠΊΡΠ° LLVM. ΠΠ»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π²ΡΡΠΎΠΊΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Swift-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΡΡΡΡ Π² ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π² ΠΏΡΠΎΠ²Π΅Π΄ΡΠ½Π½ΡΡ
ΡΠ΅ΡΡΠ°Ρ
Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π½Π° 30% ΠΎΠΏΠ΅ΡΠ΅ΠΆΠ°ΡΡΡΡ ΠΊΠΎΠ΄ Π½Π° Objective-C. ΠΠΌΠ΅ΡΡΠΎ ΡΠ±ΠΎΡΡΠΈΠΊΠ° ΠΌΡΡΠΎΡΠ° Π² Swift ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΡΠ΅Π΄ΡΡΠ²Π° ΠΏΠΎΠ΄ΡΡΡΡΠ° ΡΡΡΠ»ΠΎΠΊ Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡΡ. Π ΠΏΠΎΡΡΠ°Π²ΠΊΡ Π²Ρ
ΠΎΠ΄ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠ½ΡΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ Swift Package Manager, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌΠΈ ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ Π½Π° ΡΠ·ΡΠΊΠ΅ Swift, ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΠΌΠΈ, Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΈ, ΡΠ±ΠΎΡΠΊΠΈ ΠΈ ΡΠ²ΡΠ·ΡΠ²Π°Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ². ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ Π΄Π»Ρ ΡΠ·ΡΠΊΠ° Swift ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ Apache 2.0.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
