Você está na página 1de 2

TI SOFTWARE

P G?
B
A Programao Orientada a Gambiarras sai da prtica cotidiana para se eternizar numa metodologia hilria
Tem algum programador rindo por perto? Pode apostar que por conta
da POG, a Programao Orientada a Gambiarras. Aquele trechinho de cdigo meio porco que fez o software funcionar e provocou a risada pura POG. Claro que as gambiarras so to velhas quanto a computao. O novo a dedicao dos colaboradores da Desciclopdia, a enciclopdia online livre de contedo, em produzir uma metodologia POG que seja reconhecida pelo mundo acadmico. Os textos e suas ilustraes so de rolar de rir. Veja alguns deles aqui.
CREATIVE COMMONS. ESTAS PGINAS TM LIVRE ACESSO NO ENDEREO WWW.INFO.ABRIL.COM.BR/EDICOES/251/POG.SHL.

Saca a

||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||

MEGA ZORD
Programadores dos anos 1980 o conhecem como Daileon. Semelhante ao padro Lone Wolf. Motivo: criar vrias funes, cada uma executando um passo de um algoritmo, causa lentido no sistema por este ter de interromper seu uxo para cham-las. Esse problema pode ser resolvido com uma nica e gigante guerreira funo, que recebe vrios parmetros que deniro o que dever fazer. Geralmente usado em conjunto com Nonsense Flag.

MTODO MACGYVER
um avanado mtodo de criao de sistemas no qual o programador (ou gambiarrizador), de posse de recursos e informaes limitadas, consegue desenvolver um complexo sistema por completo e em questo de horas. O mtodo recebe esse nome pois, fazendo-se um comparativo com o mundo cotidiano, equivalente a pegar um sabonete, um clipe e um chiclete e, com esses ingredientes, construir uma bomba atmica, metodologia exaustivamente utilizada por MacGyver. Sua principal caracterstica a de ser infalvel, no importando as condies e o tempo disponvel. O Mtodo MacGyver indispensvel em qualquer projeto POG.

DEFINIO DE POG
A POG Programao Orientada a Gambiarras ou WOP WorkaroundOriented Programming um paradigma de programao de sistemas de software que integra-se perfeitamente a qualquer grande padro de programao atual. uma evoluo natural do uso do Programa Bacalhau, tambm conhecido como ATND Artifcio Tcnico No Documentado , e vem da antiga expresso brasileira Para quem , bacalhau basta (poca em que o peixe seco ainda era barato). Programadores preocupados em usar buzzwords utilizam o termo workaround para impor respeito. Para que um desenvolvedor possa exercer a Programao Orientada a Gambiarras, so necessrios alguns fatores especcos, facilmente encontrados em ambientes de desenvolvimento (veja quadro ao lado). Reunidos, esses fatores transformam o programador em gambiarrizador, espcie mais evoluda.
58 INFO | FEVEREIRO 2007 | WWW.INFO.ABRIL.COM.BR

FATORES FAVORVEIS POG B Sistemas originalmente mal projetados B Clientes chatos B Usurios chatos B Falta de vontade B Falta de tempo B Gente que pensa que DBA (normalmente so pessoas chatas, gordas, feias, sem certicao nenhuma e que pararam no tempo) B Arquiteto de software achando que o mximo (normalmente pessoas, altas, loiras, chatas, arrogantes e metidas a sabe-tudo) B Trmino do estoque de caf/ch B Aproximao do nal da tarde B Vspera de feriado/m de semana B Ter o Jackie Chan como chefe B Ter o MacGyver como coordenador de projeto (ver Mtodo MacGyver) B Governo defecando regras ou MPs que entrem em vigor imediatamente sem dar tempo de atualizar sistemas B Requisitos dinmicos

MACGYVER Heri desarmado de seriado de TV dos anos 1980

