Как стать автором
Обновить
19
0
Гуменный Руслан @Fanruten

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

Отправить сообщение
Кайфанул. Пишите ещё.

Статью можно (и нужно) пометить как перевод. Вы же пишете как автор, без цитирования,…
И это выглядит как сбор плюсиков в карму для себя и компании. Если ваши моральные устои это допускают, то пожалуйста, я не в праве вам что-то указывать. Но для пацанов в теме вы будете на дне, там где живут переводчики SO.

Лол. Перевод стэкэксченджа выданный за свой пост.
С нетерпением жду переводов с стэковерфлоу выданных за свои «статьи».

YogaKit не стоило пихать в сравнение. Это просто Obj-C обертка над C библиотекой Yoga/FlexLayout.

Сама Yoga ничего не знает про UIView, оперирует нодами и вообще офигенна.
Кстати, Yoga прекрасно оборачивают на Swift все кому не лень. Чего и вам советую.
Классная статья, спасибо.

Появилось несколько вопросов:
1. Разве за time to market отвечают выбранные технологии (в данном случае React), а не Agile?
2. Как у вас с поиском разработчиков знающих JS и Obj-C?
Цель тестового задания — показать, что человек вменяем и готов изучить что-то новое (Swift).
А также не отнять у него много времени.
И вообще, нет ничего плохого в том, что человек использует уже имеющиеся знания.
Так в этом и проблема, что нужно куда-то коннектиться. Плюс если устройство выступает в роли точки доступа, то оно не сможет быть подключено к сети.

А с BLE вообще красота. Запустил приложение и оно само все сделало. Не надо лезть в настройки Wi-Fi,…
Кстати у FB была интересная презентация, в которой они рассказывали про опыт использования MVVM при разработке Paper.
К сожалению они там не рассказали технические детали. Возможно это был RAC, но скорее всего, запилили что-то свое.
А как предполагается коннектить два девайса?
Кто будет выступать в роли точки доступа?
Для BLE в отличие от WiFi есть API.

iOS позволяет работать только с BLE устройствами.
BLE актуален не из-за батарейки, а из-за поддержки iOS/Android.
Например законнектился к девайсу с айфона и конфигурируешь его, моделькой управляешь,…
В общем, задумайтесь о BLE. Его наличие может сильно повлиять на востребованность устройства.
Получилось отличное устройство.
Если вы в него воткнете новомодный BLE, то ему вообще цены не будет (биконы пилить, техникой с мобилки управлять, ...) и у ардуины не будет шансов.
Удачи на kickstarter.
Просто у вас получилось все в куче. Проксирование не всегда подразумевает использование NSProxy.

Прокисирование в Cocoa реализуется при помощи Message Forwarding, для этого у NSObject есть methodSignatureForSelector, forwardInvocation и другие.

Но если объект имплементирует какой-то селектор, то до форврадинга не дойдет. И если в качестве базового класса для прокси брать NSObject, то часть методов не проксируется (init, performSelector, ...). (конечно можно извратиться и переопределить эти методы в классе прокси, например руками или в runtime, но это слишком утомительно)

А если не NSObject, то что?! Свой root-класс просто не сделать, так как нужно имплементировать alloc и протокол NSObject.

Поэтому инженеры Apple добавили еще один root-класс (NSProxy), который имплементирует минимальное количество селекторов, и следовательно может проксировать почти всё.

Proxy и NSProxy это не одно и тоже)

(lldb) po [[[UIView appearance] class] superclass]
NSObject


Да и зачем ему NSProxy?
UIAppearance — насколько мне известно — единственное использование NSProxy в базовых iOS фреймворках

Какая связь между UIAppearance и NSProxy?
Большое спасибо за комментарий. Немного дополнил статью.
Мне показалось, что Multiple Delegate будет интересен в качестве примера.

А так, в тексте прям предложение есть
Пример немного притянутый, но все же.
Xcode не позволяет запустить несколько симуляторов. Так что про параллельный запуск нескольких тестов на одной машине можно забыть. Есть один единственный легальный способ немного скрасить ситуацию. Серверная версия MacOS позволяет пользователю создать две виртуальных машины, с каждой из которых можно работать.

А вы пробовали, запускать симулятор в отдельной VNC сессии?

Т.е. создать несколько юзеров на маке и включить им VNC, а потом одновременно залогиниться удалено и запустить симулятор.
В настройках проекта можно выбрать iOS 6.0. А ниже и не надо.
И представьте себе, как только выйдет релиз iOS 8 и xCode 6, в стор нельзя будет выкладывать приложения под 5-ку.
Что просто отлично для разработчиков.

Так что ни о каком production использовании речи быть не может еще года 3-4 минимум.

Полная ерунда. Слимшком много классных штук в Swift.

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Зарегистрирован
Активность