Նկատեք, որ calcualtePrice ֆունկցիան պատասխանատու է միայն վճարման գնի վերջնական հաշվարկ կատարելու համար։ Այս ֆունկցիայի հետագա փոփոխության պատճառ կարող է դառնալ միայն հաշվարկի ալգորիթմի հետագա փոփոխությունը։ Նույն կերպ, applyPayment ֆունկցիան պատասխանատու է միայն կրեդիտ քարտից վճարում ապահովելու համար։