Přechod z Javy na Rust. Ano či ne?

Re:Přechod z Javy na Rust. Ano či ne?
« Odpověď #165 kdy: Dnes v 15:07:10 »
Dobrá otázka je i "Co je to vůbec OOP?". Odpověď není až tak jednoduchá :)

Chápem ako to myslíte, ale tá odpoveď v podstate jednoduchá je. Pokiaľ poznáte históriu toho označenia. A myslím tým históriu od doby pred tým ako to označenie vzniklo.

A pokiaľ ju nepoznáte a nie ste si istý tým, čo OOP znamená, tak znamená to, čo si drvivá väčšina jeho používateľov myslí, že znamená.

To, že to označenie bolo vytvorené pre niečo iné, nie je vôbec podstatné. Nikdy sa to nepodarilo v širšej miere presadiť, ale hlavne, aj jeho samotný tvorca sa po čase vyjadril, že to, čo vytvoril, mal nazvať inak, podľa toho, čo je pre to, čo vytvoril zásadné a čo by mu dalo jednoznačný a nezameniteľný význam.

Keby to, čo vytvoril, nazval inak, tak je celkom veľká pravdepodobnosť, že OOP by sa začalo používať prirodzeným vývojom už len na základe toho aké generické slova sú v ňom použité.


Re:Přechod z Javy na Rust. Ano či ne?
« Odpověď #166 kdy: Dnes v 15:08:51 »
Ona jakákoliv serializace bude v principu narušovat zapouzdření, jinak nemůže fungovat. Je jen otázka, jestli to není zapouzdřené až na úrovni toho xml, nebo už někdy dřív.

Väčšinou, keď vám nezáleží na opaku, ale nie nutne vždy.

Zapúzdrenie slúži na zabránenie nekontrolovanej zmeny členskej dátovej položky, aby jej nežiadanou zmenou nemohlo dôjsť k nastaveniu vnútorného stavu, ktorý je neplatný alebo iným spôsobom nežiadaný.

Pokiaľ si serializované dáta podpíšete, tak deserializácia prípadnú manipuláciu s dátami v uloženej forme odhalí, a vytvorenie objektu neumožní.

Re:Přechod z Javy na Rust. Ano či ne?
« Odpověď #167 kdy: Dnes v 15:09:41 »
V tomto smyslu porušují zapouzdření všechny gettery a settery. Přesto je kdekdo používá.

Gettery iba ak vracajú odkaz na nekonštantnú položku, settery iba ak argument zapíšu do členskej premennej bez akejkoľvek kontroly.

Re:Přechod z Javy na Rust. Ano či ne?
« Odpověď #168 kdy: Dnes v 15:11:24 »
No právě. Opravdu se ten dokument mění? Je furt stejný, jen jsme k němu přidali nějaké ověření. Že je to jiný inkoust na stejném papíře je nepodstatný detail. V programu to může být druhý objekt, který se odkazuje na ten původní nezměněný dokument.

Presne. Nepodpísaný dokument a podpísaný dokument majú byť dve rôzne veci. Potom sa dá jednoducho dosiahnuť, že ak funkcii, ktorá vyžaduje podpísaný dokument dáte ako argument nepodpísaný dokument, dostanete veľmi dôrazné upozornenie už pri zostavení programu. Teda, pri pokuse o zostavenie programu...

Kit

  • *****
  • 889
    • Zobrazit profil
    • E-mail
Re:Přechod z Javy na Rust. Ano či ne?
« Odpověď #169 kdy: Dnes v 15:26:35 »
V tomto smyslu porušují zapouzdření všechny gettery a settery. Přesto je kdekdo používá.

Gettery iba ak vracajú odkaz na nekonštantnú položku, settery iba ak argument zapíšu do členskej premennej bez akejkoľvek kontroly.

To jsou velmi časté případy. Bohužel autoři stále tvrdí, že zapouzdření neporušují.