Wpis z mikrobloga

Jak wolisz se?

A: mieć 3 funkcje z 1 parametrem:

getDocumentsForRevenue(Department dep)
getDocumentsForCosts(Department dep)
getDocumentsForTaxes(Department dep)

czy 1 funkcję ale 2 parametry:
getDocumentsFor(DocType.REVENUE, Department dep)
getDocumentsFor(DocType.COSTS, Department dep)
getDocumentsFor(DocType.TAXES, Department dep)

#programowanie #java

Jak wolisz?

  • A 42.7% (32)
  • B 40.0% (30)
  • nie wiem 17.3% (13)

Oddanych głosów: 75

  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

raczej A choć to zależy. Użyłbym B jeśli element zmienny jest prosty do ogarnięcia. Dobrym przykładem mogłoby być image.ExportAs(ImageType.PNG) zamiast image.ExportAsPNG(): co prawda logika konwersji z generycznego obrazka do PNG jest pewnie cholernie skomplikowana to koncepcyjnie jest to proste do ogarnięcia: wynikiem ma być ten sam obrazek tylko w formacie PNG co łatwo zweryfikować

W twoim wypadku pewnie wolałbym A jeśli jest tam inna logika a B, jeśli nie np. element
  • Odpowiedz
@aczutuse: to w takim razie oczywiste że odp 2 wywalasz switcha do funkcji.
w 1szym przypadku będziesz musiał mieć gdzieś switcha żeby wybrał odpowiednią funkcję. W 2gim masz to schowane w funkcji.
Dzięki temu też nei będziesz duplikował kodu. Chyba że płacą od linijki :>

Jeśli w każdej funkcji byłaby totalnie inna logika to wtedy ok żeby mieć 3 różne.
  • Odpowiedz
@aczutuse: to powiem stare porzekadło - rób jak uważasz i uważaj jak robisz :>
A tak imho to nie ma co się zbytnio spuszczać - ważne żeby działało i przynosiło wartośc biznesową.
  • Odpowiedz