![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
¡Hola a todos!
Quisiera dar mi opinión al respecto, empezando por indicar que el nombre correcto de las mencionadas variables de una clase es campos. Imaginemos que el nuevo miembro público TopX se declara como campo, y que algún desarrollador (que pudiera ser el mismo autor de esa clase) hace referencia a dicho campo tratándolo como variable: @Objeto.TopX ProcGetTop (Objeto.TopX) Cuando el autor de la clase decida cambiar el campo TopX por propiedad (por el surgimiento de la necesidad de implementarle un método Get de lectura o Set de escritura; o para que pueda ser vista en el inspector de objetos, cambiando su visibilidad a Published; etc.), el código que hace referencia al campo como variable ya no podría compilar y tendría que ser modificado. Siento que es cuestión de cada caso en particular. Después de todo las reglas y contratos de la POO no son perfectos y les aparecen muchos huecos legales cuando se aterrizan en un lenguaje . En el caso de Patroclus02, quizá baste una leyenda «{ No utilizar estos campos como variables, podrían ser convertidos a propiedades en futuras versiones }», aunque ciertamente la norma general más segura sería declararlos como propiedades.Un abrazo declarado. Al González. ![]() |
|
#2
|
||||
|
||||
|
Hola,
Cita:
Pondré el ejemplo de PHP 4. Esta versión de PHP (la versión 5 ya es harina de otro costal) cuenta con la posibilidad de utilizar clases, empero, sólo pueden declararse variables, no existen las propiedades, y tampoco puede especificarse si un método es público, privado, protegido, etc. Pues bien. Aunque PHP 4 no permite todo eso, lo cierto es que no es mala cosa tratar de guardar un orden (para lo que ayuda la POO), aunque dicho orden no pueda verse "en el código". Por ejemplo, no debería accederse a una variable de una clase desde fuera de esta. Eso nos ayuda, entre otras cosas (porque me parece que los beneficios y los perjucios aquí son variados) a portar el código de PHP 4 a PHP 5. No es que sea imposible hacerlo en cualquier otro caso, pero, me temo que el tiempo y el esfuerzo no serían los mismos. Es decir, tenemos un lenguaje como PHP 4 que, aunque permite en cierto modo programar siguiendo los dictados de la POO (más o menos, no quiero decir que yo sea un gurú del asunto ni de ninguna otra cosa), digo, lo cierto es que no está completamente preparado para este paradigma. O sea que la POO en PHP 4 no "aterriza" demasiado bien que digamos, y, sin embargo, no es mala cosa seguir sus dictados, tenerlos en cuenta, no mezclar churras con merinas. Claro que cada quien puede hacer lo que quiera, y, además, cada caso particular es es un caso aparte... Última edición por dec fecha: 09-10-2006 a las 01:10:51. |
|
#3
|
||||
|
||||
|
Cita:
Cita:
// Saludos |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| porque no me reconoce los caracteres "*" ni "%" cuando filtro | mrmago | Conexión con bases de datos | 10 | 27-01-2006 04:21:16 |
| "Property Does not Exists" en QuickReport | Mauro.NET | Impresión | 3 | 20-01-2006 19:53:44 |
| Pregunta tonta relacionada con el campo "autoincremento" de paradox | ojan69 | Conexión con bases de datos | 1 | 20-12-2005 15:43:10 |
| Excepción "Invalid property value" en botón inexistente | melanthea | C++ Builder | 1 | 07-07-2004 18:12:39 |
| Pregunta MUY tonta sobre querys | NeWsP | SQL | 6 | 18-01-2004 03:33:10 |
|