8 问题分解与代码重用