9. Techniki „planowanego” postarzania
… najlepiej na wczoraj …
… się poprawi jutro …
(jutro nie nadejdzie nigdy)
… to tylko prototyp …
(żartowaliśmy)
… nie mamy czasu …
44. „Mieć” i „być”, to nie to samo
Diabeł tkwi w szczegółach
Generalizacja, uogólnienie
„is-a”
Kompozycja, delegacja
„has-a”
45. Uogólniaj na poziomie kontraktu
Interfejsu ze światem zewnętrznym
Kompozycja i delegacja
gdy przychodzi czas
na
Szczegóły implementacji
Stosuj obie techniki świadomie,
74. public class AnotherStylishClass{
private List<String> strings= new ArrayList<>();
public List<String> getStrings(){
returnstrings;
}
AnotherStylishCaseobj = new AnotherStylishCase();
obj.getStrings().add("Hello leaky abstraction!");
}
75. Testability
the ultimate UI
If it's hard to test
it will be hard to maintain
and even harder to rewrite
„somebody on the internet”