PhpGenerics

MiksIr

miksir@home:~$
Ну благо Anthony сам преподносит это как шутка юмора =) А то бывает такое накостыляют и в продакшн на полном серьезе.
 

Absinthe

жожо
MiksIr, реализация... ммм... ммм... интересна! и своеобразна!
Классическая реализация на самом деле.
Практически вся подобная магия через автолоадер делается.

Ну благо Anthony сам преподносит это как шутка юмора =) А то бывает такое накостыляют и в продакшн на полном серьезе.
Тут подобное предлагают и в продакшен: http://go.aopphp.com/
Мне в PHP подобное не нравится и я руководствуюсь подходом "жрите, что дают" (не дали гибкие языковые возможности, значит не надо их эмулировать), но не думаю, что оно нестабильно.
 

WMix

герр M:)ller
Партнер клуба
Redjik, я тоже про препроцессор подумал сразу, а код такая муть если чесно)
 

fixxxer

К.О.
Партнер клуба
Вот жаль, что generic-ов в php7 не будет (уже feature freeze, да и rfc вроде не было). Нужнее, чем типизация на примитивы, на самом деле.
 

Absinthe

жожо
Нужнее, чем типизация на примитивы, на самом деле.
А какие применения на практике?
Удостовериться в типах содержимого?

Я доволен типизацией примитивами.
Осталось еще функции из глобальной области убрать, сделав все объектами.
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
поддерживаю, объясните кто-нибудь где эти дженерики нужны
 

fixxxer

К.О.
Партнер клуба
Вурдалак, а я тут, кстати, написал трейты для базовых partial реализаций спецификаций. Ненавидь меня!
 

Вурдалак

Продвинутый новичок
fixxxer, а в чём смысл? По идее нужно только _and, _or, _not, но тут невелика разница делать общий CompositeSpecification или трейты. Для автокомплита и так и так придётся везде писать @method UserSpecification _and().
 

fixxxer

К.О.
Партнер клуба
Тут у меня получилось несколько соглашений, одинаковых во многих местах. Что-то вроде скоупов и soft deletes в Eloquent.

Грязновато, но сойдёт, я тут на кошках (личный проектик) тренируюсь.
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
fixxxer, Вурдалак, синтаксис я понимаю, а зачем это нужно?
что делать с new Collection<User>?
почему не new Collection(User::class) ?
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
сахар, пол-жизни без них, пол-жизни с ними, не то чтоб разница была большая
 

fixxxer

К.О.
Партнер клуба
Писать в куче методов проверку на instanceof как-то задалбывает, тем более что конструкция вида instanceof $this->class напрямую не работает, тока через временную переменную. И вообще такая динамика... попахивает :)
 
Сверху