リーダブルコード chapter2


情報を名前に込める

  • todolist
    • 一目見てわかる具体的なネーミング
    • 接頭辞で、プラスαの意味を込める
    • 一般的、凡庸なネーミングは避ける
    • 意味を込めたネーミング

  • bad

get sizeなど。何をgetするの?何のsizeなの?など疑問がでる

class BinaryTree {
init Size(){
}
}

returnする値はnodeなのかmemoryなのかわからない

  • good

class BinaryTree {
init NumNodes(MemoryBytes)(){
}
}

語彙力を高めろ

colofulwordを使えと言っている

イテレーターの変数 i j など

i,j   club_i member_i


bad

for (int i = 0; i < club.size(); i ++)
    if (clubs[i].members[k] == users[j])

good

for (int club_i = 0; club_i < club.size(); club_i ++)
    if (clubs[club_i].members[member_i] == users[user_id])

凡庸的なネーミングについて