Preguntas etiquetadas con traits

En programación de computadoras, un rasgo es una colección de métodos, usados ​​como un "modelo conceptual simple para estructurar programas orientados a objetos"

344
Rasgos versus interfaces

Últimamente he estado tratando de estudiar PHP y me encuentro colgado de los rasgos. Entiendo el concepto de reutilización de código horizontal y no querer heredar necesariamente de una clase abstracta. Lo que no entiendo es: ¿Cuál es la diferencia crucial entre usar rasgos versus interfaces? He...

332
¿Qué es un rasgo sellado?

Las clases selladas se describen en 'Programación en Scala', pero los rasgos sellados no. ¿Dónde puedo encontrar más información sobre un rasgo sellado? Me gustaría saber si un rasgo sellado es lo mismo que una clase sellada. O, si no, ¿cuáles son las diferencias? ¿Cuándo es una buena idea usar un...

90
¿Cuándo usar val o def en los rasgos de Scala?

Estaba revisando las diapositivas de Scala efectivas y en la diapositiva 10 se menciona que nunca se debe usar valen una traitpara miembros abstractos y usar defen su lugar. La diapositiva no menciona en detalle por qué usar abstracto valen a traites un anti-patrón. Agradecería que alguien...

82
¿Por qué PHP Trait no puede implementar interfaces?

Me pregunto por qué PHP Trait (PHP 5.4) no puede implementar interfaces. Actualización de user1460043's answer => ... no puede requerir una clase que la use para implementar una interfaz específica Entiendo que podría ser obvio, porque la gente podría pensar que si a Class Aestá usando a...