• Zawiłości języka Java #2

    Post thumbnail
    Post thumbnail
    Dzisiejszy wpis jest kontynuacją serii dotyczącej zawiłości języka Java. Jak już wiesz nieznajomość składni danego języka może prowadzić do wielu nieporozumień. Niektóre błędy są możliwe do szybkiego wyłapania, ale niektóre mogą prowadzić do długiej serii debugowania 😔. [Czytaj dalej]
  • SOLID - Dependency inversion principle

    Post thumbnail
    Post thumbnail
    Ostatnią zasadą mnemoniku SOLID jest Odwrócenie Zależności. Polega ona na tym, żeby nie uzależniać modułów wysokiego poziomu od modułów niskiego poziomu. Należy wstawić pomiędzy nie abstrakcję, która nie może zależeć od detali, ale to detale powinny zależeć od niej. Prościej mówiąc zasada Odwrócenia Zależności ma na celu zmniejszenie zależności od... [Czytaj dalej]
  • SOLID - Interface segregation principle

    Post thumbnail
    Post thumbnail
    Przedostatnia zasada mnemoniku SOLID. Według tej wytycznej interfejsy należy odpowiednio segregować. Nie jest zalecane tworzenie interfejsu “od wszystkiego”. Powinno się je konstruować w taki sposób, aby miały tylko jedną odpowiedzialność (Single Responsible Principle). Klas implementujących dany interfejs nie należy zmuszać do implementowania funkcjonalności, których nie potrzebują. Naruszono by w ten... [Czytaj dalej]
  • SOLID - Liskov substitution principle

    Post thumbnail
    Post thumbnail
    Trzecia już zasada mnemoniku SOLID. Nazwa tej reguły pochodzi od nazwiska twórczyni, czyli Barbary Liskov. Według niej w miejscu, gdzie wykorzystywana jest klasa bazowa bez problemu można użyć klas pochodnych, które mogą rozszerzać bazowe funkcjonalności, ale zmiany w nich zawarte nie mogą mieć wpływu na działanie programu oraz jego wynik.... [Czytaj dalej]
  • SOLID - Open/closed principle

    Post thumbnail
    Post thumbnail
    Druga zasada mnemoniku SOLID. Praktyka mówiąca, że klasy powinny być otwarte na rozszerzenia, ale zamknięte na modyfikacje. Opracował ją Bertrand Meyer w 1988 r. Według niej dana encja powinna mieć możliwość zmiany swojego zachowania bez ingerowania w kod źródłowy. W ten sposób wytwarzamy system, który potrafi dostosować się do zmiennych... [Czytaj dalej]