Articles of design

Use GOTO ou não?

Atualmente estou trabalhando em um projeto em que as instruções goto são usadas com eficiência. O principal objective das instruções goto é ter uma seção de limpeza em uma rotina, em vez de várias instruções de retorno. Como abaixo: BOOL foo() { BOOL bRetVal = FALSE; int *p = NULL; p = new int; if […]

tabela fixa única com várias colunas versus tabelas abstratas flexíveis

Eu queria saber se você tem um site com uma dúzia de diferentes tipos de listagens (lojas, restaurantes, clubes, hotéis, events) que exigem campos diferentes, há uma vantagem de criar uma tabela com colunas definidas como assim Exemplo de loja: shop_id | name | X | Y | city | district | area | metro […]

Usando -1 como um valor de sinalizador para tipos não assinados (size_t)

Eu estava usando -1 como um valor de sinalizador para uma function cujo tipo de retorno é size_t (um tipo não assinado). Eu não percebi isso no começo, particularmente porque não estava causando nenhum erro no meu código (eu estava checando com x == -1, não x <0). Existem algumas razões sutis que eu não […]

Design de motor de jogo baseado em componentes

Tenho estado a olhar para o design de motor de jogos (especificamente focado em motores de jogos 2D, mas também aplicável a jogos 3D), e estou interessado em algumas informações sobre como fazê-lo. Ouvi dizer que hoje em dia muitos mecanismos estão se movendo para um design baseado em componentes, em vez da tradicional hierarquia […]

Por que usamos a interface? É apenas para padronização?

Por que usamos a interface? É apenas para padronização?

Herança baseada em protótipo vs.

Em JavaScript, todo object é ao mesmo tempo uma instância e uma class. Para fazer inheritance, você pode usar qualquer instância de object como um protótipo. Em Python, C ++, etc., existem classs e instâncias, como conceitos separados. Para fazer inheritance, você precisa usar a class base para criar uma nova class, que pode então […]

Strings como chaves primárias no database SQL

Eu não estou muito familiarizado com bancos de dados e as teorias por trás de como eles funcionam. É mais lento do ponto de vista do desempenho (inserir / atualizar / consultar) para usar Strings for Primary Keys do que inteiros?

Quantos parâmetros são muitos?

Rotinas podem ter parâmetros, isso não é novidade. Você pode definir quantos parâmetros precisar, mas muitos deles dificultarão sua compreensão e manutenção. É claro, você poderia usar uma variável estruturada como solução: colocar todas essas variables ​​em uma única estrutura e passá-la para a rotina. De fato, o uso de estruturas para simplificar as listas […]

Convertendo muitas declarações ‘if else’ em uma abordagem mais limpa

Meu código aqui detecta se o mimeType é igual a algum tipo MIME , se for, ele fará uma certa conversão public void convertToMp3(File src, File target,String mimeType){ if(mimeType.equals(“audio/mpeg”)){ … }else if(mimeType.equals(“audio/wav”)){ mp3ToWav(); }else if(mimeType.equals(“audio/ogg”)){ … }else if(…){ … //More if and else here } Eu encurtei o meu código, porque tem muito mais se […]

Por que Java tem um erro de compilador de “instrução inacessível”?

Muitas vezes eu acho que ao depurar um programa é conveniente (embora seja uma prática indiscutivelmente ruim) inserir uma declaração de retorno dentro de um bloco de código. Eu poderia tentar algo assim em Java …. class Test { public static void main(String args[]) { System.out.println(“hello world”); return; System.out.println(“i think this line might cause a […]