Eu diria que muitos de nós não escrevemos código limpo . E geralmente, esse não é o nosso trabalho . Nosso trabalho como desenvolvedores de software é entregar um produto que funcione no prazo.
Lembro-me da postagem no blog de Joel Spolsky: The Duct Tape Programmer .
Ele cita Codificadores no trabalho :
At the end of the day, ship the f*****g thing! It’s great to rewrite your code and make it cleaner and by the third time it’ll actually be pretty. But that’s not the point—you’re not here to write code; you’re here to ship products. - Jamie Zawinsky
Também me lembro de resposta do blog de Robert Martin :
So. Be smart. Be clean. Be simple. Ship! And keep a small roll of duct tape at the ready, and don’t be afraid to use it. - Uncle Bob
Se o código, um desenvolvedor escreve, está limpo e funciona (é entregável), então seja bom para todos. Mas se um desenvolvedor está tentando fazer um código limpo e legível às custas de ser capaz de entregá-lo em tempo hábil, então isso é ruim. Faça funcionar, use fita adesiva e envie-a. Você pode refatorá-lo mais tarde e torná-lo super lindo e eficiente.
Sim, é uma boa prática escrever código limpo, mas nunca às custas de ser capaz de fornecer. O benefício de entregar um produto com fita adesiva no tempo supera em muito os benefícios de um código limpo que nunca foi concluído e entregue.
Um bom pedaço de código que eu encontrei não é limpo. Alguns são francamente feios. Mas eles foram todos liberados e usados na produção. Alguns podem dizer que não é profissional escrever código confuso. Discordo. O profissional é entregar o código que funciona, seja ele limpo ou confuso. O desenvolvedor deve fazer o melhor que puder, dado o tempo que foi alocado antes da entrega. Então, volte para limpar - isso é profissional. Espero que o código entregue não seja fita adesiva pura e esteja "limpo o suficiente".