Přeskočit na obsah
_CORE
AI & agentní systémy Podnikové informační systémy Cloud & Platform Engineering Datová platforma & integrace Bezpečnost & compliance QA, testování & observabilita IoT, automatizace & robotika Mobilní & digitální produkty Bankovnictví & finance Pojišťovnictví Veřejná správa Obrana & bezpečnost Zdravotnictví Energetika & utility Telco & média Průmysl & výroba Logistika & e-commerce Retail & věrnostní programy
Reference Technologie Blog Know-how Nástroje
O nás Spolupráce Kariéra
CS EN DE
Pojďme to probrat

SOLID principy prakticky

03. 09. 2025 Aktualizováno: 24. 03. 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.