АпплС ΠΎΠ±Ρ˜Π°Π²Ρ™ΡƒΡ˜Π΅ програмски јСзик Π‘Π²ΠΈΡ„Ρ‚ 5.3 ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Π‘Π²ΠΈΡ„Ρ‚ БистСм ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ΠΎΠ³ ΠΊΠΎΠ΄Π°

АпплС најавио ΠΎΠ± ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ исходных тСкстов Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Swift System, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ идСоматичСский Π½Π°Π±ΠΎΡ€ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… интСрфСйсов ΠΊ систСмным Π²Ρ‹Π·ΠΎΠ²Π°ΠΌ ΠΈ Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΌ Ρ‚ΠΈΠΏΠ°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ…. Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Swift System ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π» Ρ‚ΠΎΠ»ΡŒΠΊΠΎ систСмныС Π²Ρ‹Π·ΠΎΠ²Ρ‹ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ Apple, Π½ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ ΠΈ для Linux. Код Swift System написан Π½Π° языкС Swift ΠΈ дистрибуира Π»ΠΈΡ†Π΅Π½Ρ†ΠΈΡ€Π°Π½ ΠΏΠΎΠ΄ АпацхС 2.0.

Swift System прСдоставляСт Π΅Π΄ΠΈΠ½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ доступа ΠΊ систСмным интСрфСйсам, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° всСх ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ… Π±Π΅Π· примСнСния Π² Swift-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ… спСцифичных обвязок Π½Π° языкС Π‘ΠΈ. ΠŸΡ€ΠΈ этом Swift System Π½Π΅ ΡƒΠ½ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅Ρ‚ сами систСмныС Π²Ρ‹Π·ΠΎΠ²Ρ‹, Π° прСдоставляСт ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ΅ подмноТСство API для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ Ρ‚ΠΎΡ‡Π½ΠΎ ΠΎΡ‚Ρ€Π°ΠΆΠ°ΡŽΡ‰Π΅Π΅ Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹Π΅ интСрфСйсы ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы. ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ Ρ†Π΅Π»ΡŒΡŽ создания Swift System являСтся ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½ΠΈΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ кросс-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½Ρ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Π‘Π²ΠΈΡ„Ρ‚ΠΠ˜Πž ΠΈ SwiftPM. Swift System Π½Π΅ отмСняСт Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ вСтвлСния Π½Π° основС Β«#if os()Β» ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ ΠΊ Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΌ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π°ΠΌ, Π½ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Π΄Π°Π½Π½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π±ΠΎΠ»Π΅Π΅ бСзопасной ΠΈ
ΡƒΠ΄ΠΎΠ±Π½ΠΎΠΉ.

Π’Π°ΠΊΠΎΡ’Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ‚ΠΈΡ‚ΠΈ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π° Ρ€Π΅Π»ΠΈΠ·Π° языка программирования Π‘Π²ΠΈΡ„Ρ‚ КБНУМКБ. Π—Π²Π°Π½ΠΈΡ‡Π½Π΅ Π·Π³Ρ€Π°Π΄Π΅ ΠΏΡ€ΠΈΠΏΡ€Π΅ΠΌΡ™Π΅Π½ для Linux (Ubuntu 16.04/18.04/20.04, Π‘entOS 7/8), macOS (Xcode 12) ΠΈ Windows 10. Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹Π΅ тСксты ΡˆΠΈΡ€Π΅ΡšΠ΅ Π»ΠΈΡ†Π΅Π½Ρ†ΠΈΡ€Π°Π½ ΠΏΠΎΠ΄ АпацхС 2.0.

Π’ Π½ΠΎΠ²ΠΎΠΌ выпускС Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π½Π°Ρ‡Π°Π»ΡŒΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Windows ΠΈ Π·Π°ΠΏΠΎΡ‡Π΅ΠΎ поставка инструмСнтария для сборки ΠΈ запуска Swift-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² Windows 10. ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΎ ΠΎΡ‚Ρ‚Π°Ρ‡ΠΈΠ²Π°Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ языка. Из Π½ΠΎΠ²Ρ‹Ρ… возмоТностСй отмСчаСтся Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€Π° для Ρ‚ΠΈΠΏΠ° String, Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ выраТСния Β«whereΒ», ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ сСмантики didSet, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° указания Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… шаблонов Π² выраТСниях Catch, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ°
Float16, Π°Ρ‚ΠΎΠΌΠ°Ρ€Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ.

