6 maneiras de fazer a mesma coisa, o que é considerado boas práticas?

As vezes tem tantas maneiras diferentes de fazer o mesmo código que nós ficamos na dúvida quanto a qual maneira usar. O que seria considerado "boa prática" pela comunidade e o que sua equipe entenderia melhor. Suponhamos que você esteja trabalhando dentro de um método de um Domain Service chamado UmDomainServiceChique(objetoDoDominio) que será chamado por uma API. Você tem uma regra de negócio chique para ser verificada que por enquanto chamarei de VerificaMinhaRegraChiqueComplexa(). Você chama UmDomainServiceChique(objetoDoDominio) e caso VerificaMinhaRegraChiqueComplexa() retorne true você vai querer que UmDomainServiceChique faça o que tem que fazer e a api retornar Ok 200, caso contrário você quer que a API responda um erro qualquer, tipo BadRequest, e retornar uma mensagem dizendo que VerificaMinhaRegraChiqueComplexa deu ruim. Eu vejo 6 maneiras de fazer isso, gostaria de saber a opinião de outrs devs sobre qual seria a maneira menos gambiarr

A alma do programador

Certa vez, no curso de pós graduação da FATEC-SP, um professor que eu admiro muito, ao ser interrogado sobre quando teria uma janela para reposição de uma aula, sacou seu smartphone para conferir sua agenda e disse:

" - Deixe-me primeiro consultar minha prótese cognitiva."

Interessante, ele considerava o seu celular como uma prótese cognitiva. Não sabia em que lugar ir ou quando ir se não fosse por ele, o celular.

Isso não é de todo ruim se você levar em consideração a filosofia geral que permeava a classe dos Samurais (Saburau ou Bushi) no Japão Feudal dos anos 1200 aproximadamente até 18xx (aproximadamente). Eles tinham um extenso e complexo código de ética/conduta verbal. Era o Bushido, ou caminho do Servidor.

Os Samurais eram, em sua maioria, militares de alta patente, guarda costas, juízes e executores. A maioria deles era muito bem versado nas artes marciais, mas também na poesia e na caligrafia. Todos eram guerreiros no sentido mais amplo da palavra, mas nem todos estavam envolvidos em guerras. Todos os guerreiros, soldados, generais do exército eram Samurais, mas nem todo Samurai era guerreiro. Como a palavra Samurai quer dizer "Servidor", a maioria era servidor público. (Não compare com os servidores públicos de hoje no Brasil).

Os Samurais consideravam sua ferramenta de trabalho (seja a espada para o guerreiro ou a pena para os burocratas) como uma extensão do próprio corpo, ou até mais do que isso, como sua alma. Um guerreiro que perdesse ou danificasse sua espada em uma luta poderia se considerar como se estivesse com um membro amputado, ou pior: um corpo sem vida, sem alma, uma casca vazia.

Ao dizer que meu celular, computador etc são minhas próteses cognitivas, estou afirmando que fazem parte do meu corpo, que são extensão dele. Se você considerar suas ferramentas de trabalho e sua capacidade de usá-las como parte do seu corpo, sua própria alma, você já deu o primeiro passo para se tornar exímio naquilo que faz.

Sim, meu computador é minha alma. Não o computador físico em sentido literal, esse que estou usando para digitar esse texto, mas sim qualquer computador que eu venha a usar, a minha capacidade de lidar com tecnologia, digamos assim.

A idéia é mais abstrata. Um Samurai, aristocrata, ordenava um ferreiro famoso confeccionar uma katana (espada longa) e muitos rituais e formalidades eram envolvidos no processo. A "espada" tinha "alma própria, vida".

Se você der alma, SUA ALMA, à sua ferramenta de trabalho, encontrará um caminho prazeiroso e recompensador.

Comentários

Postagens mais visitadas deste blog

Uso de memória no SQL Server

Busca de CEP com o Lazarus - Parte 1 - UrlEncode

Botão Add This para adicionar seu post em qualquer rede