Programação Orientada a Objetos/Introdução: diferenças entre revisões
[edição não verificada] | [edição não verificada] |
Conteúdo apagado Conteúdo adicionado
m moveu Programação orientada a objetos/O que é para Programação Orientada a Objetos/Introdução: preparando para fundir históricos de colaboração |
m Restaurando a versão mais recente do conteúdo (antes da fusão de históricos) |
||
Linha 1:
== O que é Orientação a Objetos ==
'''Orientação a objetos (OO)''', em uma definição formal, é um [[w:paradigma|paradigma]] de análise, projecto e programação de sistemas de software baseado na composição e interação entre diversas unidades de software chamadas de ''objetos''. Ou seja, é um modelo utilizado no desenvolvimento de software onde trabalhamos com unidades chamadas ''objetos'' (que serão explicados mais adiante). Este modelo visa, principalmente, organização, desempenho, sustentabilidade e reutilização do software.
Como veremos, a orientação a objetos visa um pensamento o mais próximo possível da vida real.
Ao programar orientado a objetos não teremos apenas funções que são chamadas uma seguida da outra, mas sim '''objetos''' que possuem '''estado''' e '''comportamento'''.
Tudo isso será melhor detalhado no decorrer dos capítulos do livro.
== Porque programar orientado a objetos ==
A '''Programação Orientada a Objetos (POO)''', foi criada para tentar aproximar o mundo real e o mundo virtual: a idéia fundamental é tentar simular o mundo real dentro do computador. Para isso, nada mais natural do que utilizar '''objetos''', afinal, nosso mundo é composto de objetos, certo?
Na Programação Orientada a Objetos, o programador (você) é responsável por moldar o mundo dos objetos, e definir como os objetos devem interagir entre si. Os objetos "conversam" uns com os outros através do envio de mensagens, e o papel principal do programador é definir quais serão as mensagens que cada objeto pode receber, e também qual a ação que o objeto deve realizar ao receber cada mensagem.
Isso possibilita a criação de códigos com baixo acoplamento (explicado mais adiante) e que podem ser facilmente reutilizados, o que são alguns dos principais motivos para se programar orientado a objetos.
== História ==
O termo Programação Orientada a Objetos (POO) foi criado por [[w:Alan Kay|Alan Kay]], autor da linguagem de programação Smalltalk. Mas mesmo antes da criação do Smalltalk, algumas das idéias da POO já eram aplicadas, sendo que a primeira linguagem a realmente utilizar estas idéias foi a linguagem Simula 67, criada por [[w:Ole-Johan Dahl|Ole-Johan Dahl]] e [[w:Kristen Nygaard|Kristen Nygaard]] em 1967. Entretanto só veio a ser aceito realmente nas grandes empresas de desenvolvimento de Software por volta dos anos 90.
Alguns exemplos de linguagens orientadas a objetos modernas utilizadas por grandes empresas em todo o mundo são: Java, C#, C++, Object Pascal (Delphi), Ruby, Python, Lisp, etc.
A maioria das linguagens que adotaram o paradigma da orientação a objetos adotaram apenas parcialmente, dando espaço para o antigo modelo procedural de programação, como acontece na linguagem C++, por exemplo, onde temos a possibilidade de usar POO, mas a linguagem não força o programador a adotar este paradigma de programação, sendo ainda possível programar da forma procedural tradicional. Este tipo de linguagem segue a idéia de utilizar uma linguagem previamente existente como base e adicionar novas funcionalidades a ela.
Outras são mais "puras", sendo construídas do zero focando-se sempre nas idéias por trás da orientação a objetos como é o caso das linguagens Smalltalk, Self e IO, onde tudo é orientado a objetos.
== Links externos ==
[http://melhoragora.org/2007/04/08/orientacao-a-objetos-historico/ Oritenação a Objetos: Histórico]
[[Categoria:Programação orientada a objetos]]
|