Orientação a objetos em JavaScript, o básico

javascript_oop1

Mais um “capítulo” da série dos pequenos guias sobre orientação a objetos em linguagens de programação e, desta vez, com a inclusão do Javascript¹. Ela é uma linguagem interpretada com orientação a objetos nativa e criada pela Netscape em 1995 para prover a execução de código no lado do cliente² dentro do navegador web homônimo da empresa.

Mais recentemente, com o advento do Node.js, passou a executar código no lado do servidor também! 🙂

E o mínimo necessário em JavaScript para se trabalhar com objetos é o seguinte…

(¹) Ou melhor ECMAScript que é o nome da especificação, enquanto que JavaScript é sua a implementação mais conhecida, uma outra é o JScript usada pelo Internet Explorer.

(²) Eu sei que dentro do navegador só pode ser do lado do cliente mas é bom dar ênfase ao fato, ok?

Continuar lendo

Orientação a “objetos” em assembly Z80

oop_z80-abertura

Esta ideia surgiu enquanto pensava em formas de implementar o “herói” e as demais “caixas” (ou inimigos) no Survive sem transformar o programa em uma “maçaroca” de código. Mas seria possível utilizar o tal paradigma de orientação a objetos diretamente em assembly E, caso possível, seria prático, funcional ou uma mera curiosidade?

A primeira pergunta foi fácil de responder, me lembrava vagamente de um livro¹ sobre o assunto e numa busca rápida encontrei um artigo da Dr. Dobbs de março de 1990 que me ajudou a visualizar como poderia ser feito e uma (re)leitura da documentação do Pasmo indicou como fazê-lo.

Quanto a funcionalidade, vejamos se consigo ser convincente… 🙂

(¹) Em tempo, o Object-Oriented Assembly Language escrito por Len Dorfman e publicado pela Windcrest em 1990. Foi publicado no Brasil pela Makron Books sob o título de Linguagem Assembler Orientada para Objetos no ano de 1992.

Continuar lendo

Orientação a objetos em Ruby, o básico

ruby_oop

Acreditava já ter escrito isto mas procurei e descobri justamente o contrário. Então, vamos lá. Diferente da versão 5 do Perl e do PHP a linguagem Ruby já foi criada com o paradigma da orientação a objetos implementado o que afeta diretamente a estrutura da linguagem, o modo como trabalhamos com variáveis etc.

E assim, tal qual fiz com Perl (versão 5, ainda não brinquei com rakudo) e PHP, o mínimo necessário para se trabalhar com classes de objetos em Ruby é mais ou menos isto…

Continuar lendo

Orientação a objetos em PHP, o básico

php_oop

Já que resolvi montar um guia para o Perl, acredito que não vá custar muito fazer o mesmo com PHP e outras linguagens. No final até ficam como uma boa referência no caso de (eu ou mais alguém) precisar fazer uma consulta rápida.

Ao contrário do que acontece no Perl em que as coisas parecem estar “amarradas” para funcionar daquele jeito, em PHP tudo parece mais ajeitado na parte da orientação a objetos e tendo até palavras reservadas e todo o resto para utilizar.

Então, o roteiro com o mínimo que você precisa saber/fazer em PHP é mais ou menos assim…

Continuar lendo

Orientação a objetos em Perl, o básico

oo_perl5

Nos comentários finais sobre o gerador de patches IPS citei o fato do código usar orientação a objetos mas não entrei em muitos detalhes. Agora é momento para complementar com mais informação.

Bem, na minha opinião, a orientação a objetos em Perl não parece a coisa mais bonita de se ver e a sensação que deixa é de que tudo apenas foi “amarradas” para funcionar daquele jeito. Isto é, ao menos em Perl 5, em Perl 6 as coisas estão completamente diferentes mas não tive tempo de estudar com calma.

Porém, digamos que você não tem lá muita opção e precisa juntar programação orientada a objetos com Perl 5. Então o roteiro com o mínimo que você precisa fazer é mais ou menos assim…

Continuar lendo