como-programar-jogos,

Como ser um programador de jogos: Mantenha tudo simples

Bruno Cicanci Bruno Cicanci Seguir 12 de Maio de 2014 · 1 min de leitura
Como ser um programador de jogos: Mantenha tudo simples
Compartilhe

Esta semana li este comentário que me inspirou a escrever este post, que é a frase famosa “Keep it simple, stupid”, algo como “Mantenha simples, idiota” em tradução literal.

Muitas vezes buscamos programar a melhor solução possível para um problema, mas muitas vezes o problema não requer uma solução complicada. Por exemplo, não é necessário programar um algoritmo de ordenação complexo para ordenar uma lista que sempre será pequena, neste caso vale a pena usar algo mais simples.

O Brian Kernighan, explicou a frase “Keep it simples, stupid” da seguinte forma: debugar um código é duas vezes mais complexo do que escrevê-lo. Sendo assim, se você escrever o melhor código possível, você mesmo não será capaz de debugá-lo. Faz sentindo, não?

“Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.”

Brian Kernighan

Quanto maior for a complexidade, mais difícil será entender algum bug no código. Por isso, mantenha seu código com baixa complexidade e sempre pense em como debugar enquanto programa, isso ajuda a identificar problemas e prevenir código complexos.

Uma dica para simplificar um código é quebra-lo em métodos e funções, pois assim você deixa o código reusável e mais simples de entender e debugar. Existem outras formas de simplificar um código, está é uma das mais básicas e usadas.

Outra dica é ler livros que ensinam programar e também boas práticas, como Code Complete e Effective C++.

UPDATE

Dicas do leitor Lucas Oliveira:

Practical Object-Oriented Design in Ruby by Sandi Metz

Gostou do post?
Como muitos programadores, aprecio um bom café. Se curtiu este conteúdo, que tal me presentear com um café?
Bruno Cicanci
Escrito por Bruno Cicanci Seguir
Bacharel em Ciência da Computação e pós-graduado em Produção e Programação de Jogos. Atuo profissionalmente com desenvolvimento de jogos desde 2010. Já trabalhei na Glu Mobile, Electronic Arts, 2Mundos, Aquiris, e atualmente na Ubisoft em Londres. Escrevo neste blog desde 2009.