martes, 4 de marzo de 2008

Kent Beck & McCarthy

El otro día vi unos videos interesantes en InfoQ. El primero de Kent Beck, http://www.infoq.com/interviews/beck-implementation-patterns que habla sobre su nuevo libro para Java que se llama "Implementation Patterns". Como lo dice al principio, es una especie de traducción del libro de "Smalltalk Best Patterns Practices" a Java, lo que nos puede hacer notar lo atrasada que está la comunidad Java (10 años?) respecto de lo que Beck comenta en ese libro. Sin embargo me desilusionó bastante cuando nombra que lo más importante para él es descomponer un método en otros. Por más que es importante entender este punto, pareciera que la única unidad de factorización en la que piensa es el método, se olvida de los objetos!! o sea, parece más que está hablando de programación estructurada que de programación con objetos. También se puede ver su disconformidad con la comunidad de patrones, por como perdió su espíritu inicial.
Si buscan un poco en esa página, también verán una entrevista de John McCarthy (Turing Award, creador de Lisp), que también habló en OOPSLA 2007, en este caso sobre el lenguaje que está implementando "Elephant". Lo que más me sorprendió de la entrevista es el palo que le dió a Dijstra respecto de haber "eliminado el GOTO". Había escuchado últimamente que había varios que cuestionaban la eliminación total del GOTO, pero no sabía que McCarthy estaba entre ellos y menos aún, no me esperaba que lo dijera de la manera que lo dice en esa entrevista... en fin, interesante para ver si tienen tiempo.

3 comentarios:

Hernán Tierno dijo...

No creo que solamente piense en los métodos, pero sí creo que los métodos es el puntapie inicial para cualquier otra refactorización. Si uno piensa en descomponer en pequeños métodos, fácilmente se da cuenta que esos métodos no corresponden al objeto donde se encuentran. Generalmente asi empiezo a refactorizar super métodos y solito solito sale a la luz el nuevo objeto.

Hernan Wilkinson dijo...

Que tal Hernán,
estoy de acuerdo con lo que decís, que se empieza por ahí, pero me dió la sensación que él se queda ahí, por lo menos por lo que dice en la entrevista y también por lo que recuerdo de su libro. Creo que podría hacer un poco más de esfuerzo en tratar de que se usen más objetos y no solo descomponer un problema en "funciones".
Hago este comentario también porque en el 2005 en OOPSLA, en el panel que compartió con Yourdon, Constantine, Wirfs-brook y otros, lo alabó tanto a Yourdon por su libro de programación estructurada que me dio un "no se que"... dijo que en ese libro ya estaba todo dicho, y bue, no estoy tan de acuerdo, no es mi opinión.
Igual así y todo, Kent Beck me parece un tipo que le dio mucho a la comunidad de objetos.

Anónimo dijo...

¿Te referís a McCarthy el que dijo que las computadoras pueden tener creencias?