2012-10-31 31 views
37

Ich bin ein Neuling in Java Welt (7 Jahre Low-Level-Ebene C).Klasse vs Paket vs Modul vs Komponente vs Container vs Service vs Plattform in Java Welt

Als ich anfing Java verwandten Seiten zu lesen:

ich verwirrt durch bestehende Terminologie:

  • Klasse
  • Paket
  • Modul
  • Komponente
  • Behälter
  • Service
  • Rahmen
  • Plattform

ich viele Ressourcen über Begriffe Definition (und vieles mehr) gefunden:

aber jede dieser Ressourcen definiert sie für ihren eigenen Zweck und ich kann immer noch nicht zum Beispiel Modul von Komponente im Allgemeinen unterscheiden.

Bitte erklären Sie, welche Mittel dieser Begriffe im großen Bild (kann einzelne Klasse eine Plattform sein, welche Menge von Modulen ist erforderlich, um einen Behälter zu machen, etc).

+9

Hey! Hör auf zu schließen)) – gavenkoa

+1

Hör auf zu verstehen, und fang an zu tun. Beginnen Sie mit den Java-Tutorials und Sie werden standardmäßig einige Fragen beantworten. Der Rest wird mit Erfahrung klar werden – Romski

+1

Versuchen Sie, die gesamte Java-Welt und alle ihre Terminologie ohne ein bestimmtes Projekt und ohne eine einzige Zeile Java-Code zu verstehen? Haben Sie zuerst versucht, die Oracle Java Tutorials zu lesen? –

Antwort

36

class Eine Klasse ist die Blaupause zum Erstellen von Objekten in der klassenbasierten objektorientierten Programmierung; Sie sollten die Grundlagen von OOP lernen und verstehen, was ein Objekt ist, was eine Klasse ist, was Vererbung, Polymorphismus, Kapselung ist, bevor Sie etwas anderes über Java lernen.

package Ein Paket ist ein Namensraum; Sie können Namenskonflikte behandeln. Im Grunde können Sie zwei Klassen namens Employee haben, wenn sie sich in verschiedenen Paketen befinden.

module Es bezieht sich wahrscheinlich auf die Art, wie Java-Bibliotheken verteilt und verwendet werden - JAR, WAR, EAR.

component Kann als Basisklasse der GUI in AWT (oder JComponent in Swing) angesehen werden oder kann als eine Art von EJB angesehen werden - ein POJO (Plain Old Java Object), das einige Anforderungen erfüllt; es ist möglich, andere Bedeutungen zu haben und hängt vom Kontext ab.

container In Enterprise-Anwendung verwenden Sie offensichtlich einige Bibliotheken und Java EE schließlich; Die Sache mit der Java EE-Bibliothek besteht darin, dass sie nur die API-Schnittstelle und nicht die Implementierung bereitstellt. Anschließend wird die Anwendung, die Sie geschrieben und erstellt haben, auf einem container Server implementiert, der mit der Implementierung der Java EE API geliefert wird. Es gibt zwei Arten von Containern: Webcontainer (kommt nur zur Implementierung von webspezifischen Technologien) und vollständige Java EE Container (kommt mit der Implementierung von Web und anderen Java EE Technologien - Benennungsdienste, Persistenz, Transaktionen usw.).

service Es gibt keine besondere Bedeutung in Java. Es kann sich auf Web-Services beziehen, die im Grunde einen High-Level-Ansatz der Interprozesskommunikation über das Netzwerk bereitstellen.

platform Es gibt keine besondere Bedeutung in Java; Es kann als die zugrunde liegende Entwicklungsplattform (Windows, Linux) angesehen werden oder mit dem Cloud-Trend kann es sich auf Platform-as-a-Service beziehen, wo der Cloud-Provider mit der Infrastruktur und anderer Basissoftware (Betriebssystem, Datenbank, Container) kommt.

+0

So scheint es, dass Entwickler von Bibliotheken oder Framework ** Container ** als eine Reihe von verwandten ** Modulen ** nennen können? – gavenkoa

+1

Nicht wirklich; Ein Container kann als ein System betrachtet werden, das mit der Implementierung für einige APIs (und andere herstellerspezifische Einrichtungen) geliefert wird.Es bringt normalerweise eine Transaktion, Synchronisation, Persistenz und andere Einrichtungen zu einer Anwendung, so dass der Programmierer nur die Geschäftslogik handhaben kann. – m3th0dman

