Третья бета iOS 12.3 beta 3 выпущена для разработчиков

В этой статье мы осветим всю известную информацию про iOS 14: предполагаемая дата выхода ОС, список поддерживаемых устройств, что в ней нового, возможности, которые может получить новая ОС для iPhone.

Новая версия лаунчера: 3

Прошло три недели с последнего обновления лаунчера, а это значит, что пришла пора появиться новой, улучшенной версии — 2020.3

Новая версия лаунчера: 3

Новое

  • Кнопка «Управлять модификациями» теперь предоставляет возможность упорядочить ваши моды в алфавитном и обратном алфавитном порядке. Раньше это было доступно только для игр с отключенным порядком загрузки, но теперь такая опция есть во всех играх.
Новая версия лаунчера: 3
  • Поле «директория» было (вновь) добавлено на экран загрузки модов.
  • Окно «Инструменты модификаций» теперь при открывании реагирует на смену языка.
Новая версия лаунчера: 3

Изменённое поведение

  • Улучшена производительность у пользователей с большим количеством модов.
Новая версия лаунчера: 3
  • Улучшен интерфейс игр с установленным светлым фоном.
  • Улучшено обращение модов с длинными названиями.
Новая версия лаунчера: 3
  • Окно «Управлять модификациями» больше не предоставляет возможности перетаскивать моды курсором, если установлен только один.
  • Старые игры PDS: «Инструменты модификаций» больше не позволят вам создавать моды с пустыми полями названия или версии.
Новая версия лаунчера: 3
  • Небольшие улучшения интерфейса в разных местах.

Правки

Новая версия лаунчера: 3
  • Исправлен возможный вылет при запуске через Microsoft Game Pass.
  • Исправлено состояние гонок, приводившее к тому, что некоторые пользователи видели сообщение об «Ошибке доступа в Steam».
Новая версия лаунчера: 3
  • macOS: лаунчер больше не будет просить получать нажатия кнопок от всех приложений. (Это было проблемой с нашей интеграцией SDL2).
  • Миникартинки модов больше не кэшируются вечно.
Новая версия лаунчера: 3
  • Мы повторно исправили фикс бага прокрутки колёсика мыши. Теперь вы можете (в смысле, правда можете) вновь использовать колёсико мышки, перетаскивая моды в окне «Управлять модификациями».
Читайте также:  Лучшие камерофоны 2020 года: выбор ZOOM

Если патч выглядит небольшим, то это потому, что мы одновременно работаем над несколькими крупными новшествами. Ожидайте новостей.

Новая версия лаунчера: 3

Основные функции Python

1) Частотность 1 в двоичном представлении

В Python будет представлен новый метод bit_count(), возвращающий число единиц в двоичном представлении целого числа. Результат будет независим от знака целого числа. Эта функциональность может пригодиться в теории информации для нахождения общего количества мест различий двух строк одинаковой длины. Эта разница называется расстоянием Хэмминга. Если вас интересует история этой функциональности в Python, ее можно почитать здесь (eng).

Внутри этого метода происходит вызов метода count типа str как (‘1’). Следующий пример объясняет этот процесс:

# Положительное целое число >>> num = 108 # Сначала получаем двоичное представление num >>> bin(num) ‘0b1101100’ >>> _count() 4 # Отрицательное целое число >>> num = -108 >>> bin(num) ‘-0b1101100’ >>> _count() 4 # События внутри метода >>> bin(num).count(‘1’)

2) «Более строгое» архивирование

В функцию zip будет добавлен новый опциональный именованный аргумент strict. При передаче strict=True итерируемые объекты в zip должны быть одинаковой длины, иначе возникнет ошибка ValueError. До версии Python 3.9 при архивировании двух списков разной длины вывод был равен длине меньшего списка.

Как видно из следующего примера, до Python функция zip() игнорировала ‘D’ в первом списке, не имеющий совпадений во втором. А Python в этом случае вызовет ошибку ValueError. Полезная функция, побуждающая пересмотреть вводные данные. Подробнее об этой теме можно почитать на PEP 618.

До Python :

>>> list(zip([’A’, ‘B’, ‘C’, ‘D’], [’Apple’, ‘Ball’, ‘Cat’])) [(‘A’, ‘Apple’), (‘B’, ‘Ball’), (‘C’, ‘Cat’)]

В Python :

