Building Objects out of Plato

Olá amigos e outras pessoas,

Para quem for membro da ACM, já leram a Communications de outubro? Existe um artigo sobre simbolismo e filosofia aplicada ao design de software e, claro, utilizando OO, com o nome do título desse comentário. Achei o artigo fantástico!! É algo que sempre achei possível. A similaridade entre o conceito do mundo das idéias de Platão e o paradigma de OO é grande, e é possível pensar de formas interessantes a respeito de software assim.

O que me impressiona é que esse tipo pensamento não é levantado mais vezes pelos desenvolvedores em geral. Por que será? Eles não têm tal mecanismo de pensamento implementado em suas mentes, parece.

Um ponto interessante é que não existe tal forma de pensar com outras formas “hype”-adas recentemente, como AOP por exemplo. Será que AOP não passa de um açucar sintático para o que já fazemos hoje com OO? Uma espécie de placebo para as pessoas destituídas de mentalidade crítica, que esperam pelo próximo “Next Big Thing”?

Ou então esse hype sobre “programação funcional”, que na verdade é coisa bem antiga. Programação funcional é algo mais próximo da matemática, é muito útil para certas coisas, mas definitivamente não é uma questão de vida ou morte.

Este lance de fazer analogias com filosofia é um recurso que eu já usei algumas vezes em que eu estava dando treinamento. Já usei Platão para explicar OOP e responsabilidades de classes, Aristóteles para explicar, por exemplo, packages e design. O mais interessante é notar como as pessoas acabam ficando mais interessadas no resto do curso quanto eu faço este tipo de analogia e como elas entendem mais facilmente as idéias básicas, mas meio complicadas para um iniciante, de OOP desta maneira. Mas é preciso conhecer um pouquinho de filosofia antes de tudo. Quem quiser aprender um pouquinho de filosofia para perceber que isso tem tudo a ver com computação, recomendo dois livros:

  • Convite à Filosofia, Marilena Chaui (Introdução à História da Filosofia, da mesma autora também é muito bom)
  • O Mundo de Sofia, Jostein Gaarder

Gosto de um pensador brasileiro, o Luiz Sampaio e sua Lógica Ressuscitada

http://del.icio.us/rafaeldff/philosophy+OO

Um livrinho legal é o “What does it all mean”, do Thomas Nagel (traduzido com o título “Uma breve Introdução à Filosofia”, saiu pela Martins Fontes).