Pular para o conteúdo principal

Dia 03 - "Seguindo em frente, estudando sempre e encarando desafios de cabeça erguida"

Olá devs! Sei que sumi um pouquinho aqui do blog, mas é que até nós, programadores de ferro, precisamos de um tempinho para relaxar e não pensar em códigos, não é mesmo? E não vou mentir, acabei não estudando nem dois minutinhos no final de semana, me deixando meio desanimado. Mas aí a vida me pregou uma peça e tive uma crise de ansiedade, então decidi voltar com tudo aos estudos!

Na semana passada, tracei um plano de estudos e comecei a colocá-lo em prática no Alura. A ideia era começar pelo básico e fortalecer a minha base em programação, mas confesso que deu um soninho... Acabei relendo os conceitos de herança, interfaces e polimorfismo e fui pulando para a parte de boas práticas e design patterns. E sabe o que aprendi? Nunca mais devo usar "elses" no meu código! Também aprendi dois conceitos incríveis: "Tell, don't ask" e "Fail Fast".

Mas hoje foi um dia de recomeço! Eu estava estudando SOLID no Alura, mas acabei dando uma pausa. E sabe o que fiz hoje? Voltei a estudar SOLID! É isso mesmo, meus amigos, não desisti! E isso me deu um gás para voltar aqui e compartilhar com vocês como tem sido a minha vida de programador.

Nos últimos dias, tive que encarar um trabalho chato de front-end, algo que não é lá a minha especialidade. Mas sabe o que fiz? Encarei de frente! E não é que deu certo? Fiquei um pouco frustrado, é verdade, mas o importante é que o time conseguiu desbravar um monte de coisas novas e seguir em frente.

Enfim, essa é a minha jornada como programador em desenvolvimento, com suas alegrias e frustrações. Mas o importante é seguir em frente, estudar sempre e encarar os desafios de cabeça erguida.

Ah, antes que eu me esqueça, quero compartilhar com vocês um dos conceitos que conheci: "Tell, don't ask". Esse conceito é uma forma de pensar sobre como escrevemos o nosso código, buscando deixá-lo mais legível e fácil de manter.

A ideia é que, em vez de perguntar para um objeto sobre seu estado e tomar uma decisão com base nessa resposta, devemos simplesmente dizer a esse objeto o que queremos que ele faça. Por exemplo, em vez de perguntar se um objeto está vazio e, em seguida, decidir o que fazer com base na resposta, devemos simplesmente dizer "esvazie esse objeto".

Isso pode parecer simples, mas acredite, faz toda a diferença na hora de escrever e manter um código limpo e organizado. Além disso, ao usar esse conceito, estamos também seguindo o princípio de responsabilidade única, que nos ajuda a escrever classes e métodos mais coesos e menos acoplados. Entendeu? Achei massa.

Outro conceito importante que aprendi é o "Fail Fast". Esse conceito se baseia na ideia de que, ao detectar um problema ou erro em nosso código, devemos falhar rapidamente, em vez de tentar continuar a execução e esperar que o problema seja resolvido em algum momento.

Isso significa que, ao encontrar um erro, devemos interromper imediatamente a execução do código e fornecer um feedback claro sobre o que deu errado. Isso nos ajuda a detectar e corrigir problemas mais rapidamente, além de evitar que erros se propaguem e causem problemas maiores.

Ao implementar o "Fail Fast", estamos também seguindo o princípio de defensividade, que nos ajuda a escrever código mais robusto e resistente a erros. Em vez de simplesmente ignorar ou contornar problemas, estamos lidando com eles de forma proativa, garantindo que nosso código funcione corretamente em todas as situações. O Legal é que logo depois de entender o conceito procurei situações nos códigos dos colegas para dar aquela cornetada nos PR review.

Mas é isso! Um abraço e até a próxima.


Imagem gerada por IA de uma jovem estudando programaçao


Comentários