Ir al contenido principal
3 Pilares básicos en la programación

En mi experiencia como programador he tenido que topar con toda clase de compañeros y con ellos sus practicas de programación, algunos ordenados y con prestigiosas prácticas, otros con excentricos y banales fenómenos de codificación y otros cuyos artilugios no tienen forma por donde quieras que lo veas y el próximo (incluyendo) que le de mantenimiento va pasar un mal rato, no solo entendiendo el problema, si no tratando de leer (entender es demasiado pedir) el código maléfico.

Existen muchas prácticas, pero entre mis favoritas se encuentran las siguientes 3:

1) Declarar todas las variables al inicio del bloque:
Es imposible que la gente ande declarando una variable donde sea, apenas la necesita.
Esta técnica aparte del orden que ya gana, permite saltarse de primera instancia la declaración de las variables para ir a la invariante de la clase, sin que esta se pudra con código de declaraciones, además es mas sencillo reutilizar o liberar las variables en diferentes "scopes" en el mismo método.

2) Inicializar las variables:
Esta es otra practica importante y casi que viene de la mano con la primera, aunque puede parecer una cuestión de estética, sin duda es una buena practica pues nos permite además definir el punto de partida, además si el valor puede tener un valor inicial con más sentido que un "null", así pues ya es mas que funcional.

3) Un solo punto de retorno:
Esto aplica en caso que la función tenga un valor de retorno, en lenguajes como Groovy o Perl en donde se puede omitir el ultimo retorno, tomando por dada la ultima variable utilizada en el método quizá no sea del todo funcional, pero en los lenguajes que carecen de esta característica, proporciona un legibilidad muy pero muy valiosa. El hecho de tener hasta 10 instrucciones "return" en el código hace caótico el entendimiento, además que a razón de eficiencia esto puede afectar el predictor del pipeline del hardware, pues una instrucción de retorno que no se encuentra al final de la operación, provoca que las siguientes N instrucciones predecidas sean sacadas del pipeline por la interrupción inesperada.

Como se podrá dar cuenta, son simples consejos e inclusive se pueden ver como puntos triviales o super básicos para un programador, pero deben creerme, pasa y mucho.

Cuando digites código, por favor ponte en los zapatos del pobre que tendrá que darle mantenimiento y apiadate de él.

Comentarios

Mario León dijo…
Y yo insisto, aunque tal vez no sea algo sobre el código, la documentacion correcta de los atributos asi como de los métodos es super importante también para el entendimiento del mismo.
Siempre es bueno acatar los code conventions ya establecidos, tanto para código como para documentacion, y al final puedes facilmente generar un javadoc que ayuda muchisisimo al entendimiento de las aplicaciones.

Entradas más populares de este blog

Validaciones con HTML5 sin necesidad de form.submit

Como parte de HTML5 existe la posibilidad de agregar información a los inputs de un form, para realizar validaciones; podemos indicar si queremos que sea requerido, con el tipo de datos; number, email, etc restringimos los valores que pueden ser agregados, podemos usar alguna mascara para validaciones, colocar mensajes de error custom, etc (en la red existen muchos ejemplos acerca de como customizar formularios). Ahora bien pongamos en contexto, tengo un formulario como este: <form name="managerForm"  id="managerForm">              <p>                  Name:                 <input id="managerNameText" required="required" placeholder="Write here the new manager name" size="40"/>              </p>             <p>                 Email:                 <input id="emailText" required="required" placeholder="myemail@myserver.com" type="email" />

Pasos para remover Postgresql 8.3 en MAC OS

Tomado de: http://forums.enterprisedb.com/posts/list/1437.page In Mac OSX: (Assuming Default Locations) Via uninstaller: 1) In the installation directory, there will be a uninstall-postgresql.app file will be there, executing (double clicking) that will uninstall the postgresql installation. Manual Uninstallation: 1) Stop the server sudo /sbin/SystemStarter stop postgresql-8.3 2) Remove menu shortcuts: sudo rm -rf /Applications/PostgreSQL 8.3 3) Remove the ini file sudo rm -rf /etc/postgres-reg.ini 4) Removing Startup Items sudo rm -rf /Library/StartupItems/postgresql-8.3 5) Remove the data and installed files sudo rm -rf /Library/PostgreSQL/8.3 6) Delete the user postgres sudo dscl . delete /users/postgres

Inventario anual de bebidas

Hola gente, Solo quería compartir mi inventario anual de bebidas (así conocer gustos), excluyendo algunas cervecillas que tengo por ahí guardadas, este es mi inventario: Ron: Flor de Cana 1 botella 5 anos. 2 botellas 7 anos una pacha 7 anos 2 botellas 12 anos 1 botella 18 anos Ron Zacapa 15 anos Centenario pachita 7 anos Centanario pachita 12 anos Bacardi limon Bacardi Razz Ron abuelo 7 anos Bacardi superior 1862 Ron Boltran XL Ron Centenario Garrafon Ron Jamaica Appleton 7 anos Ron Jamaica Appleton 12 anos (muchisimas gracias a Mayra :) Capitan Morgan Rum Jumbie, coconnut splash Ron coconut Malibu Ron Tequila Milagro Silver (muchisimas gracias a Pablito :) Sauza Gold Sauza Reposado Don Julio Reposado Vino Luigi Borer Malbec 2006 Casillero del Diablo, Caberut Sauviguon 2009 Vodka 2 botellas smirnoff y una smirnoff con sabor cranberry Cremas y otro licores Cahuita pacha Amaretto Barinet Licor de menta Licor de agave Rancho Escondido Bayleys 2 botellas (muchisimas gracias a Brian B :) Li