¿Pones "preposiciones?¿Tabulas tu código?
¿Sueles poner "preposiciones" a los nombres de los objetos? Ej: Un edit que va a contener una dirección ip, llamarlo eIp, o a un memo donde vamos a escribir un mensaje, llamarlo mmMensaje.
Yo por mi parte me es más fácil hacelo, pues después para acordarme del nombre solo tengo que pensar en qué objeto es y que funcion realiza. Otra cosa: ¿Sueles hacer tabulaciones en el código?, por ejemplo: Código:
If not IdTCPClient1.Connected = True Then |
Yo utilizo ambas cosas, según he votado en la encuesta.
La indentación y la notación húngara y los comentarios, son imprescindibles para una relectura rápida de cualquier código. Un Saludo. |
Pues yo, como he votado, sólo tabulo. Nunca me ha gustado la notación húngara.
Lo que sí que es muy importante para una relectura del código (y que por desgracia no se suele hacer amenudo por falta de tiempo) es comentar el código que se escribe. |
Yo he votado por tabulación y no usar preposiciones, pero me he equivocado. Tú te refieres a "preposiciones" (no me fijé en que lo habías entrecomillado) anteponiéndose al identificador y yo lo entendí como preposiciones, preposiciones (a, ante, cabe, con ...) Así que quita un voto de la segunda opción y súmalo a la tercera.
Por cierto, hace unas semanas se trató un tema similar (te lo comento DarkByte por si se te ha pasado): http://www.clubdelphi.com/foros/showthread.php?t=6177, donde delphi.com.ar daba la dirección de un documento de Borland sobre consejos para la codificación en Object Pascal: http://community.borland.com/article...,10280,00.html Saludos. |
Yo utilizo ambas cosas. Como DarkByte, las 'preposiciones' para encontrar rapidamente una referencia al objeto que busco en un momento en que no recuerdo su nombre, la tabulación porque si no no me aclaro a simple vista. Eso sí que me resulta imprescindible, sobre todo si el código no es mío. Es una de las mejores costumbres que se deben adquirir. Lo otro ya es cuestión de las preferencias o costumbres de cada uno.
Los comentarios....es lo que siempre sueles dejar para después y luego se te pasa por falta de tiempo, asi que la intención es buena, pero lo hago menos a menudo de lo que debiera. Saludos. |
Yo he votado ambas cosas y he de decir, que por motivos de obligado cumplimento, los comentarios los realizo antes de escribr código y para más inrí, lo debo de escribir para cada uno de los procedimientos eventos funciones que se escriban. Tengo un Code Insight con el formato que se debe rellenar de documentación. Sí os soy sincero y despues de cuatro años teniendo que realizar esta ardua tarea, tengo que reconocer que apenas se pierde tiempo siempre y cuando lo primero que se haga sea documentar.
Otro canto os cantaria cuando se debe hacer despues de escribir un programa. :D Os paso un pequeñito ejemplo para que os hagais una ligera idea de como es la documentación ha realiar. { |
Tal y como he votado, Tabulo el código, pero no pongo "preposiciones" aunque si que suelo comentar lo que hace cada unidad,procedimiento o funcion. Un buen vicio que cogi cuando trabajaba con Pepelolo ;-)
|
Personalmente opino que no puede haber ningun programador profesional que no indente el código, esa es la regla número 1. Un código sin indentar es un infierno para leer y como vea algo asi me van a venir necesidades básicas pensando en algun familiar cercano del autor.
Otra cosa es lo de las "preposiciones", es una buena idea, aunque cada uno puede tener su método válido para los componentes. Lo que tampoco es serio es dejar el código tal cual aparece, lleno de cosas como 'Button7', 'Form2', ¿que rayos es eso? Yo hago ambas cosas, aunque como nos pasa a muchos, apenas inserto comentarios en el código y eso también es un problema. Al igual que santana, lo dejo para después y ... después estaré haciendo otra cosa |
He respondido ambas pero tomando un sentido muy flexible de "preposiciones", esto es, indento el código y doy nombres significativos a las variables, tipos de datos y funciones. La mayoría de veces es con un dialecto húngaro pero con excepciones: por ejemplo, nunca uso frmPrincipal para un formulario sino que uso MainForm o FormaPrincipal o algo así.
Ambas cosas son imprescindibles como puede observarse cuando en los foros se presenta código sin indentar. En cuanto a los comentarios también se me hacen fundamentales y normalmente trato de ponerlos en un momento u otro. Y en muchas ocasiones comienzo con los comentarios ya que así describo el proceso que debe seguirse y ya mees más fácil después desarrollar el código. // Saludos |
Ambas
Yo uso ambos y realmente funciona cuando compartes codigo con otros programadores, he revisado codigos de terceros que usan ambas y me resulta mas facil seguir el codigo, de igual manera cuando otro programador ve mi codigo he experimentado que le es mas facil seguir mi codigo apesar de que aveces por tiempo no tenga los suficientes comentarios.
|
Tengo que acostumbrarme a comentar mi código... sinceramente, me entra flojera porque yo siempre recuerdo para qué servía cada cosa (incluso mi código de hace un par de años, aunque esos eran ShowMessage "Eres un primo" y similares).
Respecto a lo de no cambiar el nombre a algunos componentes , como comentaba Voutarks: Yo sí dejo algunos componentes sin preposición. No le veo sentido ponerle preposición a un TBevel si, este, no va a tener ninguna función especial, sería una pérdida de tiempo a mi entender. |
Yo hago las tres cosas; lo de identar, como apunta Voutarks, debería ser "obligatorio", y aprovecho para recomendar su uso cuando se mete código en estos foros, utilizando el tag code, para facilitar la lectura a los demás.
En cuanto a lo de usar prefijos, me parece algo muy beneficioso, ahora no tengo el Delphi aquí pero hace un tiempo instalé una herramienta que permite asignar estos prefijos a la propiedad Name (coloca en el Object Inspector, en dicha propiedad, un botoncito que lleva a un editor donde se puede personalizar el prefijo para cada tipo de componente). Lo de los comentarios es muy recomendable aunque nunca he escrito novelas como PepeLolo :D :D :D, supongo que el ejemplo que pones no será el más común ..., buen lo acabo de releer y veo que va referido a la unit, por un momento pensé que acompañaba a una función. Un saludo |
Hola Compis!
Para mí es fundamental que el código esté identado, se ve mucho más claro. En cuanto a los prefijos, también los usos, pero yo al igual que DarkByte con los componentes que no suelo usarlos para nada a nivel de código, no les cambio el nombre. Suelo poner comentarios, por que la verdad, es que cuando haces una aplicación más o menos te acuerdas de lo que haces y porque, pero cuando pasa un tiempo sin tocarla y tienes que modificar alguna cosa, pues cuesta un poco acordarte de todo ( sobre todo yo, que tengo 'mu' mala memoria :mad: ), así que procuro documentar bien las aplicaciones, aunque tardes más a la larga te facilita el trabajo. Saludos! |
Voy a decir lo que dice la mayoría: hago las dos cosas :)
Me parece muy legible y además intuitivo para alguien que, por ejemplo, este externo al desarrollo de la aplicación. Solo comento los puntos fuertes que puedan no quedar en claro lo que hacen. Lo que si comento con lujo de detalles son los procedimientos o funciones de gran importancia para la aplicación (lo hago con un ancabezado con la fecha, el programador, parámetros, etc.) Las dos cosas adicionales que tengo que mencionar es que los nombres de variables, componentes y demás a los que se haga referencia desde el código los escribo en lenguaje universal (Inglés) por comodidad e internacionalización. El otro punto fuerte es que utilizo constantes en la mayoría del código, lo hace muy legible y además son mas rápidas las modificaciones. Eso es todo, saludos :) |
Cita:
|
Esto es super divertido, la mayoría de gente, por lo que leo, hace las dos cosas, es decir, indenta el código y hace uso de la notación húngara, pero.... lo más curioso del caso es que, cuando alguien me pasa un trozo de código, a lo sumo está indentado, nunca con dicha nomenclatura.
A partir de hoy sólo aceptaré código vuestro :D :D |
Cita:
Porque a ti podrán pasarte el código indentado pero lo que es aquí... Cita:
|
Cita:
Lo de la cita..... buenísimo ;) |
Solo comentar una anécdota que es más leyenda que otra cosa. Me comentaron que cierto jefe de proyectos de la consultoría informática más grande de España obligaba a sus programadores a no indentar el código porque "es mucho más eficiente en tiempo de ejecución" :confused:
|
Hola:
Cita:
Esto es lo que hay al respecto. Cita:
|
Hola compañeros de fatiga.
Como he votado, hago cambas cosas, aunque no sigo la notación húngara, mas bien la notación Leperiana ;) coincide con la húngara en muchas casos, pero cuando no me acuerdo de la notación húngara, uso la Leperiana. En cuanto a comentar.... hago igual que todos, comento las funciones importantes, y además, cuando hay muchos if anidados si pongo algo asi como: Código:
if Fallo then Para comentar las Unidades o Procedimientos uso las GExpert, (recomendado por el foro ;) ) Para aquellos que no lo usen, lo comento: pulsando una secuencia de teclas, añade lineas comentadas (predefinibles) con lo que se desea Ctrl +Alt +P ==> Procedimiento con parametros descripción y tal (que lo pone por defecto), encima de la definición del Procedimiento Ctrl+ Alt +U ==> Comentar unidad (al principio, justo antes de Unit blah; Lo que más uso es poner el raton encima de una palabra y dale a Ctrl + Alt + (Flecha arriba / abajo) y busca esa misma palabra por toda la unidad. Además del "Grep Search" que es más cómodo para mi que el que trae delphi. Y.... el Ctrl + G ==> definicion de procedimientos en la unidad activa, para ir a cualquier procedure o function... A parte de muchas cosas mas que tiene... Copia de seguridad del proyecto, Poner en letra capital la primera letra de variables y objetos ...etc. Producto cinco estrellas. Eso junto con el "code insight" de delphi.... ayuda mucho. Como veis, aqui teneis a uno que le gusta mas el teclado que el roedor jejejeje. Eaa, ya me quedé tranquilito ;) Saludos a la peña |
Yo he votado por ambas cosas y hago ambas cosas.
Antes hace tiempo solo tabulaba, pero desde hace tiempo que pongo "preposiciones", lo uso y la verdad que me va muy bien. Otra cosa. Segun tengo entendido el compilador, cuando compila, no tiene en cuenta los espacios en blanco es decir, compila y al traducir elimina todo lo que sea nulo, como espacios en blanco o comentarios,etc... Entonces o voy muy equivocado, o eso que dice el señor (jefe) ese es una locura. Saludos |
Cita:
Cita:
|
Ese Jefe tenía razón pero hace muchos años, cuando los lenguajes eran interpretados, no compilados.
La prueba consistia en indentar, poner comenatarios etc. dentro de un bucle y al cronometrar los tiempos lógicamente tardaba mucho más que sin indentación y comentarios, puesto que el intérprete leia como es lógico para eso es un intérprete todo indentaciones, comentarios, etc.. Por esto algunos autores aconsejaban con buen criterio, indentar y comentar, pero a la hora de terminar el programa dividirlo en 2 uno el código fuente completo que se guardaba para hacer modificaciones y a la vez poder entender mejor el código y la que ejecutaba el intérprete a la que se le quitaban comentarios e indentaciones para ganar velocidad. Código:
For i = 1 to 5000 Código:
For i = 1 to 5000 Un Saludo. |
Cita:
|
Cita:
|
Cita:
:D :D |
Hola,
Cita:
Saludos. |
Cita:
El Jefe no tenía razón. Un Saludo. |
Quiero aclarar que los proyectos que llevaba este tal señor, eran VB6 y en java, o sea que no tenía ni pajolera.
Tambien cometia otras aberraciones, como obligar a que todas las variables se llamasen "ceroXXXXX" siendo X un número cualquiera. Lo hacía así porque en no sé que entorno host era como programaban y era "la mejor manera de hacerlo". En ese entorno, las variables empezaban )o podían empezar, no sé) por "0". COmo no VB ni Java permiten que un identificador empiece por un número, pues el troglodita les hacía poner el "cero". :rolleyes: |
Hola,
Cita:
De todas formas, tal vez no haya que remontarse tan lejos (GW-Basic y anteriores) para encontrar hoy en día intérpretes "directos" de código de alto nivel. No estoy seguro, pero tal vez los intérpretes de PHP y ASP funcionen así, sin una pre-compilación previa. Saludos |
Cita:
Un Saludo. |
¡Buen día a todos!
Durante los últimos diez años he ido mejorando mi estilo de codificación escrita. Llevo una serie de normas que respeto siempre que programo en Delphi. Desde poner un espacio antes de abrir un primer paréntesis, una línea en blanco antes y después de un bloque If, For, etc., hasta escribir los acrónimos tal como provienen de origen ("ANSI" y no "Ansi", etc.). Al conjunto de normas que utilizo le llamo gramática del desarrollo de software y tiene alrededor de 50 reglas que me permiten hacer de mi código, no sólo algo estético y legible, sino también uniforme. No utilizo los prefijos tipo "BTNABC_First", "BTNABC_Last" ni el símbolo de subrayado (guión bajo). Utilizo mayúsculas para la inicial de cada palabra y minúsculas para las demás letras (a menos que sea un acrónimo o nombre propio). Abrevio a cuatro letras por palabra los identificadores (sin abreviar nombres propios como "Windows", "InterBase", etc.). Uso la palabra completa si es una sola en el identificador. Cinco letras la primera palabra si se trata de una rutina. [ya no lo hago, ver nota al pie] Y desde luego, aplico también ciertas convenciones altamente establecidas y aceptadas como el prefijo "T" para los tipos de datos y clases de objetos, entre muchas otras cosas. Algo que me facilita mucho llevar al pie de la letra estas normas, es el curso de mecanografía que llevé durante un año cuando tenía 16. Realmente aconsejo a todos los programadores que tomen uno de estos cursos, porque es una habilidad muy útil que se adquiere para toda la vida. Un abrazo, seguimos en contacto. Al González :). Edito este mensaje después de casi cuatro años :p: Me da algo de pena leer la forma en que me expresaba en febrero de 2004. :o Ya no manejo las abreviaciones de n letras por palabra. Hace bastante tiempo me convencí de su poca utilidad. Además de que casi todos los editores de código facilitan ya la escritura de identificadores largos. |
yo hago ambas cosas. Los labels para mi son lblAlgo, los Tedit son txtAlgo, etc.
|
Otro voto para la identación y uso de preposiciones. Aunque tengo que admitir que comentar código no es mi fuerte, vamos que paso dias enteros programando sin poner ni un solo comentario, solo los pongo para marcar cosas raras, bugs, etc. ... pero nunca en código normal, donde a pesar de mi pésima memoria, confío en que un código bien estructurado siempre es fácil de comprender (aunque ya sabemos que esto no siempre es así). :(
Por cierto, no os imaginais la de tiempo que perdí en otras épocas identando código (Clipper y Visual Basic). Si añadía un if, hala, 1 minuto añadiendo espacios para identar el código, total para darte cuenta que no hacia falta, y otro minuto para quitarlo. Ahora el Ctrl-U y Ctrl-I del IDE de Delphi han mejorado enormemente mi calidad de vida :) (y que ya no escribo esos procedimientos enormes, ahora lo divido siempre todo en funciones pequeñas, con un tamaño máximo en los casos extremos a lo que es visible en una sola pantalla). Saludos. |
¡Buen día a todos!
Cita:
Cita:
http://www.codigoescrito.com/archivos/000054.html http://www.clubdelphi.com/foros/showthread.php?t=6559 http://groups.msn.com/ce77cj5fut58ai...b3nb1/poc.msnw http://www.codigoescrito.com/archivos/000006.html La programación atómica permite aprovechar al máximo el código, ahorrando cientos de horas de trabajo a mediano y largo plazo. Un abrazo, chao. Al González :). |
Cita:
|
Pues yo sigo en la total ignorancia: si oprimo Ctrl-I se me borra el texto seleccionado. ¿No les falta una K o un Shift?
Afortunadamente yo conozco dichas combinaciones de teclas desde Turbo Pascal cuyo editor, creo recordar, estaba basado en el WordStar. Pero si de a confesiones nos vamos aquí les pongo una realmente vergonzosa y que apenas ayer descubrí: Mi mayor trauma era editar el código sql ya que aborrezco esa ventanita minúscula que no te permite usar el tabulador. ¿Cómo es posible que pasara tantos años haciendo caso omiso del botoncito "Code Editor..."? Otras combinaciones que ignoré durante años: Ctrl-Shift-número, Ctrl-número, Ctrl-Shift-C, Ctrl-Shift-flecha abajo, Ctrl-Shift-flecha arriba. Sin embargo, y aunque me odien por esto :D , sigo esperando el día que pueda indentarse un bloque con un simple tabulador como en VB. // Saludos |
:confused:
Pues por mi os podeis seguir avergonzando publicamente, porque es increíble la de cosas que estoy aprendiendo...... Y no me da ninguna vergüenza reconocerlo. No tenía ni idea !!!! Thanks :D |
Cita:
// Saludos |
La franja horaria es GMT +2. Ahora son las 04:57:13. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi