Advertisement
fkudinov

UML Діаграми Класів Для Побудови Складних Систем

Oct 31st, 2024
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.85 KB | Source Code | 0 0
  1. # Приклад Наслідування
  2.  
  3. class A:
  4.     pass
  5.  
  6. class B:
  7.     pass
  8.    
  9. class C(A, B):
  10.     pass
  11.  
  12.  
  13. # Приклад Реалізації / Імплементації
  14.  
  15. from typing import Iterable, Callable
  16.  
  17.  
  18. class A:
  19.    
  20.     def __call__(self):
  21.         return "foo"
  22.    
  23.     def __iter__(self):
  24.         return iter([1, 2, 3])
  25.  
  26.  
  27. item = A()
  28. print(item())    # call
  29.  
  30. print([i for i in item])  # iterate
  31.  
  32. print(isinstance(item, Callable))  # True
  33. print(isinstance(item, Iterable))  # True
  34.  
  35.  
  36. # Приклад Залежності
  37.  
  38. class Item:
  39.     a = 123
  40.     b = "abc"
  41.  
  42.  
  43. class Main:
  44.  
  45.     def process(self, item: Item):
  46.         print(item.a)
  47.         print(item.b)
  48.        
  49.     def create(self) -> Item:
  50.         return Item()
  51.  
  52.  
  53. # Приклад Агрегації
  54.  
  55.  
  56. class Component:
  57.  
  58.     def do_something(self):
  59.         print("I am helping")
  60.  
  61.  
  62. class Main:
  63.  
  64.     def __init__(self, component: Component):
  65.         self.component = component
  66.        
  67.     def work(self):
  68.         self.component.do_something()
  69.  
  70.  
  71. # Приклад Композиції
  72.  
  73.  
  74. class Component:
  75.  
  76.     def do_something(self):
  77.         print("I am helping")
  78.  
  79.  
  80. class Main:
  81.  
  82.     def __init__(self):
  83.         self.component = Component()
  84.        
  85.     def work(self):
  86.         self.component.do_something()
  87.        
  88.        
  89. # Приклад Асоціації
  90.  
  91. class Component:
  92.  
  93.     def __init__(self, main):
  94.         self.main = main
  95.        
  96.  
  97. class Main:
  98.    
  99.     component = None
  100.    
  101.     def set_components(self, components: list[Component]):
  102.         self.components = components
  103.        
  104.     def get_components(self) -> List[Components]:
  105.         return self.components
  106.        
  107.  
  108. main = Main()
  109. components = [Component(main), Component(main), Component(main)]
  110. main.set_components(components)
  111. main.get_components()
  112.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement