@prophp7

Страница 326 из 1387
Jan
04.04.2017
11:55:02
именованные конструкторы)

Kirill
04.04.2017
11:55:11
не, ну если надо, то всё это можно на том же пыхе реализовать

Evgeniy
04.04.2017
11:55:22
ну да дали костылю целое имя паттерна)

Jan
04.04.2017
11:55:26
можно, через __get, __set

Google
Kirill
04.04.2017
11:55:30
нет

Jan
04.04.2017
11:55:32
но надо ли упрарываться)

Kirill
04.04.2017
11:55:34
на уровне синтаксиса

Jan
04.04.2017
11:55:44
ой, __call т.е.

Evgeniy
04.04.2017
11:55:48
Kirill
04.04.2017
11:55:56
в пыхе можно экстендить сам синтаксис языка на самом пыхе, но это чрёная магия

настолько чёрная, что мало кто знает о стрим врапперах вообще

Evgeniy
04.04.2017
11:56:27
оо не знал\

не сильный значит извращенец

Kirill
04.04.2017
11:56:54
ну всё просто, создаём враппер и проксируем сырцы

Jan
04.04.2017
11:56:58
ну, тут такое)

Kirill
04.04.2017
11:57:07
дальше разбиваем по токенам, строим аст, кешим и переписываем

Jan
04.04.2017
11:57:09
к самокату ракетный двигатель присобачить

Google
Kirill
04.04.2017
11:57:14
+1

вот есть пример работы, запуск сырцов php 7 на 5.6: https://github.com/ReflectPHP/examples

Evgeniy
04.04.2017
11:58:25
приятно по беседовали, узнал новый вид извращений в php

Kirill
04.04.2017
11:58:49
да, синтаксический

но там внутри полный трешак: https://github.com/ReflectPHP/Compiler/blob/master/src/Extension/AbstractTypehintExtension.php :DDDD

так что я забил на это дело

Evgeniy
04.04.2017
12:01:15
https://github.com/ReflectPHP/Compiler/blob/master/src/helpers.php

:D

Kirill
04.04.2017
12:01:56


dd debug forever

Evgeniy
04.04.2017
12:02:53
но все равно прикольная штука, чтобы синтаксис php7 в php5 писать

Kirill
04.04.2017
12:03:28
я ещё её лет 5 назад начал писать =))))

и выехал с этой статьёй на хабр

когда в пых (тогда ещё 5.4 вроде) добавились статические типы, статик конструктор, свойства и прочее

один хрен - это всё можно сделать, но это, простите - пиздец

Evgeniy
04.04.2017
12:05:54
я видел там статью про jphp

подумал ну извращенцы

а это ты уже был опытным извращенцем

Kirill
04.04.2017
12:06:51
нет, это начал тот самый Дима =)))

Google
Evgeniy
04.04.2017
12:07:11
все равно молодцы

Kirill
04.04.2017
12:07:17
я просто писал расширения, кусок libgdx переписал под него и критиковал

потом забил

Evgeniy
04.04.2017
12:07:24
там как раз kphp быбло

facebook свой hhvm

и еще jphp :D

Kirill
04.04.2017
12:07:55
ещё есть под дотнет и ещё какой-то

ну и не надо забывать про qphp и asm jit сборки

*dynasm

Evgeniy
04.04.2017
12:08:59
ладно пойду работать )

Kirill
04.04.2017
12:09:14
а у меня отпуск :D

Evgeniy
04.04.2017
12:09:40
а я пишу свое видение ContainerInterface из psr

Evgeniy
04.04.2017
12:09:57
довольно давно начал делать, а сейчас это мейнстрим и уже accepted

но доку лень докончить

Kirill
04.04.2017
12:11:09
о, я уже раза два начинал писать свой контейнер

но всё забрасывал

Evgeniy
04.04.2017
12:11:27
можешь мой посмотреть)

Kirill
04.04.2017
12:11:29
хотел переписать нормально ларовский и под симфони адаптировать

Evgeniy
04.04.2017
12:12:09
у меня получилось прикольно, гибче чем всякие php-di даже)

хотя есть нюансы)

Google
Kirill
04.04.2017
12:12:39
ларовский контейнер мощнее всех существующих

на несколько порядков

Aleksandr
04.04.2017
12:12:50
о, я уже раза два начинал писать свой контейнер
С плюшками? Pimple вот например ничего не умеет лишнего, но лаконичный. А что еще там реализовывать и зачем оно нужно хз

Evgeniy
04.04.2017
12:12:56
в чем именно мощь?

можно на эту тему по беседовать )

Aleh
04.04.2017
12:13:14
зачем нужен ContainerInterface - вот где вопрос

Kirill
04.04.2017
12:13:16
я уже 100500 раз это писал =(

Evgeniy
04.04.2017
12:13:45
зачем нужен ContainerInterface - вот где вопрос
чтобы service locator паттерн жил)))

:D

Kirill
04.04.2017
12:13:52
блин, он просто не "по-феншую", а так, чтобы можно было отстрелить себе не только ноги, но и нахрен польшу по-дороге снести

Admin
ERROR: S client not available

Evgeniy
04.04.2017
12:13:53
сарказм

Aleksandr
04.04.2017
12:13:55
зачем нужен ContainerInterface - вот где вопрос
Чтобы писать абстрагировано от контейнера. Например независимые модули

Aleh
04.04.2017
12:14:17
Evgeniy
04.04.2017
12:14:59
вот кстате мой код контейнера https://github.com/smpl/mydi/tree/github.com/smpl/mydi/issues/74

Aleksandr
04.04.2017
12:15:16
Ок, я тебя понял. Контейнер мы не передаём, но например посмотри как в зенд экспрессив реализованы фабрики - в них передается контейнер

Evgeniy
04.04.2017
12:15:36
так это service locator

Aleksandr
04.04.2017
12:15:42
Т9 сука

Evgeniy
04.04.2017
12:15:43
уже плохо такое надо избегать)

сам дядюшка фаулер в 2004 году об этом написал

Google
Kirill
04.04.2017
12:16:47
хорошо, вот пример возможностей ларовского контейнера: public function some(AnyRepo $some) { ... } ... $container->when(SomeClass::class) ->needs(AnyRepo::class) ->give(function() { return new DoctrineAnyRepo(...); }); $container->call('SomeClass@some');

Kirill
04.04.2017
12:17:21
он не компилится

Aleh
04.04.2017
12:17:26
и не нужен

Kirill
04.04.2017
12:18:09
сам код: пример того, как можно всунуть реализацию по интерфейсу внутрь метода внутри конкретного класса или набора классов (его детей)

Evgeniy
04.04.2017
12:18:10
из psr ContainerInterface

Kirill
04.04.2017
12:18:34
так я не получал ничего

Aleh
04.04.2017
12:18:42
чтобы вызвать метод, надо брать контейнер, оч удобно

а еще простыню кода написать

Evgeniy
04.04.2017
12:18:56
зачем люди пытаюстя переизобрести синтаксис

Kirill
04.04.2017
12:18:57
я вызвал метод у класса, создав объект оного сквозь контейнер и просунул в метод реализации интерфейсов из контейнера

не, ну можно $container->call([$some, 'some'])

или другой callable

Aleh
04.04.2017
12:19:44
все равно это абсолютно вредное и не нужное нечто

Kirill
04.04.2017
12:20:26
srsly? https://github.com/SerafimArts/SerafimArts/blob/master/app/Interfaces/Http/Controllers/ArticleController.php#L28

вот на практике использвоание

короче, если нужен феншуй, то симфонийский

а ларовский, как я уже сказал, на порядки более мощная штука. Нужно оно или нет - уже вам решать

Evgeniy
04.04.2017
12:21:53
или свой самописный)

кому то и pimple хватает

Kirill
04.04.2017
12:22:27
ну pimple, symfony, php-di - это всё одно и то же

только с разных сторон

Страница 326 из 1387