Ik schrijf een conference-programmatje met drie layers (gui, protocol+state, multicast) waarbij de lagen zo transparant mogelijk zijn. De klassen roepen alleen methodes op zichzelf aan en met AOP (aspect orientated programming) filter ik message-calls en zorg ik voor de lower-level communicatie.
Nu moeten meerdere lagen weten wat de username van de client is op het moment dat deze zich heeft aangemeld in een conference. In de gui bijvoorbeeld om zinnen van de client zelf in een andere kleur weer te geven. In de protocol layer om een afzender aan een bericht te kunnen hangen.
Of dit echt noodzakelijk is doet er in principe niet toe. Ik bedacht me echter dat voor dit soort problemen misschien wel een design pattern is. Waar laat je data die door verschillende klassen moet worden gebruikt die in principe niet eens van elkaars bestaan afweten. Niet in een van de lagen zelf lijkt me. Om elke laag de data te laten bijhouden is ook niet mooi. Iemand een mooi (qua design) idee?
Nu moeten meerdere lagen weten wat de username van de client is op het moment dat deze zich heeft aangemeld in een conference. In de gui bijvoorbeeld om zinnen van de client zelf in een andere kleur weer te geven. In de protocol layer om een afzender aan een bericht te kunnen hangen.
Of dit echt noodzakelijk is doet er in principe niet toe. Ik bedacht me echter dat voor dit soort problemen misschien wel een design pattern is. Waar laat je data die door verschillende klassen moet worden gebruikt die in principe niet eens van elkaars bestaan afweten. Niet in een van de lagen zelf lijkt me. Om elke laag de data te laten bijhouden is ook niet mooi. Iemand een mooi (qua design) idee?