
Anton
16.10.2016
09:09:23
Опросик такой, много кто юзает DI для iOS/macOS?

Viacheslav
16.10.2016
09:09:54
воскресенье не лучшее время для опросов

Igor
16.10.2016
09:11:51
Речь о самом принципе или о фреймворках?

Антон
16.10.2016
09:13:55

Google

Anton
16.10.2016
09:15:03
Кто-то делает DI без фреймворков?

Антон
16.10.2016
09:16:15

Anton
16.10.2016
09:16:21
Или речь про конфликт аббревиатур? DI - Dependency Injection, DI - Dependency Inversion :)

Semyon
16.10.2016
09:17:16
фреймворки для DI это какая-то дикая сложность на ровном месте
Dependency Injection это чудовищно простой концепт

Антон
16.10.2016
09:18:12

Semyon
16.10.2016
09:18:24
нахрена городить какие-то костыли вокруг?

Антон
16.10.2016
09:19:04

Anton
16.10.2016
09:20:20
В этом и проблема, что те несколько DI фреймворков что я видел, меня безумно печалили)))

Антон
16.10.2016
09:20:48

Google

Anton
16.10.2016
09:21:12
Обойтись, конечно. Хотелось инжектить удобнее :)

Semyon
16.10.2016
09:21:19
куда удобнее-то?

Andrew
16.10.2016
09:21:22
Всем привет. Я Андрей. Живу в Краснодарском крае.
В данный момент работаю в Globus-ltd.
В iOS разработке с 2013г.
Из крупных проектов - мегафон_лк, теле2_тв, ну и по мелочи - bashreader, yandex_weather.
Последнее время пишу с использованием либы https://github.com/GlobusLTD/components-ios (например, в ней кастомная замена TableView и CollectionView)
Готов помочь тем, что в моих скромных силах)
Пришел по линку Егора Толстого.
#whois

Semyon
16.10.2016
09:21:24
Передай зависимость параметром
что может быть ещё удобнее?

Anton
16.10.2016
09:23:01

Semyon
16.10.2016
09:23:42
Ну на мой взгляд ты на ровном месте добавляешь когнитивной нагрузки на мозг читающего
без реальных профитов
я, кстати, не очень понимаю о какой лапше речь

Антон
16.10.2016
09:24:02

Semyon
16.10.2016
09:24:05
explicit is better than implicit

Anton
16.10.2016
09:24:50
я только за explicit, когда у тебя проперти для инжектов помечены явно

Semyon
16.10.2016
09:25:09
дак ну сунь ты их в конструктор

Антон
16.10.2016
09:25:52

Anton
16.10.2016
09:27:54
В конструторы тогда тащить придется насковзь через весь код, этого как раз и хотелось бы избежать

Artem
16.10.2016
09:27:58
И фреймворки ненужны

Semyon
16.10.2016
09:28:29

Dmitry
16.10.2016
09:28:38
народу с Good Reads подвалило (:

Google

Anton
16.10.2016
09:28:39
@property Alanytics<Injectable> *analytics; на мой взгляд вполне Explicit

Dmitry
16.10.2016
09:30:09
@BeardedAndrew привет, мне тут как-то отдали вопросы собеседования в глобус, алгоритмов там не было :(

Антон
16.10.2016
09:30:21

Anton
16.10.2016
09:30:39
ну чтобы не тащить в init аргумент
или так: @property id<Alanytics><Injectable> analytics;

Anton
16.10.2016
09:31:17
Всем привет из знойного Петербурга.
Заходишь в группу первый раз, а тут уже битва за DI идет. Про необходимость использовать DI есть заметка в интернетах http://alejandromp.com/blog/2015/8/25/dependency-injection-without-frameworks/

Semyon
16.10.2016
09:32:09
ну чтобы не тащить в init аргумент
Тут такое дело: ответь на вопрос, честно, почему ты не хочешь тащить депенденси в конструктор?
Обычно честный ответ звучит так "их очень много, конструктор будет гигантским"
а это значит, что у тебя класс в принципе неправильно написан

Anton
16.10.2016
09:32:44
их не много их 2-5 шт обычно

Антон
16.10.2016
09:32:44

Anton
16.10.2016
09:33:10
настройки, аналитика, пара глобальных менеджеров
менеджер аудио например

Semyon
16.10.2016
09:33:26
> пара глобальных менеджеров
?

Anton
16.10.2016
09:33:46
то что без DI было бы синглтонами

Антон
16.10.2016
09:33:46
*пара глобальных менеджеров*

Anton
16.10.2016
09:34:18
локейшн менеджер

Антон
16.10.2016
09:34:22

Admin
ERROR: S client not available

Google

Anton
16.10.2016
09:34:37
синглтон потом при тестировании не подменить нормально
поэтому инжектится

Антон
16.10.2016
09:35:55
ну делай их как параметр, в который передается указатель на инстанс
да и синглтон можно же замокать

Semyon
16.10.2016
09:36:21

Антон
16.10.2016
09:36:40

Semyon
16.10.2016
09:36:40
дак в том-то и поинт, чтобы не мокать синглтоны
не, в самом DI смысла много
loose coupling, всё вот это

Антон
16.10.2016
09:37:01
как в паттерне

Semyon
16.10.2016
09:37:19
ну тут я ваще не согласен

Антон
16.10.2016
09:37:23
а не как в спецфреймворках которые позволяют какието невероятные вещи делать

Semyon
16.10.2016
09:37:31
а вот фреймворки для DI это реально сложно и не нужно

Artem
16.10.2016
09:37:34

Dmitry
16.10.2016
09:38:27
Всем привет. Я Дмитрий. Нахожусь в Нижний Новгород/Москва
Работаю на 1-ofd.ru, в ios с 2013 года. Совсем немного застал MRC. Пришел из web (AngularJS/ReactJS/NodeJS/GO/Groovy/Java)
Опыт разработки банковских приложений, люблю CoreAnimation
Могу помочь в CoreAnimation и в работе с Layout, знаю как работают и как надо применять content hugging and compression resistance
Good Reads
#whois

Anton
16.10.2016
09:38:33

Artem
16.10.2016
09:38:51

Anton
16.10.2016
09:39:43

Andrew
16.10.2016
09:39:46

Dmitry
16.10.2016
09:42:40

Google

Александр
16.10.2016
09:44:08
>ios development
>2018
>алгоритмы

Антон
16.10.2016
09:45:00

Александр
16.10.2016
09:45:16

Viacheslav
16.10.2016
09:45:25
окей гугл, как нарисовать безье по точкам
зачем держать это в своей голове?

Антон
16.10.2016
09:45:37
Гуглится
что гуглится? как векторы складывать?

Semyon
16.10.2016
09:45:39
третий алгоритмосрач за неделю