[NewFeature] Add Strategy Pattern.