Riverside Learning LABO(Skill/Idea/Code)

よりよいシステムのため工学系と人間系の学習下書きメモ

ビューティフルコード13

ビューティフルコード (THEORY/IN/PRACTICE)

ビューティフルコード (THEORY/IN/PRACTICE)

ビューティフルコード


[メモ]
13章 遺伝子ソータの設計
Jim Kent
全部で2万行の遺伝子ソータ
中規模のプログラムの美しさを保つために必要なこと
ACGTのいずれかの塩基が30億個集まったDNA
各塩基は2ビットでヒトゲノム全体で750MB
そのうち本当に使われているのは10%
CGIはユーザー要求を受け付けてHTML形式レスポンスを返す
複雑なデータを扱う場合はHiddenやクッキーも使うが4KB以上は危険
フィルタ対象が多ければ性能が求められる
ディスクシークは0.005秒かかるので危険
プログラミングの最大の制約は人間の記憶
コードの各部についてそれを理解するのに必要は範囲は1画面に収まると良い
できるだけ局所的なスコープを選択する
戻り値を返すだけでどの値も変更しない再入可能な関数が望ましい