SylvesterLoreto/BankAccountKata
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
These requirements were copied from https://github.com/sandromancuso/Bank-kata and are used as a reference for this exercise. Bank account kata Think of your personal bank account experience. When in doubt, go for the simplest solution Requirements - Deposit and Withdrawal - Transfer - Account statement (date, amount, balance) - Statement printing - Statement filters (just deposits, withdrawal, date) The Rules - One level of indentation per method - Don’t use the ELSE keyword - Wrap all primitives and Strings - First class collections - One dot per line - Don’t abbreviate - Keep all entities small (50 lines) - No classes with more than two instance variables - No getters/setters/properties For more information: - Object Calisthenics pdf - Object Calisthenics (full book), Jeff Bay in: The ThoughtWorks Anthology. Pragmatic Bookshelf 2008 - Original idea for the kata: How Object-Oriented Are You Feeling Today? - Krzysztof Jelski (Session on the Software Craftsmanship UK 2011 conference) My (unfinished) solution Started from defining an acceptance test: Given a client makes a deposit of 1000 on 10-01-2012 And a deposit of 2000 on 13-01-2012 And a withdrawal of 500 on 14-01-2012 When she prints her bank statement Then she would see date || credit || debit || balance 14/01/2012 || || 500.00 || 2500.00 13/01/2012 || 2000.00 || || 3000.00 10/01/2012 || 1000.00 || || 1000.00