Zrcadlo (programování) - Mirror (programming)
v programování, a zrcadlo je odraz mechanismus, který je zcela oddělen od objektu, jehož struktura je introspekována. To je na rozdíl od tradiční reflexe, například v Jáva, kde člověk introspektuje objekt pomocí metod ze samotného objektu (např. getClass ()
).
Zrcadla dodržují vlastnosti zapouzdření stratifikace a ontologická korespondence.[1]
Výhody
Oddělení mechanismu odrazu od samotných objektů přináší několik výhod:
- Rozhraní objektu není znečištěno, takže neexistuje nebezpečí narušení odrazu přepsáním reflexní metody.
- Mohou existovat různé zrcadlové systémy.
- Zrcadlový systém lze zcela odstranit (což potenciálně umožňuje optimalizaci).
- Zrcadlový systém může pracovat na vzdáleném kódu, protože není spojen s konkrétním strojem.
Jazyky, které používají zrcadla
- Šipka prostřednictvím odrážet funkce.
- Inko[2]prostřednictvím std :: zrcadlo modul.
- Rubinius (Rubín implementace), prostřednictvím jeho Rubinius :: Mirror.reflect metoda.[3]
- Scala[4]
- Rychlý prostřednictvím odrážet funkce.
Reference
- ^ Gilad Bracha a David Ungar, "Metaúrovňové vybavení objektově orientovaných programovacích jazyků"
- ^ https://inko-lang.org/faq/#header-does-inko-support-reflection
- ^ https://github.com/rubinius/rubinius/blob/master/core/mirror.rb
- ^ http://docs.scala-lang.org/overviews/reflection/environment-universes-mirrors.html
Tento počítačová věda článek je a pahýl. Wikipedii můžete pomoci pomocí rozšiřovat to. |