Annotation: Vor- und Nachteile von XML und Annotation

Anmerkungen werden derzeit häufig in vielen Java-Frameworks wie Hibernate, Jersey und Spring verwendet.

 

Was sind Metadaten? Metadaten

Metadaten, auch als Zwischendaten und Weiterleitungsdaten bezeichnet, sind Daten über Daten, hauptsächlich Informationen, die Datenattribute (Eigenschaften) beschreiben, und werden zur Unterstützung von Speicherorten, historischen Daten und Ressourcensuche, Dateiaufzeichnung und anderen Funktionen verwendet.

 

Metadaten beziehen sich auf strukturierte Daten (wie Titel, Version, Veröffentlichungsdaten, zugehörige Anweisungen, Zugangspunkte usw.), die aus Informationsressourcen extrahiert werden, um deren Eigenschaften und Inhalt zu beschreiben, und werden zur Organisation, Beschreibung, zum Abruf, zur Aufbewahrung, zum Verwalten von Informationen usw. verwendet Wissensressourcen.

 

Daten in jedem Dateisystem sind in Daten und Metadaten unterteilt. Daten beziehen sich auf die tatsächlichen Daten in gewöhnlichen Dateien, während sich Metadaten auf Systemdaten beziehen, die zur Beschreibung der Eigenschaften einer Datei verwendet werden, wie z. B. Zugriffsberechtigungen, Dateieigentümer und Informationen zur Dateidatenblockverteilung (Inode ...) usw. In einem Cluster-Dateisystem umfassen die Verteilungsinformationen den Speicherort der Datei auf der Festplatte und den Speicherort der Festplatte im Cluster. Benutzer, die eine Datei bearbeiten möchten, müssen zunächst deren Metadaten abrufen, bevor sie den Speicherort der Datei ermitteln und den Inhalt oder zugehörige Attribute der Datei abrufen können.

 

Im Kopf von HTML befindet sich ein Meta-Tag. Also, was ist es? Gemäß der obigen Erklärung sollten wir wissen, dass es sich um „Informationen über das Dokument“ handelt. Es gibt zwei Attribute von Meta: Name und http-equiv. Das Namensattribut wird verwendet, um den Inhalt der Webseite zu beschreiben. Das http-equiv-Attribut weist den Server an, den Namen/Wert in den Header des zu erstellenden MIME-Dokuments aufzunehmen wird an den Browser gesendet, bevor das eigentliche Dokument gesendet wird. Ja, zum Beispiel um den Text und die Sprache zu beschreiben, mit denen die Homepage erstellt wurde.

Im Folgenden sind Meta-Tags für Baidu- und Sina-Homepages aufgeführt:

 
  1. //百度首页meta标签

  2. <meta http-equiv="content-type" content="text/html;charset=utf-8">

  3. <meta http-equiv="X-UA-Compatible" content="IE=Edge">

  4. <meta name="referrer" content="always">

  5. <meta name="theme-color" content="#2932e1">

  6.  
  7. //新浪首页部分meta标签

  8. <meta name="keywords" content="新浪,新浪网,SINA,sina,sina.com.cn,新浪首页,门户,资讯" />

  9. <meta name="description" content="新浪网为全球用户24小时提供全面及时的中文资讯,***。" />

  10. <meta name="application-name" content="新浪首页"/>

Basierend auf der breiten Anwendung von Metadaten führte JDK5.0 das Konzept der Annotation zur Beschreibung von Metadaten ein.

 

Warum Annotation einführen?

Vor der Verwendung von Annotation wurde XML häufig zur Beschreibung von Metadaten verwendet. Ich weiß nicht, wann einige Anwendungsentwickler und -architekten festgestellt haben, dass die Wartung von XML immer schlechter wird. Sie möchten etwas verwenden, das eng mit dem Code verknüpft ist, und nicht eine Codebeschreibung, die wie XML lose mit dem Code verknüpft (oder in manchen Fällen sogar vollständig getrennt) ist. Wenn Sie in Google nach „XML vs. Annotationen“ suchen, werden Sie viele Debatten zu diesem Thema sehen. Das Interessanteste ist, dass die XML-Konfiguration tatsächlich eingeführt wird, um Code und Konfiguration zu trennen. Die beiden oben genannten Ansichten könnten Sie verwirren. Die beiden Ansichten scheinen einen Zyklus zu bilden, aber jede hat ihre eigenen Vor- und Nachteile. Im Folgenden verwenden wir ein Beispiel, um den Unterschied zwischen den beiden zu verstehen.

 