+0

Danke für die Antwort! – gavenkoa

27
  • Klasse:
    es normal ist, die Java-Datei .JAVA Erweiterung aufweist, und dass alle Objekte enthält, Verfahren oder etc, die Anwendung zu machen, erforderlich sind, und auch implementiert bzw. erstreckt sich ein anderes Objekt oder eine Methode aus anderen Datei .

  • Paket: Es ist Haufen Klasse (.java-Datei), die durch ihre Funktion oder ihren Namen getrennt ist. So ist es auch hilfreich für die Benennung.

  • Modul: Große Anwendungen in mehreren Teilen typischerweise aufgebaut sind, welche enger miteinander verbunden sind als nach außen. Daher möchte man diesen Teilen mehr Zugang geben als die Außenwelt. Man könnte auch wünschen, dass diese Teile an vielen Punkten im System wiederverwendet werden, ohne sich um die Synchronisation gemeinsamer Daten kümmern zu müssen. Dieser Teil heißt Modul in Java. WAR, jar usw. heißen Modul in Java-Sprache.

  • Komponente: Eine Komponente ist ein identifizierbarer Teil eines größeren Programms oder einer Konstruktion. Normalerweise stellt eine Komponente eine bestimmte Funktion oder Gruppe von verwandten Funktionen bereit. In der objektorientierten Programmierung und verteilten Objekttechnologie ist eine Komponente ein wiederverwendbarer Programmbaustein, der mit anderen Komponenten auf demselben oder anderen Computern in einem verteilten Netzwerk zu einer Anwendung kombiniert werden kann. Eine Komponente wird in einem Kontext ausgeführt, der als Container bezeichnet wird.

  • Container: Eine Komponente läuft in einem Kontext ein Behälter Behälter ist ein wichtiger Bestandteil von Web-Anwendungen in Java-basierte Java EE-Technologie genannt. Es ist verantwortlich für die Wartung der einzelnen Komponenten auf der Serverseite, zu denen Java-Servlets, Java-Server-Seiten (JSP) und Java-Server-Faces (JSF) gehören. Wie die Dienste bereitgestellt und abgerufen werden, wird durch einen Vertrag festgelegt, der eine Vereinbarung zwischen der Webanwendung und dem Container darstellt. Dies bietet eine beträchtliche Sicherheit im Java EE-Framework, da die Clientanwendungen die Existenz des Containers nicht kennen und daher nicht direkt darauf zugreifen kann. Daher ist der Webcontainer verantwortlich für die Initialisierung von Webanwendungskomponenten und das Aufrufen von Clientanforderungen für die Komponenten.

  • Service: -Service ist eine Weiterentwicklung des verteilten Rechnens auf der Grundlage der Anforderung/Antwort-Design-Paradigma für synchrone und asynchrone Anwendungen. Die Geschäftslogik einer Anwendung oder einzelne Funktionen werden modularisiert und als Services für Consumer-/Client-Anwendungen dargestellt.

  • Framework: Frameworks eine bestimmte Struktur auf dem Code auferlegen, die sie verwendet, während Bibliotheken nicht. In der Software ist das Framework ein wiederverwendbares Softwareprogramm, das die Basis für eine Anwendung bildet. Frameworks hilft den Programmierern, die Anwendung schnell zu erstellen. Früher war es sehr schwierig, komplexe Webanwendungen zu entwickeln. Nun ist es sehr einfach, eine solche Anwendung unter Verwendung verschiedener Arten von Frameworks zu entwickeln, wie Struts, Struts 2, Hibernate, JSF, Frühling usw.

  • Plattform: Plattform bezieht sich auf die gesamte Java-Entwicklungs- und Ausführungsumgebung von Sun. Java-Programme werden von einer Laufzeit-Engine (der Java Virtual Machine) ausgeführt, die sich auf dem Zielcomputer befindet. Da Java eine eigene Betriebsumgebung enthält, wird es im Gegensatz zu anderen Programmiersprachen, die nach ihrer Erstellung selbständig laufen, als "Plattform" bezeichnet. Siehe Java, Java 2, Java Virtual Machine und Java Runtime Environment.

+0

Danke für ausführliche Antwort. – gavenkoa

+0

gute Antwort Disha –

Verwandte Themen