Зачем просто, когда можно сложно? (Hello World)

Забавные примеры переусложнённого кода

Задача: напечатать «Hello, world!». Так-так… Что же нам потребуется для её решения? Думаю, шести классов, двух фабрик, строителя и синглтона будет достаточно… Решение:

\\python from abc import ABC, abstractmethod

class Greeting(ABC):     @abstractmethod     def render(self):         …

class HelloWorldGreeting(Greeting):     def render(self):         return “Hello, world!”

class GreetingFactory(ABC):     @abstractmethod     def create(self):         …

class HelloWorldFactory(GreetingFactory):     def create(self):         return HelloWorldGreeting()

class GreetingBuilder:     def __init__(self):         self._factory = None         def with_factory(self, factory):         self._factory = factory         return self         def build(self):         return self._factory.create()

class Application:     _instance = None         def __new__(cls):         if cls._instance is None:             cls._instance = super().__new__(cls)         return cls._instance         def run(self):         builder = GreetingBuilder().with_factory(HelloWorldFactory())         print(builder.build().render())

Application().run() \\

Работает. Но всё же проще так 🙂:

\\python print(“Hello, world!”) \\

#python #коддетокс

Зачем просто, когда можно сложно? (Hello World) | Сетка — социальная сеть от hh.ru