Domanda

Sono tornato allo sviluppo di php da Moose e mi manca molto CLOS come modello a oggetti per php . Esiste una specie di zucchero sintattico che mi consentirebbe di scrivere meno codice in php quando mi occupo di oggetti?

Solo per sottolineare un po 'di più questo requisito. Non voglio scrivere una cosa in diversi posti. Posso vivere con parte del codice generato automaticamente, ma nel codice che devo vedere per sviluppare non voglio vedere informazioni ridondanti che sono solo disordine (pensa: macro LISP se hai davvero bisogno di più analogia). Quindi questa parte può anche essere chiamata DSL se ha più senso.

Mi piacerebbe avere almeno ruoli (mixins) e una sorta di introspezione senza reinventare il weel. Generatori di codice e caricatori automatici potrebbero essere un modo per risolvere almeno una parte di questo problema.

P.S. Per JavaScript esiste Joose , quindi un'API simile sarebbe molto utile.

È stato utile?

Soluzione 3

Esiste anche un nuovo progetto http://github.com/huberry/phuby che implementa i ruoli in php!

Altri suggerimenti

Non ci sono ancora mixin in php ma esiste un RFC per i tratti che funzionerà più o meno allo stesso modo. http://wiki.php.net/rfc/traits

L'uso del sovraccarico per __call può consentire di inviare metodi ad altre classi e farlo sembrare un mixin.

Il Il progetto Symfony ha un meccanismo per i mixin , consentendo una programmazione orientata all'aspetto come in CLOS. Personalmente, non mi piace questo tipo di hacking in userland spacee (almeno non con PHP). Penso che staresti meglio usando le funzionalità fornite dalla lingua, e forse aspettando che qualcosa come tratti si facciano (forse) nella lingua.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top