BCDR PATTERN
O Black Cat in a Dark Room Pattern (padro gato preto em um quarto escuro) consiste na criao de mtodos que recebem um Map s como parmetro. O argumento que voc precisa est no Map, mas no sabe exatamente onde. Esse padro permite passar quantos argumentos forem necessrios a um mtodo, sem poluir o cdigo. Permite criar mtodos cujas assinaturas seriam, de outra forma, extremamente longas (vide padro Generic Processor). Evita a alterao de assinaturas de mtodos no momento da manuteno do cdigo, tornando desnecessrio qualquer tipo de refactoring.

|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||

LONE WOLF
Tambm conhecido por Highlander (s pode haver um), esse a boa e velha classe-faz-tudo. O sistema todo est concentrado numa classe procedural que faz tudo, geralmente usando o padro Static Spree.

NONSENSE FLAG
Por um legtimo impulso gambiarrizador solucionador de problemas, o programador salpica um monte de variveis com nomes sensacionais como newCounter2, jaTrocouDeAba, passouPorAqui, numeroMagico, naoAchou etc.

||||||||||||||||||||||||||||||||||||||||||

A BBLIA Best-seller da O'Reilly no mercado brasileiro. Note o animal tipicamente nacional: a anta

PPOG B Princpios da POG comentados


SE FUNCIONA, ENTO T CERTO Acoplado ou no, txt ou sql, mil funes ou dez, design patterns... Nada disso tem valor para o usurio, que s precisa de um software funcional. O termo escalvel falacioso. DEIXE O AMANH PARA AMANH Muitos programadores atrasam projetos, alegando que a demora de uma implementao para seguirem regras de design patterns ou comentrios que ajudaro outros desenvolvedores a entender melhor o cdigo. Deixe o amanh para o ot... err... COMENTRIOS SO PARA AMADORES Um desenvolvedor deve ser treinado para ser uente na linguagem de programao que utiliza, sem precisar dos comentrios, no importando a conseqente runa de sua vida social. Isso tambm conhecido como stimo sentido. F EM DEUS A informtica levianamente denida como cincia exata, quando, na verdade, uma cincia holstica. Vrios casos reais de Divina Providncia foram testemunhados em ambientes is aos princpios POG, espritos ruins foram exorcizados, e a paz instalou-se graas f dos gambiarrizadores. 1337 H4X0R5 DUD3 LOL Quanto menos legvel, mais respeitado o cdigo . Conseqentemente, menos alterado ele ser, e muito mais estvel o sistema car. A OCASIO FAZ O LADRO Em determinados momentos no conseguimos escapar dessa mxima. CAPACIDADE DE ABSTRAO O programador deve abstrair tudo o que lhe faa perder tempo, como regras de negcio desnecessrias ou tratamento de erros. C.H.U.T.E Concluso Hipottica Universal Tcnica Explicativa Quando nenhum dos outros conceitos se aplica, utiliza-se esse at funcionar ou o programador jogar a toalha no cho. MURPHY Para lidar com Murphy e seu exrcito s com POG. Murphy sagaz e ligeiro, t s esperando voc dar mole. Nada mais rpido do que uma gambiarrazinha pra acertar o que a lei de Murphy destri.
1

PROGRAMA BACALHAU
O Programa Bacalhau comeou em 1960, quando Juscelino Kubitschek, com sua doutrina de desenvolvimentismo, resolveu dar o primeiro passo rumo futura ERP. Naquele ano, as frotas de pesca do bacalhau estavam decrementando, pois o estado do bacalhau era undened. Assim, com cartes perfurados e um disco magntico RAMAC, desenvolveram-se as primeiras tcnicas de POG num bureau de servios, que determinava as cotas mximas da pesca. Para evitar que o bacalhau fosse escondido na cueca dos pescadores, marcava-se nos cartes perfurados o peso deles antes e depois da pesca. Em seguida, os cartes eram recolhidos e cavam em spool at todos serem processados.

EDWARD A. MURPHY JR. Enunciou a Lei de Murphy durante um teste da NASA

FOTOS 1 DIVULGAO 2 LUIS MORAIS

WWW.INFO.ABRIL.COM.BR | FEVEREIRO 2007 | INFO 59

Você também pode gostar