常见error:
OBOB: one off by one
Stepwise refinement process 达到原语级别
decomposition 把问题逐步分解
原则: 1. 一个method solve 1 problem
2. most methods should between 1 -15 lines long
3. good name should describe what method is doing
4. have comment for each method to explain precondition / postcondition
top down design √
bottom u design
突然想到需要写一个method , 但是重要的是写出来以后应该放在整个程序的哪个位置