Adapter

class Screen def outputToStdout(s) puts s end end class Printer def output(s) end end class PrinterScreenAdapter < Printer def initialize(screen) @screen = screen end def output(s) @screen.outputToStdout(s) end end screen = Screen.new adap…

class Screen { void outputToStdout(string s){ write(s); } } class Printer { void print(string s){ } } class PrinterScreenAdapter { inherit Printer; Screen screen; void create(Screen s) { screen = s; } void print(string s) { screen.outputTo…

import sys class Screen: def outputToStdout(self, s): sys.stdout.write(s) class Printer: def output(self, *args): raise NotImplementedError class PrinterScreenAdapter(Printer): def __init__(self, screen): self.__screen = screen def output(…