sexta-feira, junho 12, 2009

Aprenda programação orientada a objetos no dia dos namorados


ZehFernando é um amigo meu de longa data, grande jogador de Quake e atualmente um dos caras que mais manjam de Flash no mundo, sem exageros.

O cara também escreve coisas sensacionais, como este divertidíssimo e didático texto sobre Programação Orientada a Objetos. Impagável.


Veja alguns trechos:

Gata, depois de ser instanciada, deus removeu sua classe do repositório.

Instanciar é o processo de criar uma nova cópia de um objeto, ou instância, a partir de uma classe. Repositório é onde arquivos relacionados a um projeto são armazenados, geralmente através de um serviço como CVS ou Subversion. Serviços desse tipo são bastante utilizados por times de programadores. Essa frase é meio que um equivalente de “depois que deus te fez, jogou a planta fora”.

Gata, não tem encapsulamento que esconda o que eu sinto por você.

Encapsulation ou encapsulamento é outro recurso chave de OOP, em referência à possibilidade de se esconder o funcionamento de uma parte do código dentro de uma classe. Esse tipo de separação faz com que projetos OOP possam ser montados de forma mais modular, sem que haja um diálogo muito grande entre diferentes classes.

Gata, universo = universo.replace(/([\.-,;\s]+s|^s)o(l$|l[\.-,;\s])/im, “você”);

Talvez não OOP, esta é uma última cantada baseada em regular expressions ou expressões regulares (RegExp para os íntimos). Regular expressions é uma sintaxe utilizada para a procura e substituição de texto de forma mais avançada, indo além de simplesmente “substituir x por y”. A expressão descrita na frase visa substituir a palavra “sol” por “você” em qualquer texto, desde que seja uma palavra separada (para evitar a substituição de “sol” no meio de outras palavras, como “solidão”). Já replace() é a função utilizada em ActionScript para efetuar a substituição de texto através de regular expressions.

A idéia aqui era basicamente querer dizer “meu mundo gira em torno de você”, já que substitui a palavra “sol” por “você” numa variável chamada “universo”. Não cheguei a testar e é capaz de que tenha algum erro na expressão.

Nenhum comentário:

Postar um comentário

Observação: somente um membro deste blog pode postar um comentário.