Professional Documents
Culture Documents
Por qu desperdiciar tu vida desarrollando software sino te
preocupas en hacerlo bien?
Desconecta el piloto automtico y toma el control. Critica y
evala constantemente tu trabajo.
En vez de excusas, propn opciones. No digas que no
se puede hacer algo, explica mejor lo que s puedes hacer.
Corrige malos diseos, decisiones equivocadas y el cdigo
mal escrito cuando lo veas.
No puedes forzar que la gente cambie. En vez de eso,
muestra cmo podra ser el futuro y aydalos a participar en tu creacin.
!c
"No te obsesiones con los detalles porque hacen olvidarte de
lo que ocurre alrededor.
#
$
Involucra a los usuarios para determinar
las necesidades de calidad reales del proyecto.
%
Haz de aprender un hbito
&
'
$ (
)No te dejes convencer por vendedores,
dogma o medios. Analiza la informacin en tus trminos y en basada en tu proyecto.
%
$
'
. No tiene sentido tener buenas ideas
sino las transmitimos con eficacia.
Cada pieza de conocimiento debe de tener una nica e inequvoca
representacin dentro de un sistema.
#'*
Si es fcil de reutilizar, la gente lo har reutilizable. Crea un
entorno que apoye la reutilizacin.
+
'
Los componentes de un diseo son
autnomos, independientes y tienen un nico propsito bien definido.
)(
'
. Las decisiones no se deben grabar en una piedra, sino en la
arena de la playa. Cualquier decisin debe ser susceptible a cambio.
,
. Haz distintas pruebas y tracea los resultados para ver
cmo se van compenetrando para llegar a nuestro objetivo.
2
Recurre a los contratos para documentar y comprobar que el cdigo
hace realmente lo que tiene que hacer.
+
. Un error cuanto antes sea detectado mejor, har menos dao que aquel
que se detecte tarde, har que creemos que la aplicacin funciona.
'
Las afirmaciones validan tu hiptesis.
salas para proteger el cdigo de un mundo desconocido.
El abuso del uso de excepciones
pueden convertir tu aplicacin en poco legible y sotenible. Usa las excepciones para casos
excepcionales.
&
$ Siempre que sea posible, la rutina o el objeto asignado a un
recurso debe de ser borrado cuando ya no sea necesario.
3
- Evita el acoplamiento debido al cdigo
tmido y aplica la Ley de Demeter.
'
Implementa las opciones para una tecnologa usando opciones de
configuracin, no a travs de integracin ingeniera.
-
Programa para el caso general, y
coloca las especificaciones fuera del cdigo base compilado.
&
'
Aprovecha la concurrencia en
el flujo de trabajo del usuario.
2
Disea en trminos de servicios independientes, detrs de objetos
concurrentes bien definidos, interfaces consitentes.
2
Permite la concurrencia, y disears interfaces ms
limpias.
Gana flexibilidad a bajo coste diseando tu
aplicacin en trminos de modelos y vistas.
' Usa las pizarras para coordinar agentes
y hechos dispares, manteniendo la independencia y el aislamiento entre los participantes.
Confe slo en las cosas confiables. Ten cuidado con la
complejidad accidental, y no confundas una feliz coincidencia con un plan organizado.
#
-
Ten una idea de la longitud de las cosas
antes de empezar a escribir cdigo.
El anlisis matemtico no te lo dice todo. Prueba el tiempo
consumido por tu cdigo en su entorno final.
'
'
As como quitas las malas hierbas de un jardn
y lo reorganizas, reescribe, haz de nuevo y redisea el cdigo cuando sea necesario. Arregla
la raz del problema.
2 Empieza a pensar en las pruebas antes de escribir una lnea de cdigo.
'1)*
Prueba sin piedad. No hagas que los
usuarios encuentren los errores por ti.
- $
Los asistentes pueden generar
montones de cdigo. Asegrate de entender todo antes de incorporarlo a tu proyecto.
$ 0
Los requisitos rara vez estn en la superficie. Estn
enterrados bajo capas de supuestos, conceptos errneos y poltica.
,
Esta es la mejor forma de
conocer cmo funciona el sistema que utilizarn realmente.
4
*elcome, Javalobby readers! You might be interested in the followup to this post.
Thanksforthegreatfeedback and suggestions.
| |
|
()
|
(
)
*(+),
++
%$-- "
&
|
++
./
"
|
| $
8
8
|
&
"9$:
8
|
%
+
( &+
8
"
"
4
"
8
Note what
6 on the list: any of the Java 5 reference books or any of the tens (hundreds?)
of J2EE books. Its important to keep up with the language and the platform, but I think
thats better done through programming with the JDK and examples as reference. The
reference books can be helpful for getting up to speed for day to day work, but I don't think
they are essential for furthering your knowledge or your craft. Long after your J2EE
.4.x.niner book is collecting dust on the shelf, Effective Java will still be a reference you
consult regularly.