Strategy pattern using interfaces (old) and lambda (new) way