quinta-feira, 24 de junho de 2010

Domine os fundamentos e não as ferramentas

Nesta última quarta-feira, tive mais um dia no treinamento de Agile com o Vinicius Morgado. Na ocasião discutimos sobre Domain Driven Design, dentre vários pontos positivos do treinamento, posso destacar:
- Design incremental - Nosso primeiro modelo é necessariamente imperfeito e trata-se apenas de uma abordagem exploratória, sem necessidade de muito detalhamento, o detalhamento é realizado com o tempo a medida em que se explora e conhece o modelo. De forma incremental. ;)
- O código deve ser a representação exata do modelo. O programador deve olhar o código e ver o modelo, olhar o modelo e ver o código, como se fossem um único artefato.
- Em DDD, uma entidade é definida pela sua identidade e um VO é definido pelo seu valor
- É desejável que os VO's sejam imutáveis, ou seja, se precisar mudar o valor de um VO, elimine-o e crie um novo.

Durante o treinamento, fizemos um modelo de alto nivel baseado em um estudo de caso, desenvolvendo o pensamento de forma orientada ao dominio. A aula foi bem interessante com todos estes tópicos nos agregando bastante conhecimento e mais importante que isso, agregando valor. Porém eu gostaria de destacar e compartilhar com vocês, uma frase do Vinicius durante a aula.

"Olhe as mudanças pelo aspecto do fundamento, não pelas ferramentas."

Essa frase surgiu durante uma discussão a respeito das evoluções tecnológicas que nossa área sofre. É interessante olhar pela ótica do fundamento, pois como ele bem ressaltou, o fundamento não muda a cada ano ou a cada semestre, na verdade as ferramentas mudam bastante mas continuam girando em torno dos mesmos fundamentos ou pelo menos em fundamentos que sofrem poucas mutações.
Acho interessante termos consciência desta ótica pois as vezes temos a sensação de que quando acabamos de aprender XPTO, sai o XPTO 2.0.

Apesar de ja ter percebido isso há algum tempo, nunca tinha conseguido explicitar isso de forma tão clara como o Vinicius o fez nessa frase, portanto, fiquem com esta mensagem na cabeça. Procure enriquecer seu conhecimento no fundamento e não apenas na ferramenta. Procure por Orientação a Objetos, Design Patterns, Agile(Em sua essência), SOA etc... enfim... estude, pratique, se dedique, DOMINE!!! Os fundamentos, os conceitos e não apenas as ferramentas.

Um grande abraço a todos.

Nenhum comentário:

Postar um comentário