• Nenhum resultado encontrado

A Linha do Tempo dos Paradigmas de Programação em Computadores

Uma descrição breve da história evolutiva dos paradigmas de representação do conhecimento no domínio das Ciências da Computação, auxilia a visualizar a questão da evolução natural da visão humana para representar sistemas. A seguir, serão abordados os três principais paradigmas de programação em computadores: Sequencial, Estruturado e da Orientação a Objetos. Ao longo das últimas cinco décadas, eles se constituíram na base do desenvolvimento das versões mais populares de linguagens de programação em computadores, que foram lançadas e vendidas no mercado de software.

MODELAGEM O R I E N T A D A A OBJETOS (ANOS 90) \ / M O D E L A G E M E S T R U T U R A D A (ANOS 70) \ / MODELAGEM SEQUENCIAL (ANOS 50) V

Figura 1 : Linha do Tempo da Modelagem em Programação de Computadores

Estes três paradigmas representacionais do conhecimento, utilizados na solução de problemas via computacional, evoluíram neste período, acompanhando naturalmente a evolução da complexidade, agregada ao domínio da solução dos problemas. A figura 1,

acima, mostra a linha do tempo dos anos 50 até os nossos dias, em termos da modelagem de software.

1.1.11 Passado Recente dos Paradigmas de Programação em Computadores

Anos 50: a programação Imperativa ou Sequencial utilizada predominantemente pelos engenheiros dava conta de problemas específicos, seja de aplicações matemáticas, seja de tempo real. A complexidade dos sistemas era menor, e notadamente ligada a soluções matemáticas, onde a estrutura de dados, e os problemas de armazenamento e velocidade pesavam de forma crucial. Este foi o tempo da programação em linguagem Fortran e Basic. Esta foi a época do paradigma de programação em computadores denominado de Sequencial. Apesar de que na década de 50 e 60, o paradigma sequencial era o modelo dominante na programação em computadores, historicamente, a modelagem Orientada a Objetos, foi derivada em 1967, através dos recursos implementados na linguagem de simulação denominada de Simula. Seus dois autores foram os noruegueses Kristen Nygaard e Ole - Johan Dahl. Mesmo sendo antiga, a proposta de modelar na forma da Orientação a Objetos, esta ferramenta só viria a se popularizar muito mais tarde.

Anos 70: a necessidade crescente de organização, devido ao incremento natural da complexidade dos sistemas, trouxe a programação Estruturada, também chamada de Modular. No mercado, surgia o personal Computer, como eram denominados os primeiros micro-computadores disponíveis. Começava uma revolução na área de hardware, que, agora, organizava a complexidade das máquinas em componentes denominados de chips. Os softwares, porém, continuaram evoluindo lentamente. A contribuição de Nicolau Wirth, na área das linguagens de programação talvez foi a mais importante desta época. Ele desenvolveu a linguagem Pascal, uma linguagem estruturada

extremamente pedagógica. Foram surgindo, também, versões atualizadas das antigas linguagens Fortran e Basic, que passavam a incorporar os princípios do paradigma

Anos 90: chega o tempo dos portable computers, computadores portáteis, inicia-se a era do ambiente windows, a era extremamente visual. A programação visual é literalmente orientada a objetos visuais: botões, caixas de diálogo, ícones etc. Este quadro ajudou a popularizar o paradigma da Orientação a Objetos. A Orientação a Objetos

aguardou cerca de trinta anos por isso. A especialização no trato dos problemas de construção de interfaces mais amigáveis é evidente. Acrescente-se a isto, o advento da internet com demanda de envios de softwares encapsulados em estruturas do tipo de objetos. Mas, este paradigma é eficaz não apenas na direção da especialização. Sua maior contribuição é estar em sintonia com as demandas dos tempos de globalização. Para sistemas mais complexos, ele se mostra como ferramenta potente.

1.1.1.20 Tempo Presente, marcado pela Orientação a Objetos

