[9] Comentário enviado por
slack felix em 30/01/2010 - 18:31h:
1. A inteção do artigo não é fazer ninguem largar C++, Java ou qualquer outra linguagem
OO para programar esse paradigma em C, seria quase que uma burrice fazer isso se o cabra
pudesse escolher entre uma ou outra visão.
2. Algumas características são básicas para uma linguagem que suporte OO como, "tipos
de dados abstratos, herança, e um tipo particular de vinculação dinâmica" (SEBESTA).
Baseados nisso, podesse implementar tambem o encapsulamento e à herança e outros
conceitos necessários. Se alguem quizer dar uma olhada no livro de James Rumbaugh, vai
perceber que eu segui a mesma estrutura com todos os tópicos que ele relaciona.
Particularmente, eu não penso que tudo que ele colocou é necessário ou essencial para OO,
ou, na verdade, até mesmo são idéias que podem ser relacionadas com qualquer linguagem,
mas para seguir a mesma lógica desse autor deixei os mesmos tópicos.
3. Na verdade, o que alguns disseram, o interessante é ver que as técnicas independem
da linguagem na qual elas estejam sendo implementadas. Claro, existem linguagens onde
certas técnicas são mais facilmente implementadas e outras onde as coisas funcionem
como uma "gambiarra". Mas, mesmo uma linguagem não implementando certos conceitos não
quer dizer que eles não possam ser utilizados pelo programador de alguma forma. Não
podemos ficar BITOLADOS na idéia de que na linguagem tal não dá pra fazer isso, ou aquilo
porque ela não suporta, mas sim SE FOR NECESSÁRIO E NÃO EXISTIR OUTRA FORMA É
CLARO, buscar as melhores formas de usar as melhores abordagens mesmo onde parece não
dar pra fazer, ou onde ninguem fez ainda, ou não é usual fazer.
4. MEU ERRO PRINCIPAL, foi não especificar na introdução ou na descrição do artigo que o
exposto nele deveria ser alvo de discussão de: se podemos ou não implementar os conceitos de
OO ou qualquer outro em linguagens que não os suportem.