Как стать автором
Обновить
23
0
Николай @corristo

Пользователь

Отправить сообщение

Условные сценарии в HomeKit есть, просто не представлены в стандартном приложении. В приложениях Eve, Controller for HomeKit такая возможность есть.

Тихие пуши не требуют разрешения с iOS 8.

Необязательно.

В форматерах было бы здорово упомянуть clang-format.

По моему опыту такие баги возникают как раз от развесистого всепроникающего mutable state.

чистые функции и иммутабельные структуры это круто

а что, нужны доказательства?

понял, point stil holds :)

по сути заботы о ЖЦ объектов

я бы не назвал это заботой о GC, а назвал бы сознательным обдумыванием object graph программы и отношений владения, чтобы правильно расставить слабые ссылки. Это полезно даже при наличии GC.

Ну, по мне эти фичи как раз показывают разумное использование системы типов (а это вполне себе Swift-плюшка) во благо.


Ну и конечно protocol extension, кастомные операторы для биндинга, etc. Но это и в RxSwift есть.

  • RAC рзаличает холодные и горячие observables на уровне типов, их нельзя просто так скомпоновать, что увеличивает количество ошибок, обнаруживаемых компилятором. Однако RxSwift считает это недостатком, и это можно понять, так как это увеличивает порог входа для новых разработчиков.
  • RAC позволяет задать тип ошибки сигнала. Если использовать тип NoError (специальный тип, фактически enum без единого кейза) в качестве типа ошибки, получим compile-time гарантию того, что этот сигнал действительно никогда не завершится ошибкой. Это очень важно, например, для UI-биндингов.

В целом сложно однозначно сказать, что хуже, а что лучше. RxSwift — почти идетничный порт Rx.NET, что дает пользователям RxSwift возможность легко переносить опыт с других платформ, на которых есть Rx, это однозначно плюс.


RAC же, в свою очередь, пытается решить проблемы оригинального Rx, предоставить больше compile-time гарантий ценой ухода от оригинального Rx API.

хотелось бы взять решение изначально спроектированное с учетом всех плюшек языка

Сильное заявление, конечно, особенно учитывая тот факт, что RAC 4 использует куда больше плюшек языка, несмотря на то что «вырос с Objective-C».
RAC4 уже стабилен, не надо вводить читателей в заблуждение.
deliverOnMainThread еще достоин упоминания.
Уверен, для популярных веб-фреймворков найдется готовый плагин plist-сериализатора.
Почему не искаробочный plist?
Исходная структура в этом случае всё равно не изменится, просто создастся еще одна копия, оригинал останется.
Свёртка с сайд-эффектами, угу.
Реализация memory safe языка без сборщика мусора — пустое место?
Я обычно хэшмапы на сокеты делю.
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Россия
Дата рождения
Зарегистрирован
Активность