Este é um post baseado em citaçes do livro “Mastering Machine Learning with Python in Six Steps” do cientista de dados Manohar Swamynathan.
-
Bonito é melhor do que feio - seja consistente.
-
Complexo é melhor do que complicado - use bibliotecas existentes.
-
Simples é melhor do que complexo - mantenha-o simples e estúpido (keep it simple and stupid, KISS).
-
Flat é melhor do que aninhado - evite
if's
aninhados. -
Explícito é melhor do que implícito - seja claro.
-
Disperso é melhor do que denso - separe o código em módulos.
-
A legibilidade é valiosa - use identação para facilitar a leitura e o entendimento.
-
Os casos especiais não são especiais o suficiente para quebrar as regras - tudo é um objeto.
-
Os erros nunca devem ser transmitidos silenciosamente - tenha um bom manipulador de exceções.
-
Contudo, a praticidade supera a pureza - se necessário, quebre as regras.
-
Silenciamento explícito - registro de erros e rastreabilidade.
-
Em situações de ambiguidade, evite a tentação de adivinhar - a sintaxe de Ruby é mais simples; no entanto, muitas vezes podemos demorar mais tempo para compreendê-la.
-
Embora dessa maneira não seja óbvio no começo, a menos que você seja holandês - não há apenas uma maneira de conseguir algo.
-
Deve haver preferencialmente apenas uma maneira óbvia de fazê-lo - use bibliotecas existentes.
-
Se a implementação é difícil de explicar, é uma má ideia - se você não pode explicar em termos simples, então você não entende bem o suficiente.
-
Agora é melhor do que nunca - há maneiras rápidas/sujas de fazer o trabalho em vez de tentar demais para otimizar.
-
Embora nunca seja geralmente melhor do que agora - embora exista uma maneira rápida/suja, não siga o caminho que não permitirá uma maneira graciosa de melhorar o que foi feito.
-
Namespaces são uma ótima ideia, então vamos fazer mais deles! - seja específico.
-
Se a implementação é fácil de explicar, pode ser uma boa ideia - simplicidade.
Referência
— https://www.amazon.com/Mastering-Machine-Learning-Python-Steps/dp/1484228650