Swift 5.2 теперь доступен в бета-версии с улучшениями, включая меньший размер кода и более эффективное использование памяти, а также лучшую диагностику ошибок.
Swift был запущен Apple в 2014 году в качестве более простой альтернативы Objective C. Он включает в себя некоторые из лучших идей из таких языков, как C# и JavaScript, и стремится быть простым в использовании. Он был сделан Apple с открытым исходным кодом в 2015 году, и в этот момент была добавлена сборка Linux.
Наряду с улучшением размера и использования памяти, Swift 5.2 добавляет новую диагностическую архитектуру, предназначенную для повышения точности сообщений об ошибках, выдаваемых Xcode. В более ранних версиях Swift средство проверки типов использовалось для определения точного местоположения ошибки, и когда оно ошибалось, это приводило к неясным сообщениям об ошибках. Новая диагностическая инфраструктура работает по-другому. Вместо того чтобы гадать, где произошла ошибка, средство проверки типов пытается исправить проблемы в том месте, где они действительно возникли, запоминая при этом примененные исправления. Разработчики говорят, что это не только позволяет программе проверки типов выявлять ошибки в большем количестве программ, но и позволяет ей выявлять больше сбоев там, где раньше она просто останавливалась после сообщения о первой ошибке.
Swift 5.2 также добавляет несколько незначительных улучшений языка, начиная с возможности вызывать некоторые типы, как если бы они были функциями, что делает поддержку Swift для функционального программирования более сильной. Разработчики Swift уже могли передавать методы экземпляров любых типов в качестве функций, но новые типы средств поддержки могут вызываться так, как если бы они были функциями.
Второе улучшение языка — это возможность передавать ключевые пути в виде функций. Это может быть использовано вместо того, чтобы использовать
закрытие для извлечения данных из свойства. Вместо этого теперь вы можете напрямую передать путь к ключу этого свойства