Keresés

Új hozzászólás Aktív témák

  • Aethelstone

    addikt

    válasz Szmeby #8002 üzenetére

    Ez igaz, de sok esetben nincs veszélye. Tipikus példa a konténer(DTO) jellegű osztályok.
    Ha egymásba vannak ágyazva és engem csak egy érték érdekel, mondjuk

    myDTO.getSzamlak().getTetelek(0).getValue();

    Itt ugye lehetne, hogy a getTetelek(0) esetén egy Tetel objektumot kvázi kiemelek és a getValue() metódust ezen hívogatom a jövőben, amennyiben többször is szükségem van az értékére. Vagy a fent írt sort idézgetem annyiszor, amennyiszer szükségem van rá.

    Teljesítmény szempontjából semmiféle hátránya nincs, ha nem emelem ki, viszont megspórolok egy plusz objektumhivatkozást. Nyilván ha egy metódust drága hívogatni, akkor kiemelem, de pusztán annyit próbálok én is már ezer+1 hozzászóláson keresztül magyarázni, hogy a láncban hívás alapvetően lehet jó is. Feladatfüggő.
    Nyilván ha nem tudom, hogy pontosan mit csinál a lánc, akkor tartózkodom a használatától, de ismétlem önmagam, a láncolt hívások alapvetően nem az ördögtől valóak és csak azért, mert nemteccik, nem kell elvetni a használatát.

    Law of Demeter, ha nem akarja egy objektum, hogy ilyen módon hívogassam a metódusait, akkor szervezze már úgy, hogy ne férjek hozzá, ha meg nem szervezi úgy és public, akkor miért ne használjam?

    Ennyi. Zárom.

    [ Szerkesztve ]

    MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...

Új hozzászólás Aktív témák