"El buen c贸digo es su mejor documentaci贸n." 鉁嶐煆 Steve McConnell

Permitidme que siga tratando la programaci贸n como un tipo concreto de escritura. Hemos llegado hasta aqu铆 teniendo un estilo y est茅tica homog茅neos. Y un vocabulario con sustantivos y verbos para expresar un dominio de conocimiento concreto. Es hora de empezar a escribir.

Y la escritura, ya se trate de blogs, de libros o de programas se basa en organizar palabras en frases. Y estas frases en p谩rrafos. Y despu茅s ya vendr谩n los cap铆tulos, o los tomos, quiz谩s las series. Pero la unidad es la frase. Que para nosotros ser谩n instrucciones. Aqu铆 empieza la claridad y la expresividad.

Y el conjunto de frases forma los p谩rrafos a los que llamaremos bloques. Muchos de esos bloques se comportar谩n como los p谩rrafos narrativos, aparecer谩n una sola vez. En cambio otros aparecer谩n de manera repetitiva. Y algunos no aparecer谩n a menos que se cumplan ciertas condiciones. Esto es la base de las estructuras repetitivas y condicionales. El lugar d贸nde los programadores incrustamos la l贸gica de negocio.

驴Qu茅 es un cap铆tulo sin un t铆tulo? Pues un conjunto de texto que solo cobra sentido al leerlo. En cambio, un buen t铆tulo te dice mucho sobre lo que pasar谩 despu茅s. Te hace ganar inter茅s o te permite dejarlo para otro momento. As铆 les ocurre a los bloques con nombre: las funciones, subrutinas o m茅todos seg煤n el lenguaje (idioma) en el que programes (escribas). Los nombres explican lo que hacen las instrucciones.

Ah se me olvidaba que algunas de estas funciones, adem谩s, son invocadas desde diversos sitios facilitando uno de nuestros principios de limpieza: evitar la redundancia.

En las pr贸ximas entradas de este tutorial prestaremos especial atenci贸n a las sentencias y a su organizaci贸n en bloques, estructuras y por 煤ltimo funciones.

"A veces, la implementaci贸n m谩s elegante es solo una funci贸n. No es un m茅todo. No es una clase. No es un framework. Solo una funci贸n."

-- 鉁嶏笍 John Carmack