Aperfeiçoando o desenvolvimento

Dicas para se tornar um
profissional melhor

Jean Carlo Emer
Jun 6, 2015 · 2 min read

Estar junto de desenvolvedores mais experientes é um ótimo termômetro para destacar aquilo em que você precisa se aperfeiçoar. Este breve texto trata de duas disciplinas que tenho dedicado boa parte do meu tempo.

Domínio de teorias

Teoria da computação, Linguagens Formais e Compiladores são essenciais e vão salvar seu tempo de cair em velhas armadilhas. Poder computacional e possibilidade de processar HTML com expressões regulares já possuem provas científicas datadas. Existem bons cursos na Internet que apresentam estas e muitas outras disciplinas teóricas.

Conhecer Modelos e Paradigmas de Linguagens é essencial para apoiar sua escolha de linguagens de programação e técnicas de escrita de código. Novas ferramentas e recursos vão surgir a todo momento e o primeiro passo para sua adoção é interpretar qual o escopo de problemas e abordagens de solução que propõem.

Reservar um tempo para estudos irá ajudar a manter sua mente aberta a novas tecnologias e reforçar aprendizados passados. É sempre um bom exercício revisitar documentações e ler as evoluções — changelogs — das tecnologias que utiliza no seu dia-a-dia.

Aprendendo a abstrair

A principal tarefa de um programador é reconhecer um problema e encontrar uma solução. Participar de maratonas de programação é uma ótima maneira de aperfeiçoar esta habilidade. Mas note que desenvolver vai muito além de programar.

A correta escolha das abstrações envolve desde o conhecimento do domínio do problema até a aplicação de design patterns. É bastante conveniente adotar MVC para iniciar desenvolvimento de uma aplicação Web, por exemplo. Porém, com o amadurecimento da aplicação ou mesmo para um domínio de problema mais específico, outras abstrações se farão necessárias.

Decidir o quanto um modelo pode ganhar código ou reconhecer que determinada interação entre objetos exige uma abstração intermediária não é tarefa fácil. O entendimento total do domínio do problema e uma visão de evolução do projeto são requisitos para um bom trabalho. Abstrações demais ou de menos serão notadas apenas no futuro quando o domínio do problema precisar ser ampliado.

Inspecionar o código de projetos populares ajuda a aprimorar esta habilidade. Aprender a identificar abstrações e reconhecer níveis de interação entre estas é o que irá garantir um código com baixo acoplamento e alta coesão.


Muitas outras disciplinas são necessárias para se tornar um bom desenvolvedor, mas reconhecer a importância do domínio de teorias e abstrações são traços em comum dos melhores desenvolvedores que conheço.

Tableless

Um lugar para ler e discutir sobre desenvolvimento, design, web semântica, back-end e outros assuntos relacionados a web. Se você quiser publicar artigos conosco, envie um email: medium[at]tableless.com.br ou *clique no link* http://bit.ly/escreva-tableless-medium

 by the author.

Jean Carlo Emer

Written by

Web craftsman and magician of computer machines.

Tableless

Tableless

Um lugar para ler e discutir sobre desenvolvimento, design, web semântica, back-end e outros assuntos relacionados a web. Se você quiser publicar artigos conosco, envie um email: medium[at]tableless.com.br ou *clique no link* http://bit.ly/escreva-tableless-medium

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade