自己写的,感觉不错,有完整的设计思路,初学者可以参考下