Π‘Π½ΠΈΠΆΠ΅Π½ Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ β€” Ссли Π² Swift 4 Ρ€Π°Π·ΠΌΠ΅Ρ€ собранной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π» Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π½Π° Objective-C Π² 2.3 Ρ€Π°Π·Π°, Ρ‚ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Ρ€Π°Π·Ρ€Ρ‹Π² сокращён Π΄ΠΎ 1.5 Ρ€Π°Π·Π°. Π’ Π½ΠΎΠ²ΠΎΠΌ выпускС Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎ ускорСна ΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Π°Ρ сборка ΠΈ сборка ΠΊΠΎΠ΄Π° с большим числом свойств ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΈΡ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ. Π Π°ΡΡˆΠΈΡ€Π΅Π½Ρ‹ срСдства диагностики Π² компиляторС ΠΈ качСство Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΡ‹Ρ… сообщСний ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ…. Π’ ΠΏΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠΌ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π² ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… рСсурсов, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… Π²ΠΎ врСмя исполнСния, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ изобраТСния. Π’ ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² для Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ опрСдСлСния условных зависимостСй.

ΠŸΠΎΠ΄ΡΠ΅Ρ‚ΠΈΠΌΠΎ сС Π΄Π° Π‘Π²ΠΈΡ„Ρ‚ јСзик Π½Π°ΡΠ»Π΅Ρ’ΡƒΡ˜Π΅ Π½Π°Ρ˜Π±ΠΎΡ™Π΅ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚Π΅ Π¦ ΠΈ ΠžΠ±Ρ˜Π΅Ρ†Ρ‚ΠΈΠ²Π΅-Π¦ јСзика ΠΈ ΠΎΠ±Π΅Π·Π±Π΅Ρ’ΡƒΡ˜Π΅ ΠΌΠΎΠ΄Π΅Π» ΠΎΠ±Ρ˜Π΅ΠΊΡ‚Π° ΠΊΠΎΠΌΠΏΠ°Ρ‚ΠΈΠ±ΠΈΠ»Π°Π½ са ΠžΠ±Ρ˜Π΅Ρ†Ρ‚ΠΈΠ²Π΅-Π¦ (Π‘Π²ΠΈΡ„Ρ‚ ΠΊΠΎΠ΄ сС ΠΌΠΎΠΆΠ΅ ΠΌΠ΅ΡˆΠ°Ρ‚ΠΈ са Π¦ ΠΈ ΠžΠ±Ρ˜Π΅Ρ†Ρ‚ΠΈΠ²Π΅-Π¦ ΠΊΠΎΠ΄ΠΎΠΌ), Π°Π»ΠΈ сС Ρ€Π°Π·Π»ΠΈΠΊΡƒΡ˜Π΅ Ρƒ ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈ аутоматског Π΄ΠΎΠ΄Π΅Ρ™ΠΈΠ²Π°ΡšΠ΅ ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π΅ ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π° ΠΏΡ€Π΅Π»ΠΈΠ²Π°ΡšΠ° ΠΏΡ€ΠΎΠΌΠ΅Π½Ρ™ΠΈΠ²ΠΈΡ… ΠΈ Π½ΠΈΠ·ΠΎΠ²Π°, ΡˆΡ‚ΠΎ Π·Π½Π°Ρ‡Π°Ρ˜Π½ΠΎ ΠΏΠΎΠ²Π΅Ρ›Π°Π²Π° поузданост ΠΈ сигурност ΠΊΠΎΠ΄Π°. Π‘Π²ΠΈΡ„Ρ‚ Ρ‚Π°ΠΊΠΎΡ’Π΅ Π½ΡƒΠ΄ΠΈ ΠΌΠ½ΠΎΠ³Π΅ ΠΌΠΎΠ΄Π΅Ρ€Π½Π΅ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°ΡšΠ°, ΠΊΠ°ΠΎ ΡˆΡ‚ΠΎ су Π·Π°Ρ‚Π²Π°Ρ€Π°ΡšΠ°, Π³Π΅Π½Π΅Ρ€ΠΈΡ‡ΠΊΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°ΡšΠ΅, Π»Π°ΠΌΠ±Π΄Π° ΠΈΠ·Ρ€Π°Π·ΠΈ, Ρ‚ΡƒΠΏΠ»Π΅ ΠΈ Ρ‚ΠΈΠΏΠΎΠ²ΠΈ Ρ€Π΅Ρ‡Π½ΠΈΠΊΠ°, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ˜Π΅ Π±Ρ€Π·ΠΎΠ³ ΠΏΡ€ΠΈΠΊΡƒΠΏΡ™Π°ΡšΠ° ΠΈ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π½ΠΎΠ³ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°ΡšΠ°. Π›ΠΈΠ½ΡƒΠΊ Π²Π΅Ρ€Π·ΠΈΡ˜Π° нијС Π²Π΅Π·Π°Π½Π° Π·Π° ΠžΠ±Ρ˜Π΅Ρ†Ρ‚ΠΈΠ²Π΅-Π¦ Π ΡƒΠ½Ρ‚ΠΈΠΌΠ΅, ΡˆΡ‚ΠΎ ΠΎΠΌΠΎΠ³ΡƒΡ›Π°Π²Π° Π΄Π° сС јСзик користи Ρƒ ΠΎΠΊΡ€ΡƒΠΆΠ΅ΡšΠΈΠΌΠ° која Π½Π΅ΠΌΠ°Ρ˜Ρƒ ΠΏΠΎΠ΄Ρ€ΡˆΠΊΡƒ Π·Π° ΠžΠ±Ρ˜Π΅Ρ†Ρ‚ΠΈΠ²Π΅-Π¦.

