пример взят с вики
https://ru.wikipedia.org/wiki/Адаптер_(шаблон_прое...
это схема uml паттерна адаптер
это код на пайтон
class GameConsole:
def create_game_picture(self):
return 'picture from console'
class Antenna:
def create_wave_picture(self):
return 'picture from wave'
class SourceGameConsole(GameConsole):
def get_picture(self):
return self.create_game_picture()
class SourceAntenna(Antenna):
def get_picture(self):
return self.create_wave_picture()
class TV:
def __init__(self, source):
self.source = source
def show_picture(self):
return self.source.get_picture()
g = SourceGameConsole()
a = SourceAntenna()
game_tv = TV(g)
cabel_tv = TV(a)
print( game_tv.show_picture())
print( cabel_tv.show_picture())
мне понятен смысл паттерна, но я пытаюсь разобраться в том как читать uml схему
часть стрелок вроде понятна мне, какие то мануалы по uml для класса я уже посмотрел, но понял только часть((
к тому же некоторые линии эти мануалы не поясняют, например те что без стрелок или где с одной стороны одна стрелка,а с другой стороны другая
но главное пока хочу понять адаптер
1)кто в коде client?
2)что за пунктирная линия без стрелок, как ее читать на примере кода?
3)что значит стрелка в Adaptee->sepcificRequest() именно в uml схеме?
4)Target на схеме полужирный курсив, значит класс должен быть абстрактный, но в коде нет такого класса, почему?