定期的にマジックナンバー撲滅運動をしましょう
問
あなたはこの数字の意味わかりますか?
myButton.frame.origin.y = 64.0f;
よくある回答
知らんがな
解説
myButton の上にはステータスバーとコントロール要素があり
iPhone のステータスバーの高さは 20 ピクセル
また、推奨されるコントロール要素の最低サイズが 44 ピクセル
この 64.0f には上記の意味が含まれています
ちなみにそもそもこのような記載方法はよくないので参考にしてはいけない
対策
このような暗黙のルール・不文律・僕の考えた最強の数字はこの世から消え去らなければならない
対処は簡単で定数にすればよい
上記に書いた意味合いを用いると以下の様になる
static const CGFloat kControlElementMinimumHeight = 44.0f; static const CGFloat kStatusBarHeight = 20.0f; myButton.frame.origin.y = kControlElementMinimumHeight + kStatusBarHeight;
なんとなくわかるでしょ?
可読性のあるコードを書きましょう
1年後にコードを見て理解できるかどうかが重要