Wenn Sie viele Konstanten oder Parameter für Ihre Anwendung festlegen möchten, ist XML eine gute Wahl, da es nicht an bestimmten Code gebunden ist. Wenn Sie eine Methode als Dienst deklarieren möchten, ist es besser, Annotation zu verwenden, da in diesem Fall Annotation und Methode eng gekoppelt sein müssen und Entwickler sich dessen auch bewusst sein müssen.

 

Ein weiterer sehr wichtiger Faktor ist, dass Annotation eine Standardmethode zur Beschreibung von Metadaten definiert. Bisher definierten Entwickler Metadaten normalerweise auf ihre eigene Weise. Verwenden Sie beispielsweise Tag-Schnittstellen, Anmerkungen, vorübergehende Schlüsselwörter usw. Jeder Programmierer definiert Metadaten auf seine eigene Art und Weise, im Gegensatz zur Standardmethode der Annotation.

 

Derzeit verwenden viele Frameworks XML und Annotation zusammen, um die Vor- und Nachteile zwischen den beiden abzuwägen.

 

Vor- und Nachteile von XML und Annotation

Derzeit verwenden fast alle Webanwendungen XML als Konfigurationselement. Der Grund, warum XML so beliebt ist, liegt darin, dass seine vielen Vorteile nicht durch andere Konfigurationstechnologien ersetzt werden können.

Vorteile von XML:

  • Der größte Vorteil von XML als erweiterbarer Auszeichnungssprache besteht darin, dass Entwickler geeignete Tags für die Software anpassen können, wodurch der Code verständlicher wird.
  • Durch die Verwendung einer XML-Konfiguration kann die Software skalierbarer gemacht werden. Spring konfiguriert beispielsweise Abhängigkeiten zwischen Klassen in XML, um die Skalierbarkeit der Anwendung zu maximieren.
  • Es verfügt über einen ausgereiften Überprüfungsmechanismus, um die Programmkorrektheit sicherzustellen. Schema oder DTD können verwendet werden, um die Richtigkeit von XML zu überprüfen, um illegale Konfigurationen zu vermeiden, die zu Anwendungsfehlern führen.
  • Ändern Sie Konfigurationen, ohne vorhandene Programme zu ändern.

 

Obwohl es so viele Vorteile gibt, gibt es schließlich keine Einheitslösung, und XML hat auch seine eigenen Nachteile.

Nachteile von XML:

  • Erfordert Unterstützung durch Parsing-Tools oder Klassenbibliotheken.
  • Das Parsen von XML wirkt sich zwangsläufig auf die Anwendungsleistung aus und belegt Systemressourcen.
  • Zu viele Konfigurationsdateien erschweren die Verwaltung.
  • Die Korrektheit der Konfigurationselemente kann zur Kompilierzeit nicht überprüft werden bzw. Fehler können erst zur Laufzeit überprüft werden.
  • Die IDE kann die Richtigkeit des Konfigurationselements nicht überprüfen.
  • Es wird schwierig, Fehler zu überprüfen, und eine Fehlkonfiguration führt oft zu unerklärlichen Fehlern.
  • Entwickler müssen gleichzeitig Code- und Konfigurationsdateien verwalten, wodurch die Entwicklungseffizienz gering wird.
  • Es gibt versteckte Regeln zwischen Konfigurationselementen und Code. Änderungen bei einer Partei können Auswirkungen auf die andere Partei haben.

 

Vorteile der Annotation:

  • Speichern Sie es in einer Klassendatei, um die Wartungskosten zu senken.
  • Keine Toolunterstützung oder Analyse erforderlich.
  • Die Richtigkeit kann zur Kompilierungszeit überprüft werden, was die Fehlerprüfung erleichtert.
  • Verbessern Sie die Entwicklungseffizienz.

Nachteile der Annotation:

  • Wenn Sie die Konfigurationselemente ändern möchten, müssen Sie die Java-Datei ändern und die gepackte Anwendung neu kompilieren.
  • Konfigurationselemente sind in Java-Dateien codiert und weisen eine schlechte Skalierbarkeit auf.

 

Nichts ist perfekt und XML- und Java-Annotation haben ihre eigenen Vor- und Nachteile. Und ihre Vor- und Nachteile ergänzen sich genau. Die Stärken von XML sind das, was Annotation nicht hat, und die Vorteile von Annotation sind auch das, was XML fehlt. Aus diesem Grund ist die XML + Annotation-Konfiguration heutzutage beliebt.

Supongo que te gusta

Origin blog.csdn.net/danny_799745061/article/details/84144927
Recomendado
Clasificación