>>> list(zip([’A’, ‘B’, ‘C’, ‘D’], [’Apple’, ‘Ball’, ‘Cat’], strict=True)) Traceback (most recent call last): … ValueError: zip() argument 1 is longer than argument 2

Читайте также:  Как на Айфоне почистить кэш, освободить память

3) Представления для словарей с доступом только для чтения

Три ключевых метода словарей keys(), values() и items() возвращают подобные наборам объекты, которые соответствуют динамическому представлению ключей, значений и элементов словарей. Любые изменения в одном из этих представлений будут отражены в исходном словаре.

В Python все возвращенные из этих трех методов представления будут иметь дополнительный атрибут mapping, возвращающий доступный только для чтения прокси отображения. Он будет оборачивать исходный словарь, на который ссылается представление. Следующий пример иллюстрирует этот процесс.

Определяем словарь и сохраняем его ключи и значения в разных переменных:

>>> fruits = {‘Mangos’: 12, ‘Figs’: 100, ‘Guavas’: 3, ‘Kiwis’: 70} >>> keys = () >>> values = () >>> list(keys) [’Mangos’, ‘Figs’, ‘Guavas’, ‘Kiwis’]

Удаляем два элемента из этого словаря с помощью оператора del. Теперь при запросе ключей и значений он возвращает только оставшиеся элементы. Изменения в исходном словаре отражаются в представлениях (в данном случае keys и values).

>>> del fruits[’Figs’] >>> del fruits[’Guavas’] >>> print (list(keys), list(values)) [’Mangos’, ‘Kiwis’] [12, 70]

Теперь с помощью mapping можно получить доступный только для чтения прокси исходного словаря!

# Возвращает доступный только для чтения прокси исходного словаря >>> mappingproxy({‘Mangos’: 12, ‘Figs’: 100, ‘Guavas’: 3, ‘Kiwis’: 70}) >>> [’Guavas’] 3

4) Удаление некоторых обратных совместимостей

В Python и версиях выше будет прекращена поддержка псевдонимов для абстрактных базовых классов (Abstract Base Classes — ABC) из модуля collections. Самое время обратить внимание на соответствующие предупреждения об устаревании и адаптировать свой код!

До Python (выпущен 3 июля 2020 года):

Читайте также:  Как откатить обновление приложения на iOS

При импорте любого из этих ABC напрямую из модуля collections будет появляться DeprecationWarning:

>>> from collections import ABC_Name DeprecationWarning: Using or importing the ABCs from ‘collections’ instead of from » is deprecated since Python 3.3,and in 3.9 it will stop working

Вот и все! Вы также можете следить за расписаниями релизов для текущих и будущих версий здесь: 3.8, 3.9, 

  • Работа с панелью индикаторов. Руководство программиста Python. Часть 1
  • Не автоматизируйте всё подряд
  • 6 веских причин поговорить об f-строках в Python

Перевод статьи Ankit Gupta: Python in 2021 — Timeline and upcoming features

Новые возможности Siri и QuickType в iOS 10

Были улучшены возможности помощника Siri, а именно его работа в качестве ассистента пользователя. Теперь с помощью данной функции, можно голосом управлять ещё и сторонними приложениями. С входом данной версии ОС, теперь можно будет запускать поиск нужной информации в интернете, вызывать такси или писать сообщение нужному контакту.

Функция QuickType станет настоящим помощников тем людям, кто часто пользуется переписками в чатах. С помощью её возможностей появится целый набор полезных функций по взаимодействию с контактами, последними звонками, календарём и т.д.

Приложение дополненной реальности

Apple, похоже, намерена сделать ещё один большой шаг в направлении дополненной реальности с новым приложением для iOS 14, предназначенным для просмотра AR-контента.

Детали того, как приложение будет работать, пока неясны. Похоже, что Apple даст третьим сторонам возможность создавать AR-теги. Затем пользователи могут сканировать эти теги в магазине, чтобы увидеть виртуальный объект, наложенный на реальный мир.

Приложение дополненной реальности

Прямо сейчас пользователи iPhone должны загружать отдельные приложения для просмотра определенного контента AR. Новое специализированное AR-приложение для iOS 14 может изменить это, позволив пользователям просматривать все с одного экрана.

В случае успеха это может подтолкнуть AR в мейнстрим для рекламодателей и разработчиков.