Encapsulamento com Properties em Python

dez 05 2009 Published by under linguagens de programação,python

Properties representam uma forma elegante de encapsulamento de atributos em Python, que permite trabalhar sem a necessidades de métodos getters e setters. Utilizando properties, é possível fazer o seguinte código acessar métodos getters e setters, de forma implícita encapsulada: Continue Reading »

No responses yet

Singleton em Python

ago 24 2009 Published by under desenvolvimento de softwares

Pra começar, eu sei que Singleton é um anti-pattern em muitos casos. E que seu uso não é muito aconselhável. Antes de usar Singleton, pense bem se você realmente precisa dele! ;D

Singleton é um anti-padrão de projeto usado para restringir a instanciação de uma classe para apenas um objeto. É a garantia que em todo o seu projeto/software/programa existe apenas uma instância de uma determinada classe. Continue Reading »

No responses yet

PyUnit & Test-driven development (TDD) na prática

jul 26 2009 Published by under desenvolvimento de softwares

Sempre bom ver um pouco de TDD na prática. É sempre muito chato ver um exemplo de como fazer testes unitários usando uma função de soma. Parece que algo não está conectando…

Vamos então criar uma função chamada gerar_cpf, como o nome indica, esta função gera um CPF válido. Será necessário mudar um pouco o paradigma. Let’s TDD: especificação do requisito, construção do test case e, então, elaboração da(s) função(ões). Continue Reading »

3 responses so far

Testes unitários com PyUnit

jul 24 2009 Published by under desenvolvimento de softwares

TDD (Test Driven Development, desenvolvimento orientado a testes) é sempre um assunto recorrente. E um dos recursos do TDD é o teste unitário.

Vamos tentar pensar um pouco TDD desenvolvendo uma rápida calculadora com apenas uma operação: soma. Vamos então programar nossa função de soma? Não, ainda não. Continue Reading »

No responses yet

Java como metalinguagem

jul 20 2009 Published by under desenvolvimento de softwares

No último post apresentei um pouco de metaprogramação. Na introdução do post, vemos que uma metalinguagem é uma linguagem usada para construir metaprogramas, e que a capacidade de uma linguagem comum atuar como metalinguagem é chamada reflexão.

Neste post, vou abordar um pouco de reflexão em Java, como fazer isso e quão útil isso pode ser. Toda a API de reflexão do Java está no pacote java.lang.reflect. Temos alguns conceitos básicos sobre esta API: Continue Reading »

One response so far

Reflection: Acertando o avião em pleno voo

jul 18 2009 Published by under desenvolvimento de softwares

Um dos recursos mais legais de programação, é o recurso de metaprogramação! =D Mas uma coisa que sempre rola na internet é a questão: “qual o nome correto: reflexão, introspecção ou metaprogramação?”. Basicamente, faz algum sentido para os três existirem, não? Continue Reading »

One response so far

Next »