Generalizovaný název objektu

doom

Generalizovaný název objektu
« kdy: 20. 04. 2018, 21:29:08 »
Ahoj, potrebuju nejak rozumne pojmenovat obecny typ objektu ze ktereho budu dedit dalsi objekty (uzivatelskej feed, komentar k feedu, spravy, atd...). Obecnej objekt bude obsahovat klicove fieldy, ktore jsou potrebne na klientovi. Takze objekt kterej z nej bude dedit, bude posilat po siti. Napada vas nejakej rozumnej nazev pro tento objekt? Dekuji.
« Poslední změna: 21. 04. 2018, 00:31:22 od Petr Krčmář »


xxx

Re:Generalizovanej nazev objektu
« Odpověď #1 kdy: 20. 04. 2018, 21:35:16 »
klienData ??

Kit

Re:Generalizovanej nazev objektu
« Odpověď #2 kdy: 20. 04. 2018, 21:39:52 »
God object?

doom

Re:Generalizovanej nazev objektu
« Odpověď #3 kdy: 20. 04. 2018, 21:41:35 »
co rikate na payload?

BoneFlute

  • *****
  • 1 983
    • Zobrazit profil
Re:Generalizovanej nazev objektu
« Odpověď #4 kdy: 20. 04. 2018, 21:47:18 »
co rikate na payload?

Payload může být vhodný název.

Obávám se, že jsi poněkud nešťastně popsal svůj problém. A navíc si do toho zamíchal kontroverzní téma (dědičnost). Plus pár překlepů. To se pak blbě radí.
« Poslední změna: 20. 04. 2018, 21:49:09 od BoneFlute »


balki

Re:Generalizovanej nazev objektu
« Odpověď #5 kdy: 20. 04. 2018, 22:22:22 »
Objekt by som nazval InheritanceMisuse, este by som pridal metody pomenovane "a()", "b()" , "c()" len tak zo srandy, aby tam aspon nieco bolo.

Kit

Re:Generalizovanej nazev objektu
« Odpověď #6 kdy: 20. 04. 2018, 22:27:49 »
uzivatelskej feed je payload, komentar k feedu je payload, spravy jsou payload,... Možná by to i šlo, ale smysl takového rozvržení mi uniká. Čím víc to bude univerzální, tím větší to bude paskvil. Nebylo by lepší, kdyby ten payload byl jen jeden a ostatní jen využívali jeho služeb?

Re:Generalizovaný název objektu
« Odpověď #7 kdy: 21. 04. 2018, 18:08:36 »
Pokud to bude jen na serveru, pak by to mohlo být něco jako AbstractRecord (abstraktní třída). Z toho se bude dědit a povede to k těsné vazbě mezi třídami, která Vás pak časem bude omezovat. Zlepšení by šlo asi dosáhnout užitím generik, pokud je použity jazyk umí - pak by byla třída Record<T> kde T je typ dat, které ten záznam obsahuje. Třída Record by pak obsahovala fieldy, která jsou z principu přítomny vždy (id, čas vytvoření, modifikace, přístupová práva apod.) a obslužné metody.

Pokud to bude součástí nějakého webového API a ten objekt bude lítat z klienta na server a zpět, bych udělal něco jako dvojici Request<T> Response<T>, kde T bude typ dat, které se budou přenášet (Feed, Comment atd.). V samotném Request a Response budou jen metody a fieldy, které mají smysl vždy (stavové kódy, chyby, verze protokolu a obslužné metody apod.), uživatelská data budou v tom typu.

Určitě je x dalších možností, jak to udělat...