Wpis z mikrobloga

  • 6
@jaskowice1 klasa abstrakcyjna to atrapa iphone-a - widzisz interfejs, przyciski, czesc nawet dziala np latarka, ale nie jest kompletny, a jedynie ppgladowy, wiec nie mozesz go sprzedac. Polomorfizm zas to znasz juz interfejs z atrapy, wiec jak wezmiesz konkretnego iphone-a, albo jego chinska podrobke to bedziesz umial nacisnac przycisk odblokowania ale to juz od konkretnej implementacji atrapy zalezy co sie stanie
  • Odpowiedz
@jaskowice1: Parser konfiguracji - klasa abstrakcyjna ConfigurationInitializer definiuje metodę read(); , do tego implementuje metodę init() { ... read(); ... }. Teraz implementacjami będą na przykład klasy: XmlConfigurationInitializer, JsonConfigurationInitializer, HttpConfigurationInitializer, które będą implementowały specyficzny mechnizm czytania konfiguracji, czy to z XML-a, JSON-a, czy zasobu HTTP. Tutaj warto użyć jeszcze abstract factory, aby tworzył odpowiednią implementację na podstawie ścieżki do konfiguracji, np "http://../" to HTTP, "file://.../xxx.xml" to XmlConfigurationInitializer itd.
  • Odpowiedz