http://blog.goyello.com/2013/05/17/express-names-in-code-bad-vs-clean/
int d;
// elapsed time in days
int ds;
int dsm;
int faid;
int elapseTimeInDays;
int daysSinceCreation;
int daysSinceModification;
int fileAgeInDays;
int a = 1;
if(O == 1)
a=Ol;
else
l=01;
getActiveAccount(); -> =
getActiveAccounts(); -> getAllAccounts();
getActiveAccountInfo(); -> account.status
class DtaRcrd102 {
private Date genymdhms
}
class Customer{
private Date generationTimestamp;
}
** Cuidado com Palavras reservadas;
** Classes css
.lightBlue{}
->
.primary{}
public sysCode001l
public erro002
public string phoneString;
getListAccounts();
public string phone;
getAllAccounts();
private string m_descricao;
void setName(string descricao){
m_descricao = descricao;
}
->
private string descricao;
void setName(string descricao){
this.descricao = descricao;
}
IPessoa
PessoaImp
CShapeFactory**
variáveis com 1 letra
r = "url";
->
url = "www.123.com.br";
evite -> Gerenciar, Processador, Dados, Info
devem ser substantivos -> Custumers, Accounts
devem ter verbos -> getName();
mesma idioma do projeto;
nomes de metodos utilizados em testes bem verboso;
não fazer "gracinhas" no código;
Selecione uma Palavra por conceito e Não faça trocadilhos
controller e manager. escolha um destes, e mantenha o comportamento em todas as classes.
Use nome a partir do domínio da solução
não utilize -> AccountVisitor (o que é visitor no contexto?)
Utilizar nomes técnicos -> JobQueue
evite "state"
-> address.state
exemplo:
app: Gas Station Deluxe
GDSController()
function ler(isAlgumaCoisa)
simEhLer=true;
ler(simEhLer = true);
Propriedades que armazenam métodos : nomes devem ser o que vão fazer ou o que retornam?