Compartir a través de


Diseño de propiedades

Actualización: noviembre 2007

En general, los métodos representan acciones y las propiedades representan datos. Las propiedades se utilizan como campos, en el sentido de que las propiedades no deberían ser computacionalmente complejas ni generar efectos secundarios. Para obtener información adicional sobre el diseño de propiedades, vea Diseño de propiedades indizadas y Eventos de notificación de cambio de propiedad.

Las instrucciones siguientes ayudan a garantizar que sus propiedades están bien diseñadas.

Cree propiedades de sólo lectura si el llamador no debería poder cambiar sus valores.

Tenga en cuenta que la mutabilidad del tipo de propiedad afecta a lo que el usuario final puede cambiar. Por ejemplo, si define una propiedad de sólo lectura que devuelve una colección de lectura-escritura, el usuario final no puede asignar una colección distinta a la propiedad, pero sí modificar los elementos de la colección.

No utilice propiedades de sólo establecimiento.

Si no se puede proporcionar el captador de propiedades, utilice en su lugar un método para implementar la funcionalidad. El nombre de método debería comenzar con Set seguido de lo que habría sido el nombre de propiedad. Por ejemplo, AppDomain tiene un método llamado SetCachePath en lugar de una propiedad de sólo establecimiento denominada CachePath.

Evite iniciar excepciones desde los captadores de propiedades.

Los captadores de propiedades deberían ser operaciones simples sin ninguna condición previa. Si un captador podría iniciar una excepción, considere rediseñar la propiedad para que sea un método. Esta recomendación no es aplicable a los indizadores. Los indizadores pueden iniciar excepciones a causa de argumentos no válidos.

Es válido y aceptable iniciar excepciones desde un establecedor de propiedades.

Portions Copyright 2005 Microsoft Corporation. Reservados todos los derechos.

Portions Copyright Addison-Wesley Corporation. Reservados todos los derechos.

Para obtener más información sobre las directrices de diseño, consulte el libro titulado "Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries" de Krzysztof Cwalina y Brad Abrams, publicado por Addison-Wesley, 2005.

Vea también

Otros recursos

Instrucciones de diseño de miembros

Instrucciones de diseño para desarrollar bibliotecas de clases