
da horsie
13.03.2017
22:45:33
там смысл в том, чтобы было быстро и просто
пимпл же, прототипы
я вот тут попробовал отделять веб от приложения
(это уже другая тема пошла)

Google

da horsie
13.03.2017
22:47:48
и заюзать silex просто как модуль в приложении
со своим конфигом

Sergey
13.03.2017
22:49:05
не вижу смысла юзать silex)

da horsie
13.03.2017
22:49:20
почему?
удобный простой фронт-контроллер, удобный роутинг

Sergey
13.03.2017
22:49:43
MicroKernelTrait
симфони в один файл
тот же роутинг)

da horsie
13.03.2017
22:50:07
ну так оно одно и тоже по смыслу

Sergey
13.03.2017
22:50:14
крутой dependency injection который работает не медленнее пимпла и намного мощнее

da horsie
13.03.2017
22:51:00
любопытно

Kirill
13.03.2017
22:51:31
как ни старайся, всё равно в ларке он круче ?

Sergey
13.03.2017
22:52:04

Google

da horsie
13.03.2017
22:52:07
только сегодня наткнулся на видос, там чел говорит, что не понимает, зачем микрокернел, если есть сайлекс ) https://www.youtube.com/watch?v=GG6K6T-5BdM

F01134H
13.03.2017
22:52:17
о нет
только не фреймосрач

Sergey
13.03.2017
22:52:39

da horsie
13.03.2017
22:52:40
мы не сремся

F01134H
13.03.2017
22:52:45
хотя потом можно будет цитатками отсюда аргументировать, почему тот или иной фрейм говно)

Sergey
13.03.2017
22:52:51
и знаешь чем заканчивался каждый проект который мы с ним начинали?)

da horsie
13.03.2017
22:52:51

Kirill
13.03.2017
22:52:55
> сча выйдет symfony 3.3 и тогда посмотрим)
я хотеть контейнер, который не будет фризиться+

da horsie
13.03.2017
22:53:02
чем?

Sergey
13.03.2017
22:53:07
маленькой симфони

Kirill
13.03.2017
22:53:17
и где вообще нельзя добавлять строковые имена, которые не являются интерфейсами

Sergey
13.03.2017
22:53:19
ну то есть... все тоже самое но неудобно)

da horsie
13.03.2017
22:53:21
нууу в целом да
ну ок ок

Sergey
13.03.2017
22:53:48

Kirill
13.03.2017
22:54:08
не только же сервисы там могут быть
уже говорили на эту тему =)

Sergey
13.03.2017
22:54:45

Kirill
13.03.2017
22:54:58
можно же

Google

Kirill
13.03.2017
22:55:05
контекстуальный биндиг+

Sergey
13.03.2017
22:55:06

Kirill
13.03.2017
22:55:27
ну ок, вот есть у тебя репа, которая хранит конфиги юзера
в приложеньке

Sergey
13.03.2017
22:55:34
ну допустим

Kirill
13.03.2017
22:55:45
ну вроде нормальный кейс, да?

Sergey
13.03.2017
22:55:50

Kirill
13.03.2017
22:56:02
а теперь репу переносим в БД
а, не, фигня
плохой пример, забудь
О!

Sergey
13.03.2017
22:56:21
))

Kirill
13.03.2017
22:56:35
class User implement Authentificatable {}
public function __construct(Authentificatable $user) { ... }
вот, уже более практичный пример
сервис А требует аутентикационную хреновину, а она появляется только после реквеста
это, кстати, более-менее реальный пример

Sergey
13.03.2017
23:00:47

Kirill
13.03.2017
23:00:58
не закрываю

Google

Sergey
13.03.2017
23:00:59
я такие штуки пихаю в сам реквест
и оно юзается исключительно как аргументы
и никакого желания запихнуть это добно в контейнер у меня нет

Kirill
13.03.2017
23:01:27
миддлвари, карл!

Sergey
13.03.2017
23:01:34
что мидлвари?
они ж stateless

Kirill
13.03.2017
23:01:51
состояние живёт ровно круг миддлварей

Sergey
13.03.2017
23:02:07
ну вот вообще ни разу не понимаю

Kirill
13.03.2017
23:02:15
потому что это не сервисы

Admin
ERROR: S client not available

Sergey
13.03.2017
23:02:34
ну то есть... вот серьезно
есть у тебя какая-то штука которая появляется только после реквеста
почему ты где-то хочешь ее "инджектить"?
а не тупо передавать как аргумент?
я профита не вижу
(вполне возможно потому что мы по разному делаем дела))

Kirill
13.03.2017
23:03:21
а не пофигу как?
можно и аргументом

Sergey
13.03.2017
23:03:34

Google

Kirill
13.03.2017
23:03:42
нееееет

Sergey
13.03.2017
23:03:51
дааааа

Kirill
13.03.2017
23:03:57
ты думаешь что контейнер один на всё приложение

Sergey
13.03.2017
23:04:16

Kirill
13.03.2017
23:04:21
ну т.е. исходишь из этого
воооот
теперь ты понимаешь к чему я клоню? =)

Sergey
13.03.2017
23:04:45
хочешь более реальный пример с которым я могу согласиться?
пул соединений с базой. У тебя есть общий базовый контейнер который хранит штуку выделяющую коннекшен. По запросу мы запрашиваем коннекшен из пула и выделяем его контейнеру который создаем на отдельный запрос

Kirill
13.03.2017
23:05:23
давай, жги+
не, фигня

Sergey
13.03.2017
23:05:41
почему?)

Kirill
13.03.2017
23:05:50
контейнер не нужен

Sergey
13.03.2017
23:05:57
нужен, просто он сверху

Kirill
13.03.2017
23:06:05
сам пул кидаешь в него, там Spl сторадж объектов
и по ключу возвращаешь что-нибудь

Sergey
13.03.2017
23:06:23
это детали реализации
суть в том что на каждый запрос (предположим что у меня демон и он обрабатывает одновременно несколько запросов)
я хочу задавать контекст что этому "инстансу" такой-то коннекшен, а этому другой
и делать это максимально прозрачно
проще всего это делать изолируя часть сервисов в отдельный контейнер который наслаивается над общим

Kirill
13.03.2017
23:07:44
короче, теперь я встал на сторону стейтлесс контейнера +)

Sergey
13.03.2017
23:07:59