Вопрос

Я вернулся к разработке php из Лось и я действительно скучаю по CLOS, таким как object model для php.Есть ли какой-то синтаксический сахар, который позволил бы мне писать меньше кода в php при работе с объектами?

Просто для того, чтобы еще немного подчеркнуть это требование.Я не хочу писать одну вещь в нескольких местах.Я могу смириться с тем, что часть кода генерируется автоматически, но в коде, который я должен увидеть для разработки, я не хочу видеть избыточную информацию, которая является просто беспорядком (подумайте:Макрос LISP, если вам действительно нужно больше аналогий).Так что эту часть можно также назвать DSL, если это имеет больше смысла.

Я бы хотел иметь по крайней мере роли (миксины), и какой-то самоанализ без повторного изобретения weel.Генераторы кода и автозагрузчики могут быть одним из способов решить хотя бы часть этой проблемы.

p.s.Для JavaScript существует Джузе, так что подобный API был бы очень полезен.

Это было полезно?

Решение 3

Есть также новый проект http://github.com/huberry/phuby который реализует роли в php!

Другие советы

В php пока нет миксинов, но есть RFC для traits, который будет работать примерно так же. http://wiki.php.net/rfc/traits

Использование перегрузки для __call может позволить вам отправлять методы другим классам и делать это похожим на смешивание.

В В проекте Symfony есть механизм для миксинов, позволяя аспектно-ориентированное программирование, как в CLOS.Лично мне не нравится этот вид взлома в пользовательском пространстве spacee (по крайней мере, не с PHP).Я думаю, вам было бы лучше использовать функции, которые предоставляет язык, и, возможно, подождать, пока что-то вроде черт (возможно) войдет в язык.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top