Přeskočit na obsah
_CORE
AI & Agentic Systems Core Informační Systémy Cloud & Platform Engineering Data Platforma & Integrace Security & Compliance QA, Testing & Observability IoT, Automatizace & Robotika Mobile & Digital Banky & Finance Pojišťovnictví Veřejná správa Obrana & Bezpečnost Zdravotnictví Energetika & Utility Telco & Média Průmysl & Výroba Logistika & E-commerce Retail & Loyalty
Reference Technologie Blog Know-how
Nástroje O nás Spolupráce Kariéra
Pojďme to probrat

SOLID principy prakticky

03. 02. 2026 1 min čtení intermediate

SOLID principy vedou k udržovatelnému, rozšiřitelnému kódu. Ne dogma, ale užitečné guidelines.

S — Single Responsibility

❌ Špatně — třída dělá vše

class UserManager: def create_user(self, data): … def send_email(self, user): … def generate_report(self, users): …

✅ Správně — oddělené zodpovědnosti

class UserService: def create_user(self, data): … class EmailService: def send_welcome(self, user): … class ReportService: def generate(self, users): …

O — Open/Closed

Otevřený pro rozšíření, uzavřený pro modifikaci

class PaymentProcessor(Protocol): def process(self, amount: float) -> bool: … class StripePayment: def process(self, amount: float) -> bool: … class PayPalPayment: def process(self, amount: float) -> bool: …

Přidání nového typu = nová třída, ne modifikace existující

D — Dependency Inversion

❌ Vysokoúrovňový modul závisí na nízkoúrovňovém

class OrderService: def __init__(self): self.db = PostgresDB() # Hard dependency

✅ Závisí na abstrakci

class OrderService: def __init__(self, db: DatabasePort): self.db = db # Injected, testable

L — Liskov Substitution & I — Interface Segregation

  • Liskov: Podtřída musí být zaměnitelná za rodičovskou
  • Interface Segregation: Malé, specifické interfaces místo jednoho velkého

Klíčový takeaway

SRP: jedna třída = jedna zodpovědnost. DIP: závisejte na abstrakcích. SOLID jako guidelines, ne dogma.

solidoopdesignbest practices
Sdílet:

CORE SYSTEMS tým

Stavíme core systémy a AI agenty, které drží provoz. 15 let zkušeností s enterprise IT.