2017-05-09 1 views
1

Ziemlich oft sehe ich mich verwirrt, wenn über Codetransparenz sprechen. Was ich versuche mich zu klären, sind Konstrukte wie:Bedeutung der Begriff Transparenz in Software-Engineering

  • Diese für den Benutzer transparent sein sollte
  • Caching transparent der Anwendung sein sollte

groß sein würde Wenn jemand mit einem kleinen Pseudo-Code-Ausschnitt klären könnte, was ist das eigentlich für eine solche Sache?

Dank

Antwort

1

Dies bedeutet im Allgemeinen, dass es für den Benutzer unsichtbar ist. Der Benutzer kann die Anwendung verwenden und nicht wissen, dass eine Funktion vorhanden ist.

Damit die Zwischenspeicherung "transparent" ist, sollte die Anwendung nicht wissen, dass eine Zwischenspeicherungsschicht existiert. Dies wird am einfachsten durch das Gegenteil veranschaulicht, da eine nicht transparente Cache-Speicherschicht die Anwendungsaufrufmethoden zum Prüfen/Ablaufenlassen von Cache-Speichern erfordern würde.

+0

Heißt das, dass es für den Benutzer transparent ist, wenn ich Methode haben wie @Cacheable ("Benutzer") Benutzer getUser (int userId) { ? – odalinho

+0

das wäre transparent für den Benutzer, nicht für die Anwendung. Der Benutzer weiß nicht, dass ein Cache vorhanden ist. Die Anwendung tut dies jedoch. Der @Cacheable bedeutet, dass er weiß, dass Dinge zwischengespeichert werden. –