Π˜ΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ˜Π° Π‘Π²ΠΈΡ„Ρ‚-Π° јС ΠΈΠ·Π³Ρ€Π°Ρ’Π΅Π½Π° ΠΊΠΎΡ€ΠΈΡˆΡ›Π΅ΡšΠ΅ΠΌ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΡ˜Π° ΠΈΠ· бСсплатног Π›Π›Π’Πœ ΠΏΡ€ΠΎΡ˜Π΅ΠΊΡ‚Π°. Π”Π° Π±ΠΈ сС ΠΎΠ±Π΅Π·Π±Π΅Π΄ΠΈΠ»Π΅ високС пСрформансС, Π‘Π²ΠΈΡ„Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ сС ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»ΠΈΡ€Π°Ρ˜Ρƒ Ρƒ ΠΈΠ·Π²ΠΎΡ€Π½ΠΈ ΠΊΠΎΠ΄ који Ρ€Π°Π΄ΠΈ 30% Π±Ρ€ΠΆΠ΅ ΠΎΠ΄ ΠžΠ±Ρ˜Π΅Ρ†Ρ‚ΠΈΠ²Π΅-Π¦ ΠΊΠΎΠ΄Π° Ρƒ АпплС тСстовима. УмСсто сакупљача смСћа, Π‘Π²ΠΈΡ„Ρ‚ користи Π±Ρ€ΠΎΡ˜Π°ΡšΠ΅ Ρ€Π΅Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈ Π½Π° ΠΎΠ±Ρ˜Π΅ΠΊΡ‚Π΅. ΠŸΠ°ΠΊΠ΅Ρ‚ ΡƒΠΊΡ™ΡƒΡ‡ΡƒΡ˜Π΅ ΠΌΠ΅Π½Π°ΡŸΠ΅Ρ€ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π‘Π²ΠΈΡ„Ρ‚ ΠŸΠ°Ρ†ΠΊΠ°Π³Π΅ ΠœΠ°Π½Π°Π³Π΅Ρ€, који ΠΎΠ±Π΅Π·Π±Π΅Ρ’ΡƒΡ˜Π΅ Π°Π»Π°Ρ‚Π΅ Π·Π° Π΄ΠΈΡΡ‚Ρ€ΠΈΠ±ΡƒΡ†ΠΈΡ˜Ρƒ ΠΌΠΎΠ΄ΡƒΠ»Π° ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Π° са Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠ° ΠΈ Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π°ΠΌΠ° Π½Π° Π‘Π²ΠΈΡ„Ρ‚ Ρ˜Π΅Π·ΠΈΠΊΡƒ, ΡƒΠΏΡ€Π°Π²Ρ™Π°ΡšΠ΅ зависностима, Π°ΡƒΡ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΡƒΡ‡ΠΈΡ‚Π°Π²Π°ΡšΠ΅, ΠΏΡ€Π°Π²Ρ™Π΅ΡšΠ΅ ΠΈ повСзивањС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ.

Π˜Π·Π²ΠΎΡ€: ΠΎΠΏΠ΅Π½Π½Π΅Ρ‚.Ρ€Ρƒ

Π”ΠΎΠ΄Π°Ρ˜ ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€