Some thoughts on oop and first separate implementation