Para nós, no Brasil, existe um enorme problema que só me caiu a ficha por causa da discussão nos comentários do meu artigo que mencionei acima. A reclamação foi que traduzi “Design Patterns Standards” como “Padrões de Design”. O Ronald, que fez a reclamação, levantou o ponto correto, as palavras em inglês: “default”, “standard” e “pattern” todas traduzem para a mesma palavra “padrão” em português.
Mas as 3 palavras tem significados muito diferentes:
Default – uma opção pré-selecionada adotada por um programa de computador ou outro mecanismo quando nenhuma outra alternativa é especificada pelo usuário ou programador. Exemplo: o “default” é 50 linhas
Pattern – 1) um design decorativo repetitivo (como em “patterns” de cor numa roupa). Um arranjo ou sequência regular em objetos comparáveis ou eventos. Uma forma regular e inteligível ou sequência discernível em certas ações ou situações. 2) um modelo ou design usado como um guia em bordado ou outras atividades artesanais.
Standard – 1) um nível de qualidade ou realização. Um nível requerido ou concordado de qualidade ou realização. 2) uma idéia ou coisa usado como medida, norma, ou modelo em avaliações comparativas. Princípios de conduta informado por noções de honra e decência. Uma forma de linguagem que é amplamente reconhecida como a forma correta. Resumindo:
Default – uma escolha pré-selecionada quando nenhuma outra é selecionada.
Pattern – um modelo que pode ser observado como recorrente, sem valor de certo ou errado.
Standard – uma norma, algo que todos concordam como base de comparação ou requerimentos mínimos a serem seguidos. O problema é que a palavra “padrão”, em português, é usado muito mais com o sentido de “standard”. E muitas vezes o que estamos traduzindo é a palavra “pattern”.
Ou seja, quando alguém fala “Design Pattern” estamos falando somente que existe uma “forma” que é usada com mais frequência do que outras na resolução de problemas de software. Ela não é necessariamente a mais correta, não existe afirmação dizendo que é a forma conclusiva. Apenas a observação de que ela é frequente, regularmente usada. A imagem a seguir são padrões, no sentido de “patterns” (“mais patterns”):
Mas traduzindo para “Padrões de Design”, fica a impressão do sentido em português da palavra “padrão” no sentido de que é a forma mais correta ou minimamente correta e que, sendo uma “norma”, deveria ser a seguida. A tradução “padrão” fica parecido com “obrigação de seguir o padrão Portaria nº 288/2005″, no sentido de “obrigação de seguir a norma ou regulamento Portaria nº 288/2005″ e aí “Design Patterns” ganha conotação de norma ou regulamento, que é exatamente o sentido errado! Pattern é Pattern, Standard é Standard, são coisas completamente diferentes.
E esse é o problema que muitos de nós discute em termos de entendimento. Quem entendeu corretamente Design Patterns no sentido de “Pattern” reclama de quem entendeu no sentido de “Standard”. Ambos traduzem como “padrão”. E então fica claro porque uma discussão entre essas duas pessoas fica parecendo conversa de louco: “Mas isso é só um padrão (pattern), não é pra ser seguido obrigatoriamente.” – “Não! Isso é um padrão (standard), por isso precisa ser seguido obrigatoriamente!”
Observação: notei que algumas pessoas não gostaram muito do título, mas eu coloquei deliberadamente assim para realmente chamar a atenção ao assunto. Claramente não estou afirmando que a língua portuguesa é essencialmente ruim e outras são melhores, toda língua sempre tem nuances e diferenças que dependem do contexto, da cultura local, dos coloquialismos, neologismos, moda e assim por diante. Justamente por isso temos que estar sempre atentos para não entender as coisas ao pé da letra e aplicar sem pensar partindo de premissas falsas.