Reduce coupling and dependency of cart class