Академический Документы
Профессиональный Документы
Культура Документы
cfontela@fi.uba.ar
A.
B.
C.
D.
E.
2c2014
Qu importa ms?
Cdigo claro y mantenible
Desempeo (performance) de la aplicacin
Performance del usuario
Portabilidad a distintos ambientes
2c2014
Legibilidad
Guas para mejora de desempeo
Buenas prcticas de XP
2c2014
2c2014
En un texto usamos:
Ttulos de distinto nivel
Sangras
Signos de puntuacin
Tipografas especiales
2c2014
2c2014
10
2c2014
Nombres
Formatos: lneas en blanco, sangras, etc.
Comentarios
=> Cdigo autodocumentado
11
2c2014
12
2c2014
Descriptivos
lineasPorPagina es mejor que lpp
distanciaEnMetros es mejor que distancia
Poner antnimos en forma consistente: mayor, menor / min, max
No usar nmeros: total1, total2
13
2c2014
14
2c2014
15
2c2014
16
2c2014
2c2014
18
2c2014
19
2c2014
20
2c2014
21
2c2014
22
2c2014
2c2014
Das de un mes
diasMes := #(31 28 31 30 31 30 31 31 30 31 30 31 ).
( (mes > 0) & (mes <= 12) )
ifTrue: [resultado := diasMes at: mes]
ifFalse: [Error signal new].
( (mes = 2) & (anio bisiesto) )
ifTrue: [resultado := 29]
2c2014
27
2c2014
Resistir la tentacin
No siempre el usuario percibe las mejoras en el
cdigo, sino que privilegia su propia experiencia
Mejorar el hardware?
28
2c2014
29
2c2014
2c2014
31
2c2014
32
2c2014
Probar su efectividad
Muchas presuntas mejoras no resultan, porque
los compiladores, entornos de ejecucin y
otros, las introducen en forma automtica
No hay expertos generalistas
Hay cosas que han cambiado con el tiempo
P. ej., llamadas a funciones, arreglos
multidimensionales
33
2c2014
1. Make it work.
2. Make it right.
3. Make it fast.
(Kent Beck)
37
2c2014
38
2c2014
2c2014
Refactorizaciones
40
2c2014
41
2c2014
Simplicidad
The simplest thing that could possibly work
Complejidad dificulta refactorizaciones,
comunicacin y depuraciones
No implementar lo que no se sabe si servir,
y en el 80% de los casos no sirve
2c2014
Prioridades
1.
2.
3.
4.
Cdigo autodocumentado
Embebida en el cdigo (comentarios)
Pruebas unitarias
Otras pruebas automatizadas
Menor valoracin a
UML
Documentos externos
aunque no se descartan
No repetirs cdigo
No dejars a tu prjimo lo que no quieres que
te dejen a ti
Escribirs cdigo legible
Usars la barra espaciadora y el salto de lnea
de tu teclado
La optimizacin prematura es la raz de todos
los males (Donald Knuth)
45
2c2014
2c2014
48
2c2014
49
2c2014