ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ Apple
ΠΡΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ Π²ΡΠΏΡΡΠΊΠ° ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π±ΡΠ»ΠΎ ΡΠ΄Π΅Π»Π΅Π½ΠΎ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΡΡΠ΅Π΄ΡΡΠ² Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠΈ Π² ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ΅, ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ Π½Π°Π΄ΡΠΆΠ½ΠΎΡΡΠΈ ΠΎΡΠ»Π°Π΄ΠΊΠΈ, ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ Π² ΠΏΠ°ΠΊΠ΅ΡΠ½ΠΎΠΌ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ΅ ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° LSP (Language Server Protocol). Π ΡΠ·ΡΠΊ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ°
ΠΠ°ΠΏΠΎΠΌΠ½ΠΈΠΌ, ΡΡΠΎ ΡΠ·ΡΠΊ Swift Π½Π°ΡΠ»Π΅Π΄ΡΠ΅Ρ Π»ΡΡΡΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠ·ΡΠΊΠΎΠ² C ΠΈ Objective-C, ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΡ ΠΌΠΎΠ΄Π΅Π»Ρ, ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΡ Ρ Objective-C (Swift-ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ ΡΠΌΠ΅ΡΠΈΠ²Π°ΡΡΡΡ Ρ ΠΊΠΎΠ΄ΠΎΠΌ Π½Π° Π‘ ΠΈ Objective-C), Π½ΠΎ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠ΅Π΄ΡΡΠ² Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΈ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ², ΡΡΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅Ρ Π½Π°Π΄ΡΠΆΠ½ΠΎΡΡΡ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΠΊΠΎΠ΄Π°. Swift ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ Π·Π°ΠΌΡΠΊΠ°Π½ΠΈΡ, ΠΎΠ±ΠΎΠ±ΡΡΠ½Π½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅, Π»ΡΠΌΠ±Π΄Π°-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΡΠ΅ΠΆΠΈ ΠΈ ΡΠ»ΠΎΠ²Π°ΡΠ½ΡΠ΅ ΡΠΈΠΏΡ, Π±ΡΡΡΡΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π½Π°Π΄ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡΠΌΠΈ, ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠ΅ΡΡΠΈΡ Π΄Π»Ρ Linux Π½Π΅ ΠΏΡΠΈΠ²ΡΠ·Π°Π½Π° ΠΊ Objective-C Runtime, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ·ΡΠΊ Π² ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡΡ , Π² ΠΊΠΎΡΠΎΡΡΡ ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Objective-C.
PΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Swift ΠΏΠΎΡΡΡΠΎΠ΅Π½Π° Ρ Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° LLVM. ΠΠ»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π²ΡΡΠΎΠΊΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Swift-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΡΡΡΡ Π² ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ Π² ΡΠ΅ΡΡΠ°Ρ
Apple Π½Π° 30% Π±ΡΡΡΡΠ΅Π΅ ΠΊΠΎΠ΄Π° Π½Π° Objective-C. ΠΠΌΠ΅ΡΡΠΎ ΡΠ±ΠΎΡΡΠΈΠΊΠ° ΠΌΡΡΠΎΡΠ° Π² Swift ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΡΠ΅Π΄ΡΡΠ²Π° ΠΏΠΎΠ΄ΡΡΡΡΠ° ΡΡΡΠ»ΠΎΠΊ Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡΡ. Π ΠΏΠΎΡΡΠ°Π²ΠΊΡ Π²Ρ
ΠΎΠ΄ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠ½ΡΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru