sobota, 15 grudnia 2012

Różnice między klasą abstrakcyjną, a interfejsem

wstęp

Zdaję sobie sprawę, że o różnicach pomiędzy interfejsem, a klasą abstrakcyjną pisałem już wielokrotnie (m. in. "klasa, czy już interfejs" oraz "abstrakcja vs interfejs"), jednak nigdy nie pisałem o tych podstawowych. Opierając się na wielu rozmowach rekrutacyjnych, które do tej pory przeprowadziłem, zauważyłem, że te różnice nie są jednak tak powszechnie znane, jak przypuszczałem i może warto byłoby je wymienić oraz wytłumaczyć skąd się biorą.

Dlatego też dzisiaj chciałbym nadrobić brak wpisu na ten temat:)

poniedziałek, 10 grudnia 2012

"Refaktoryzacja. Ulepszanie struktury istniejącego kodu"

co się odwlecze...

Już od dłuższego czasu przymierzałem się do przeczytania książki Martina Fowlera niestety nieustannie coś mnie od tego odciągała (zazwyczaj brak czasu lub inna literatura:). Na szczęście ostatnio udało mi się po nią sięgnąć, a dzisiaj zakończyłem jej lekturę i muszę przyznać, że... ale o tym za chwilę:)

niedziela, 9 grudnia 2012

SOLIDny kod cz. 1 - wstęp

SOLIDnie, czyli jak?

Skoro podstawy programowania obiektowego mamy już za sobą (dla tych, którzy przegapili - spis treści jest tutaj), to pora zająć się jakimiś poważniejszymi tematami związanymi z OOP :)

Na początek chciałbym rozszyfrować akronim SOLID.
Co się za nim kryje? Zbiór pięciu podstawowych zasad dotyczących programowania obiektowego:
  • Single responsibility principle
  • Open/closed principle
  • Liskov substitution principle
  • Interface segregation principle
  • Dependency inversion principle