Enkapsulace operací
Enkapsulace operací
– enkapsulace a ukrývání informací může být aplikováno na objekt
– hlavní idea – definovat chování typů objektů založené na operacích -> interní struktura objektů není viditelná, objekt je dosažitelný jen přes definované operace
– typy operací -> create, destroy, update hodnoty objektu, vyber část objektu, aplikuj výpočty nad objektem a jejich kombinace
– metoda operace je implementovaná v všeobecném PJ
– externí uživatel ji nezná, zná jen interface -> signaturu a argumenty každé operace
– metoda se vyvolá posláním zprávy objektu, aby ji vykonal
– některé části objektu mohou být viditelná
– pro každou definici třídy jméno třídy odkazuje na
– typ; operace; množinu všech perzistentních objektů
CLASS – třída
– zahrnuje definici typu objektu spolu s definicí operací pro daný typ
– typické operace
– konstruktor – vytvoří nový objekt
– destruktor – zrušení objektu
– modifikátor
– objekt obsahuje jen signaturu, metoda je definovaná jinde
Perzistence
– některé objekty existují jen v době běhu programu a potom zaniknou
– perzistentní objekty jsou uložené v databázi
– mají jedinečné jméno, přes které mohou být přístupné programu, nebo jsou přístupné přes nějaký jiný perzistentní objekt
– objekt B je dostupný přes objekt A, pokud existuje posloupnost odkazů v objektovém grafu, která vede z A do B, navíc všechny objekty mezi A a B musí být perzistentní