Skip to content

SylvesterLoreto/BankAccountKata

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 

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

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages