Cercar en aquest blog

14/2/12

Filosofia de Programació Unix

Navegant per Internet, he trobat un llibre del 2003 que parla sobre l'art de programació en sistemes Unix. És una lectura recomenable per a tot programador, però el que més m'ha cridat l'atenció és el que en ell s'anomena "filosofia Unix", nombrant una serie de regles, que crec, són aplicables a tota programació o desenvolupament de programari. Les anomeno, i adjunto el link del llibre.

Regla de Modularitat: Escriu parts simples connectades per interfícies netes.
Regla de Claredat: La claredat és millor que la intel · ligència.
Regla de Composició: Dissenya programes per ser connectats a altres programes.
Regla de separació: la política independent del mecanisme; interfícies separades dels motors.
Regla de la simplicitat: Disseny de la simplicitat, afegir la complexitat només quan és necessari fer-ho.
Regla de parsimònia: Escriure un programa gran només quan és evident per la demostració de que només espot fer d'aquesta manera.
Regla de Transparència: Disseny per a la visibilitat per fer la inspecció i depuració més senzilla.
Regla de Robustesa: La robustesa és la filla de la transparència i la simplicitat.
Regla de Representació: Inverteix el doble en el coneixement de dades del programa de manera lògica sinó el resultat pot ser estúpid i menys robust.
Regla de la Mínima Sorpresa: En el disseny d'interfícies, evitar les sorpreses.
Regla del Silenci: Quan un programa no té res sorprenent que dir, no hauria de dir res.
Regla de Reparació: Quan s'ha de fallar, fallarà estrepitosament i tan aviat com sigui possible.
Regla d'Economia: El temps del programador és car, conserva'l en lloc de temps de màquina.
Regla de Generació: Eviti escriure programes per escriure programes quan sigui possible.
Regla d'optimització: Un prototip abans de polir. Aconseguir que funcioni abans de optimitzar-lo.
Regla de la Diversitat: Desconfia de tots els reclams de "un veritable camí".
Regla de Extensibilitat: Dissenya per al futur, perquè serà aquí abans del que vostè pensa.

El libre.......