A história vem testemunhando o crescente interesse mundial, tanto no campo profissional de informática, como de ensino, pela modelagem Orientada a Objetos. Neste paradigma, que lida com a complexidade, é natural que a etapa do projeto se tome cada vez mais importante, contra o imediatismo do estágio de programação, em si. A Orientação a Objetos vem ganhando espaço, inclusive trazendo o desenvolvimento de linguagens, especificamente de modelagem, que vem sendo foco de estudos com o fim de padronização. Um exemplo de linguagem de modelagem, é a UML - Unified Modeling Language, [SETTE 1997] e [RUMBAUGH et al. 1991]. A relevância desta área também pode ser notada pelo aumento da preocupação mundial com a padronização de softwares Orientados a Objetos. Um bom exemplo disto é o caso da fundação do OMG- Object Management Group [OMG 2001], entidade mundial, sem fins lucrativos, sediada nos Estados Unidos. A OMG é responsável pela padronização do software Orientado a Objetos,

1.1.1.30 Tempo Futuro e a Orientação a Objetos

Pode-se avaliar a importância da modelagem Orientada a Objetos, no domínio das Ciências da Computação, pela sua onipresença, dado que seus axiomas estão sendo incorporados, praticamente, nas mais recentes versões de softwares no mercado. Isto inclui, desde algumas linguagens mais populares, e historicamente antigas, como a linguagem Pascal (sua versão atual intitula-se Object Pascal), passando pela linguagem Basic (na versão Visual Basic), até chegar à antiga e primeira linguagem comercial, o Cobol (versão Object Oriented Cobol). Outras linguagens mais recentes como Java e C++ também contém os recursos da Orientação a Objetos. Todas estas linguagens citadas são denominadas de linguagens híbridas, porque incorporaram os pressupostos da Orientação a Objetos, mas, na prática, aceitam qualquer tipo de orientação de programação. Um outro grupo de linguagens especiais, nasceu de uma concepção totalmente Orientada a Objetos. Algumas delas são a linguagem Small Talk (a mais antiga), a Eiffel, de Bertrand Meyer, e a Beta, recentemente desenvolvida porNygaard.

Aqui vale acrescentar - que, a tendência de programar Orientado a Objetos, vem migrandoparaa as fases iniciais dos currículos de ensino, relativo à programação em computadores. O professor Nygaard, atualmente preside o projeto pedagógico mundial COOL - Comprehensive Object Oriented Leaming [NYGAARD 2001], previsto para os próximos vinte anos. Este projeto deseja reforçar a perspectiva educacional, do pensar complexo, ou Orientado a Objetos, para iniciantes. O encontro, recente, em agosto de 2001, da autora com o professor Nygaard, além de trazer estas informações sobre o projeto COOL, trouxe um enorme estímulo para que se continue a desenvolver pesquisas na educação, especialmente no caso dos iniciantes, nas diversas áreas do saber .

Em relação ao ensino deste paradigma de modelagem, o curso de bacharelado em Ciências da Computação da Universidade Federal de Santa Catarina - UFSC, foi bastante inovador ao colocar a disciplina de Programação Orientada a Objetos na primeira fase do curso, desde 1997. A autora do presente trabalho se beneficiou desta experiência curricular, proposta pelo colegiado do curso de Computação da UFSC, hoje podendo fazer uma proposta pedagógica mais geral, baseada na modelagem, sob a visão integrativa,

proporcionada por esta ferramenta. Especificamente sobre o ensino de Programação Orientada a Objetos para iniciantes, a autora tem procurado divulgar suas pesquisas na comunidade cientifica, [OLIVEIRA et al. 2000], [OLIVEIRA 1999a], [OLIVEIRA e BORATTI 1998], [OLIVEIRA et al. 1998a].

F.nfim, pode-se resumir que a Orientação a Objetos, por seu suporte teórico, é uma ferramenta ideal para tratar com a complexidade, típica das demandas dos nossos dias. Sendo assim, pode-se prever que a Orientação a Objetos é uma ferramenta que se abre para aplicações, também fora da sua área de origem, a Informática. E, ela pode assumir um caráter de pleno resgate do pensar integrado, do organizar o pensamento complexo.