image

Acesse bootcamps ilimitados e +650 cursos pra sempre

60
%OFF
Article image
Jonas Campos
Jonas Campos26/08/2024 09:37
Compartilhe

As metodologias de software: Falácias e reflexões sobre a melhor maneira de organizar o seu código

  • #MVC
  • #Orientação a objetos, classes e métodos
  • #Arquitetura de Sistemas

Fazer um software não é somente saber escrever códigos, é preciso ter conhecimentos abrangentes, na maioria das vezes que tem pouca ou nenhuma relação com tecnologia.

Fazer analogias é uma excelente maneira de consolidar um aprendizado. Neste artigo aparentemente desconexo com o tema de tecnologia, vou analisar brevemente uma falácia conhecida do público geral, que é sobre termos um cérebro primitivo em funcionamento em nossas cabeças. E depois fazer uma reflexão sobre nossas queridas (ou temidas) metodologias.

Ao contrário do que pensam a maioria das pessoas normais (e os coaches anormais que batem nesta tecla), nós não temos um 'cérebro reptiliano'.

A teoria de que temos um 'cérebro de réptil', veio de um estudo de 1960 conduzido pelo neurocientista Paul MacLean, e onde ele comparou cérebros de mamíferos e répteis, e postulou que as camadas de cérebro ao longo da evolução foram sendo sobrepostas. E o nosso cérebro seria a soma da camada do cérebro dos répteis, mais o sistema límbico (que controla as emoções) que foi desenvolvido nos mamíferos, mais o córtex frontal que contempla as funções cognitivas e de linguagem.

Mas... Estudos recentes discordam disso, pois o cérebro não é simplesmente como uma cebola em camadas, que cresceu em volta de um cérebro primitivo. A evolução não é uma simples adição onde vão se acrescentando novas estruturas mantendo-se outras. Nem segue a lógica de que animais mais antigos sejam mais básicos e que mais novos sejam mais complexos.

E qual a relação disso com a Arquitetura de software?

image

Eu não sei você, mas eu ouço essas pérolas com uma frequência maior do que a que seria saudável:

  • Orientação à Objetos é a melhor.
  • Use sempre o padrão Model View Controller.
  • Monolitos são ultrapassados.
  • Os software de hoje é que são complexos...

A única regra que me ajudou foi essa:

Não existe bala de prata.

image

Vai ter situações, que será necessário utilizar uma ou mais metodologias. E refatorar sistemas antigos com novas arquiteturas ou paradigmas, ou construir aplicações novas utilizando tecnologias que todos dizem ser obsoletas. Todo sistema deve atender a um propósito, e às vezes um script que roda localmente resolve o problema que você ou seu cliente tem. Existem muitas metodologias e arquiteturas. Saiba de modo geral algumas delas, mas não fique apegado a isso.

Conforme você for utilizando, verá que não é tão complicado como algumas pessoas fazem parecer. Já trabalhei com sistemas legados que foram tão bem planejados e sistemas modernos com tanta coisa desnecessária que fiquei com a sensação que às vezes as pessoas inserem funcionalidades só para usar as tecnologias da moda.

Assim como na evolução do nosso cérebro, sistemas legados podem ser muito mais complexos do que nossas modernas aplicações que nos orgulhamos de escrever com menos linhas, mas que utilizam-se de bazucas para matar pernilongos.

Nosso cérebro não é reptiliano. Mas achar que somente a sua metodologia, a sua linguagem, a sua faculdade, a sua empresa e a sua cor são a melhor prova que possuímos com certeza cérebro primata.

Artigo que me inspirou a escrever isso:

HOWARD HINCHLIFFE, in BBC Science Focus Magazine. MYTHBUSTER. 20 August 2024.

Compartilhe
Comentários (0)