Сфера разработки постоянно развивается и растет, языки программирования не исключение, ведь с завидной регулярностью появляются долгожданные обновления.
Каждый программист, в свою очередь, обязан следить за новинками отрасли и внимательно изучать, чтобы оставаться проинформированным специалистом в конкурентной среде.
В этой статье разберем новые фичи и функции, которые выпустили востребованные языки программирования, такие как:
- TypeScript;
- Scala;
- Ruby;
- Python;
- Kotlin.
Хотите стать разработчиком? Регистрируйтесь на курсы от DevEducation.
TypeScript
Microsoft выпустила TypeScript v4.4 с новыми функциями, улучшенной производительностью и предложением правописания в файлах JavaScript.
Эта версия имеет более быструю нормализацию пути файлов, чтобы привести их в согласованный формат для использования компилятором. Теперь они сначала проходят быструю проверку, которая, согласно внутреннему тестированию, помогает сократить время загрузки проекта на 5-10%.
Также в этом последнем выпуске представлен анализ потока управления для условий с псевдонимом и дискриминантов, который проверяет, использовалась ли защита типа перед определенным фрагментом кода.
TypeScript v4.4 отличается более быстрым сопоставлением путей: кэшируется способ построения, что приводит к значительному сокращению времени на задачу.
Отличается версия и мгновенной инкрементальной сборкой.
Кроме того, была добавлена оптимизация для создания исходной карты для очень больших выходных файлов. Это приводит к сокращению времени выдачи примерно на 8% при сборке более старой версии компилятора TypeScript. Еще одна новая функция в бета-версии v4.4 — варианты написания в файлах JavaScript.
Еще одна новая функция — это индексные подписи для шаблонов строк символов. Индексные подписи используются для описания объектов, обладающих свойствами, но до сих пор они могли применяться только для строковых и числовых ключей.
Теперь в TypeScript 4.4 «неизвестный» тип будет по умолчанию для перехвата переменных. Согласно Microsoft, в JavaScript любой вид значения может быть выброшен, а затем перехвачен в catch.
Еще один новый флаг, представленный в TypeScript 4.4, — «–exactOptionalPropertyTypes». Он указывает, что типы свойств должны интерпретироваться как записанные. В Microsoft считают, что этот флаг не является частью семейства –strict и должен быть включен, если разработчик хочет его использовать.
TypeScript 4.4 также добавил поддержку статических блоков в классах, что является будущей функцией ECMAScript. Они могут использоваться для написания последовательности операторов с их собственной областью видимости, которые могут получить доступ к закрытым полям внутри содержащего класса. Это позволяет разработчикам писать более сложный код инициализации.
Scala
Поскольку в ранее выпущенной версии Scala 3.0.2-RC2 не было обнаружено критических ошибок, она была повышена до 3.0.2 и является текущим стабильным вариантом.
Улучшена вставка точек с запятой в логических условиях. Синтаксис языка программирования, основанный на отступах, нацелен на то, чтобы сделать код более лаконичным и читаемым. По мере того, как он получает более широкое распространение, его спецификацию постоянно улучшается.
Теперь разрешено, чтобы логическое выражение в операторе if или выражении продолжалось в следующей строке, если оно начинается в той же строке, что и ключевое слово.
Параметр компилятора -Yexplicit-nulls изменяет стандартную иерархию типов Scala, чтобы упростить отслеживание значений, допускающих NULL, путем выполнения строгих проверок непосредственно на уровне системы.
В последней версии можно просматривать документацию Scala API не только по именам методов, но и по их типу.
Ruby
Выпущены версии RubyInstaller 3.0.2-1, 2.7.4-1 и 2.6.8-1. Это служебные выпуски с исправлениями ошибок и усовершенствованием безопасности.
Новые версии поддерживают длину пути более 260 символов. В папку /bin добавлены исполняемые файлы racc, rbs и typeprof. Обратите внимание, что некоторые системы управления пакетами еще не совместимы с Ruby-3.0 в Windows. В этом случае вы можете оставаться на 2.7, пока 3.0 не будет хорошо поддерживаться.
Предыдущая установка RubyInstaller-2.6.x или 2.7.x не должна обновляться путем установки RubyInstaller-3.0.x в тот же каталог.
Python
Язык программирования Python обновили до версий 3.9.7 и 3.8.12. Несмотря на то, что Python 3.10 скоро станет последним вариантом языка с предоставлением некоторых передовых функций, потребуется некоторое время, прежде чем он станет широко распространенным и будет полностью поддерживаться сторонними поставщиками библиотек. Поэтому большинство компаний, которые используют его в коммерческих целях, скорее всего, какое-то время будут придерживаться немного более старых версий, поскольку они стабильнее и проверены в боевых условиях.
Python 3.9.7 теперь является новейшей стабильной версией языка программирования, поэтому вам следует подумать об установке. Этот выпуск включает в себя несколько десятков исправлений безопасности и ошибок, а также небольшие оптимизации и улучшения. Python 3.9 будет поддерживаться примерно до октября 2025 года.
Python 3.8.12 — это второй патч, предназначенный только для безопасности, для устаревшей серии 3.8. Между тем, он будет действовать до октября 2024 года, хотя и без регулярных обновлений.
Помимо бесчисленных исправлений ошибок, а также улучшений производительности и удобства использования, еще одним интересным нововведением является переход от встроенного модуля venv к библиотеке virtualenv для создания виртуальной среды. Это небольшое изменение предположительно позволяет значительно ускорить работу за счет использования кэширования.
Регистрируйтесь на курсы от DevEducation и читайте наш IT-блог