Por que é tão importante usar os padrões de projeto?
May 6th, 2008Praticamente todos os programadores já tiveram dores de cabeça quando pegaram códigos feitos pelos outros, principalmente aqueles códigos que estão cheio de gambiarras. Isso ocorre quando algum programador escreve um código sem nenhum tipo de padrão, ele escreve como ele acha melhor.
Aqui neste post eu não vou ensinar a usar os padrões de projeto, mas sim como eles são importantes.
Exemplos de padrões no dia a dia:
Exemplo 1:
Quando você vai apertar um parafuso, você sabe que se girar para o sentido horário, vai estar apertando. E para afroxar? Sentido anti-horário. Isso parece obvio, porque você aprendeu isso desde criancinha que é assim que funciona. Imagina se cada fabricante de parafuso definisse um mecanismo diferente para apertar ou afroxar? Se para apertar fosse girar 3x para o sentido horário e 5x para anti-horário, ou alguma outra forma? Com certeza todo mundo iria ficar doido para cada parafuso que encontrasse.
Exemplo 2:
Sinalização de transito, é um padrão internacional que o sinal vermelho é de “parar”, sinal verde é de “siga”, imagina se todos os paises definissem um modo diferente, ou com cores diferentes? Ou pior, se cada prefeito definisse um padrão diferente? Não ia dar muito certo ou então teríamos que decorar um monte de padrões de sinalização.
Isso acontece também com um código de programação, se cada programador definir um padrão diferente, quando outro programador precisar alterar o código com certeza ficará maluquinho.
Vantagens:
- O código fica mais simples, tanto para o próprio programador e tanto para outros.
- Quando um projeto é feito em equipe, cada membro pode fazer a sua parte do código, que depois as chances de se encaixar são quase 100%.
- No reuso do código fica mais simples, por que os padrões podem ser aplicadas em diversos tipos de problemas.
É claro que você pode criar um padrão seu, no entanto, essa maneira não é a mais eficiente, pois um padrão de projeto representa o trabalho criado por uma outra pessoa que passou pelos mesmos problemas. Dessa forma você estaria reinventando a roda.
Com isso existem alguns padrões:
Padrões de criação:
- Abstract Factory
- Builder
- Factory Method
- Prototype
- Singleton
Padrões estruturais:
- Adapter
- Bridge
- Composite
- Decorator
- Façade
- Flyweight
- Proxy
Padrões comportamentais:
- Chain of Responsability
- Command
- Interpreter
- Iterator
- Mediator
- Memento
- Observer
- State
- Strategy
- Template Method
- Visitor
Em breve poderei falar sobre os padrões mais utilizados.
Leave a Reply
You must be logged in to post a comment.