class - significado - Definición de ''POCO''
title tag html (10)
¿Puede alguien definir qué significa exactamente ''POCO''? Me encuentro con el término cada vez más a menudo, y me pregunto si se trata solo de clases simples o si significa algo más.
"Plain Old C # Object"
Solo una clase normal, no hay atributos que describan preocupaciones de infraestructura u otras responsabilidades que sus objetos de dominio no deberían tener.
EDITAR: como lo han indicado otras respuestas, es técnicamente "Objeto CLR antiguo simple" pero yo, como comenta David Arno, prefiero "Objeto de clase antigua simple" para evitar vínculos con lenguajes o tecnologías específicas.
PARA ACLARAR: En otras palabras, no se derivan de alguna clase base especial, ni devuelven ningún tipo especial para sus propiedades.
En .NET, un POCO es un ''Objeto CLR antiguo simple''. No es un ''objeto C # antiguo'' ...
En la tierra de Java, normalmente "PO" significa "antiguo". El resto puede ser complicado, así que supongo que su ejemplo (en el contexto de Java) es "objeto de clase antiguo".
algunos otros ejemplos
- POJO (objeto Java antiguo liso)
- POJI (interfaz de Java antiguo llano)
En términos de MVVM de WPF, una clase POCO es una que no dispara eventos PropertyChanged
Interesante. Lo único que sabía que tenía que ver con la programación y tenía POCO en él es el marco de trabajo de POCO C ++ .
La mayoría de la gente lo ha dicho: objeto CLR antiguo simple (a diferencia del POJO anterior - objeto Java antiguo simple)
El POJO uno salió de EJB, que requería que usted heredara de una clase padre específica para cosas como objetos de valor (lo que obtiene de una consulta en un ORM o similar), así que si alguna vez quiso pasar de EJB (por ejemplo, a Primavera), estabas lleno.
Los POJO son solo clases que no fuerzan la herencia o cualquier marca de atributo para hacer que "funcionen" en cualquier marco que estés usando.
Los POCO son los mismos, excepto en .NET.
Por lo general, se utilizará alrededor de los ORM. Los más antiguos (y algunos actuales) requieren que herede de una clase base específica, que lo vincula con ese producto. Los más nuevos no lo hacen (nhibernate es la variante que conozco): solo haces una clase, la registras con el ORM y estás fuera. Más fácil.
POCO son las siglas de "Plain Old CLR Object".
Para agregar las otras respuestas, los términos POxx parecen derivarse de POTS ( servicios telefónicos normales).
El POX, usado para definir XML simple (simple y simple), en lugar de las cosas complejas de múltiples capas asociadas con REST, SOAP, etc., era un término útil y vagamente divertido. PO (inserte el idioma de su elección) O los términos han gastado bastante la broma.
Puede que me equivoque sobre esto ... pero de todos modos, creo que POCO es un objeto CLR de clase antigua simple y proviene de un objeto Java antiguo y simple de POJO. Un POCO es una clase que contiene datos y no tiene comportamientos.
Aquí hay un ejemplo escrito en C #:
class Fruit {
public Fruit() {
}
public Fruit(string name, double weight, int quantity) {
Name = name;
Weight = weight;
Quantity = quantity;
}
public string Name { get; set; }
public double Weight { get; set; }
public int Quantity { get; set; }
public override string ToString() {
return Name.ToUpper() + " (" + Weight + "oz): " + Quantity;
}
}
Si bien estoy seguro de que POCO significa Objeto Plain Old Class o Objeto Plain Old C para el 99,9% de las personas aquí, POCO también es Animator Pro (Autodesk) integrado en el lenguaje de scripting.