Programação Orientada a Gambiarras

abril 30, 2007

Gambi Design Patterns

Segundo a Wikipédia, Gambiarra é o nome dado informalmente ao procedimento necessário para a configuração de um artefato improvisado. Em outras palavras, é tudo aquilo que é de difícil concepção, de inesperada execução para tornar fácil o uso de algo que sequer deveria existir.

A Programação Orientada a Gambiarras (POG) é um paradigma de programação de sistemas de software que integra-se perfeitamente a qualquer grande Paradigma de Programação atual.

Para que um programador possa exercer a POG são necessários alguns fatores específicos, facilmente encontrados em ambientes de desenvolvimento, tais como sistemas mal projetados, usuários chatos, falta de tempo, aproximação do final da tarde, ter o Jackie Chan como chefe, dentro outros.

Reunidos, todos estes fatores transformam o programador em um gambiarrizador, espécie mais evoluída de programador, que possui curva de aprendizado e produtividade muito mais altas.

Estudos recentes mostram que os programadores que evoluem para gambiarrizadores vivem melhor. Tudo pelo fato de que, enquanto transformados em gambiarrizadores, eles entram em um estado alfa, onde tudo na vida funciona.

Alguns dos principais princípios da POG são, principalmente:

  • Se funciona, então tá certo – Acoplado ou não, mil funções ou 10, padrões de projeto… Nada disso tem valor para o usuário, que só precisa de um software funcional. O termo “escalável” é falacioso.
  • Murphy – Para lidar com Murphy e seu exército só com POG. Murphy é sagaz e ligeiro, tá só esperando você dar mole. Nada mais rápido do que uma gambiarrazinha pra acertar o que Murphy destrói.
  • Comentários são para amadores – Um desenvolvedor deve ser treinado para ser fluente na linguagem de programação usada sem precisar de comentários, independente da conseqüente ruína de sua vida social. Isso também é conhecido como sétimo sentido.
  • Fé em Deus – A informática é levianamente definida como ciência exata, quando esta é na verdade uma ciência holística.
  • 1337 h4x0r5 dud3 lol – Quanto menos legível, mais respeitado o código é. Conseqüentemente menos alterado ele é, e mais estável o sistema fica, garantindo a empregabilidade do gambiarrizador.
  • Capacidade de Abstração – Este conceito se baseia em focar-se no problema e desconsiderar conceitos e dados desnecessários para atingir o objetivo, ou seja, o Programador deve abstrair tudo que lhe faça perder tempo como regras de negócio desnecessárias ou tratamentos de erros.

Para mais detalhes, como o catálogo dos Gambi Design Patterns, ou Padrões de Projeto Gambi, exemplos e prazos de um projeto POG, visite a página na Desciclopédia.

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: