![]() |
![]() |
| 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
|
||||
|
||||
|
Cita:
Un buen ejemplo lo teneis en esta serie de artículos, basados en un curso de Ian Martins. ( corrígeme si me equivoco, por favor ). Espero que sea de utilidad. El resto de las directrices indicadas por José Luis son absolutamente recomendables. Saludos
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino - |
|
#2
|
||||
|
||||
|
interesantes comentarios, el mayor problema de ser autididacta es que realmente somos vampiros asorbiendo información, pero sin un correcto sistema de control
fjcg02, me interesa esos articulos podrias poner el enlace.
__________________
Un saludo desde Canarias, "El abuelo Cebolleta" |
|
#3
|
||||
|
||||
|
Busca el término herencia visual, es algo que no hay que pasar por alto cuando se programa en Delphi.
No suelo emplear prefijos en los nombres de las variables de una aplicación, pero sí en los nombres de componentes y otros elementos que representan objetos: Cita:
Y mis abreviaciones (aunque algunos autores un poco desorientados desaconsejan usar abreviaciones) son las siguientes: Cita:
Saludos. Al González. ![]() |
|
#4
|
||||
|
||||
|
Cita:
// Saludos |
|
#5
|
||||
|
||||
|
Hace tiempo, en alguna página de Microsoft sobre .NET, leí la recomendación de evitar el uso de abreviaciones en aras de darle claridad al código. Pero considero que esto podría ser contraproducente si ni siquiera se acepta un pequeña lista de excepciones como la que expuse al final del mensaje anterior, la cual, dicho sea de paso, contiene muchas de las abreviaciones que Borland y miles de programadores hemos usado con fines de practicidad y sin restar un ápice de claridad o legibilidad al código.
No encuentro muy recomendable ver identificadores como "SynchronizeStringParameters" dentro de un nutrido párrafo de código lleno de nombres similares, mientras que "SyncStrParams" aligera el esfuerzo neuronal. Tal vez de forma aislada no se note mucho la diferencia, pero una vez inmersos en la realidad (una nutrida rutina de código) se aprecia de mejor forma. Saludos. Al. ![]() |
|
#6
|
||||
|
||||
|
Bueno, pero eso no los hace desorientados. Es simplemente otra forma de ver las cosas. Yo trato de utilizar identificadores completos pues, contrario a tu visión, me produce menos esfuerzo neuronal a la hora de leer el código, sobre todo si el codigo no es mío. Además, la era del 8.3 terminó hace muchos años
.Pero estoy de acuerdo en que pueden hacerse excepciones, conforme uno lo crea conveniete. A fin de cuentas, lo impórtante es que uno trabaje en la forma que le sea cómoda y productiva, adoptando las técnicas que le parezcan mejores. // Saludos |
|
#7
|
||||
|
||||
|
Gracias por las recomendaciones voy apuntando, en las abreviaturas, suelo usar el siguiente sistema, por ejemplo nivel de usuario sería VarNivelUsuario, he de decir que me gusto la propuesta de Newtron y la AI Gonzáles y creo que voy a usar el siguiente sistema
indica variable, Tipo, Nombre abreviado de tres en tres, la misma variable de antes quedaría VarSNivUsu (Var-S-Niv-Usu) En cuanto al tema de separa las funciones en varios archivos pas, la verdad es que se vuelve complicado según va creciendo
__________________
Un saludo desde Canarias, "El abuelo Cebolleta" |
|
#8
|
||||
|
||||
|
Cita:
http://www.sjover.com/delphi/2009/09...los-mayores-1/ Saludos
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino - |
|
#9
|
||||
|
||||
|
Muchas gracias fjcg02.
__________________
Un saludo desde Canarias, "El abuelo Cebolleta" |
|
#10
|
|||
|
|||
|
Para los que no lo conocen, acá les dejo un sitio que encontre en mis comienzos con delphi hace mucho tiempo. Fue escrita por Xavier Pacheco and Steve Teixeira en 1998.
Tiene un monton de recomendaciones que ellos llaman Estandares de Código. Está en inglés pero vale la pena que la tengan a mano para estudiarla y poner en practica muchos de las cosas que dicen. http://www.econos.de/delphi/cs.html Yo he puesto en práctica mucho de los que dice. Igualmente me gustaría comentar algunas de las cosas que yo hago. Para las variables las comienzo con tres letras minúsculas que indican el tipo de la misma. Por ejemplo una variable de tipo String sería strXxxxx, una de tipo Integer sería intXxxxx. A las qe son de tipo objetos las comienzo con obj. Lo mismo hago con los nombres de los formularios (frm), datamodules (dm) y componentes. Aunque en aulgunos casos solo utilizo dos letras. Si les sirve de algo el CnPack tiene una opción llamada Prefix Wizard que contiene una extensa lista de prefijos que se los agrega automáticamente cuando se carga un componente nuevo al formulario o datamodule. Estos prefijos se pueden cambiar si uno quiere. ---------- Para los formularios siempre tengo creados los formularios base para cada tipo de pantalla y heredo de ellos. ---------- Para las constantes me he acostumbrado a ponerlas siempre en mayúsculas para identificarlas de las variables. Tambien en estas para los mensajes al usuario trato de identificar que tipo de mensaje es. Por ejemplo: Si son errores uso ERROR_xxxxx, si son advertencias uso ADVERTENCIA_xxxxx, si son mensajes simples MENSAJE_xxxx, o si son de informacion INFORMACION_xxxxx ---------- Cuando en un formulario tengo un componente TLabel y uno TEdit que tienen relación los dos tienen el mismo nombre pero lo que cambia son las tres primeras letras que los identifican. ---------- Generalmente a las funciones/procedimientos para obtener datos (no importa de donde) los identifico con el prefijo Get y los de guardar con el prefijo Set. Esto viene de el Getter y Setter de la propiedades. ---------- Los mensajes, títulos, caption, ect que puedan llagar a cambiar de idioma en algun momento los pongo en constantes y los uso de ese lugar. Si solo son para un formulario en particular van directamente al comienzo de la parte de implementación y sino los pongo en una unit generica para el proyecto. ---------- Para las variables que uso en ciclos como FOR me acostumbre a usar y esto viene de largo cosas como una sola letra (Ejemplo: FOR i := 0 to 10). Si uso otra cosa es en casos especiales. ---------- Otra cosa que me acostumbre a hacer es setear todas las propiedades de los componentes que quiero distintas a las default por código. Esto lo empece a hacer porque en proyectos donde son varios lo que trabajan, siempre me las cambiaban desde el inspector de objetos. ---------- También y para finalizar por el momento, me acostumbre a ser muy prolijo con el armado de los formularios. Trato de que los componentes tengan el tamaño justo de los datos que se ingresan, que esten bien alineados, que el espacio entre ellos sea el mismo en todos (aunque puede que alguno este mas separado para identificar que no pertenece al grupo anterior). Tampoco hay que olvidar que hay que tabular bien los componentes en los formularios, en mi caso los tabulo de izquierda a derecha y de arriba hacia abajo (esto es en el sentido que todos leemos). El orden en que aparecen los datos en los formularios debe ser estudiado con cuidado. Por algo hay un orden en los formulario de papel que todos solemos llenar, alguien se todo el trabajo de ver como quedan mejor los datos para hacernos mas facil la lectura y llenado de los mismos. Saludos, El Rayo
__________________
Si tienes una función o procedimiento con diez parámetros, probablemente hayas olvidado uno |
|
#11
|
||||
|
||||
|
Cita:
__________________
Un saludo desde Canarias, "El abuelo Cebolleta" |
|
#12
|
|||
|
|||
|
Cuando digo setear los componentes es poner los valores que yo quiero a las propiedades de los mismos.
Ejemplo: Label.Caption := 'xxxx'; Label.AutoZise := True; Saludos, El Rayo
__________________
Si tienes una función o procedimiento con diez parámetros, probablemente hayas olvidado uno |
|
#13
|
||||
|
||||
|
Para las variables uso sólo una letra: iCodigo, cNombre, fSuma, dFecha...
Para componentes visibles uso dos letras: lbNombre, edNombre... Para formularios, una: Fmain, Fclientes, Flogin... Constantes: _PI_ = 3,141592565 Property (parámetros y valores entre formularios): _iCodigoCliente, _iCodigoDocumento... Data Modules: DMventas, DMcompras... En las bases de datos es similar, pero con dos letras: Tablas: tbClientes, tbUsuarios... Stored procedure: SPlogin, SPsumaSaldos... Trigger: TRxxxxAI, TRxxxBP, TRxxxAU... (after insert, before post, after update) etc.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Elegir el mejor SO para programar y Otros | Deiv | Varios | 41 | 21-07-2007 06:54:03 |
| rutinas para manejo de figuras tridimensionales | afrodita | Gráficos | 1 | 25-04-2006 09:46:46 |
| problema creando una base de datos para varios usuarios | ercrizeporta | Conexión con bases de datos | 3 | 06-07-2005 23:29:35 |
| Mejor forma de programar con bases de datos | PTW | Conexión con bases de datos | 3 | 23-03-2005 14:20:17 |
| rutinas para interaccion con codigo de barras | edupomar | Impresión | 2 | 25-09-2003 01:34:44 |
|