13.1 为什么需要多种实现