XXX : Polymorphisme

@TODO: RECAP POOLY + OO

Q1

Q2

@todo trouver un ancien lab/kata sur le polymorphisme / stratégie

List de doc à encrypter qui savent leur algo.

Avoir

// Ne sert pas à la strat, sert juste à leur faire des methodes qui sont void
// Peut aussi illustré la gestion des dép (on se couple pas au port série)
interface Receiver {
   public void receive(String mgs)
}

class Document {
   public Document(HashMethod method) { this. }
   public void transmit(Receiver receiver);
}

class Sha1MessageEncoder : MessageEncoder {
   public void transmit(Receiver receiver) {
       receiver.receive(sha1.hash(this.content));
   }
}

class Md5MessageEncoder : MessageEncoder {
   public void transmit(Receiver receiver) {
       receiver.receive(this.content);
   }
}

class PlainText : MessageEncoder {
   public void transmit(Receiver receiver) {
       receiver.receive(this.content);
   }
}