Wpis z mikrobloga

Czy jedna methoda powinna wykonywać tylko jedną konkretną czynność? Np. załóżmy, że program ma pobrać nazwę użytkownika i hasło, sprawdzić czy dane się zgadzają i w zależności od pomyślności coś tam wyświetlić. Powinno się to rozbić na trzy oddzielne metody? I to też potem ułatwi testowanie takich metod?
#programowanie #programista15k #naukaprogramowania
  • 4
  • Odpowiedz
@Edelner: Wiesz, prędzej czy później będziesz musiał i tak wywołać to w jednej metodzie. Ogólnie idealne dla mnie API to takie, którego nie da się użyć źle. W tym przypadku masz API w postaci - sign_in(name, password), które zwraca obiekt sesji albo nie, to jak w środku będzie to rozwiązane, to już zupełnie inna sprawa.

Ogólnie w przypadku API, które jest podstawą bezpieczeństwa to mniejsza konfigurowalność i mniej metod
  • Odpowiedz
@Edelner: w tym wypadku na pewno chcesz rozdzielić IO od logiki. Jak masz to zagmatwane to potem bardzo ciężko takie coś testować i używać w innym kontekscie. Podział na metody też brzmi średnio, bo metody są związane z konkretną klasą. W twoim wypadku dowolny punkt można zamienić np. pobranie z pliku, użycie sprawdzarki A i zapisanie do pliku, albo przeczytanie z konsoli, użycie sprawdzarki B i zapis do konsoli. Wszystkie
  • Odpowiedz