Classe vs paquet vs module vs composant vs conteneur vs service vs plate-forme dans le monde Java
Je suis novice en Java monde (7 ans de faible niveau de la plaine C).
Quand j'ai commencé la lecture de Java sites connexes:
- http://wiki.apidesign.org/wiki/Main_Page
- http://static.springsource.org/spring/docs/3.1.x/spring-framework-reference/html/
J'ai confondu par la terminologie existante:
- classe
- paquet
- module
- composant
- conteneur
- service
- cadre
- plate-forme
J'ai trouvé beaucoup de ressources sur les conditions de définition (et beaucoup plus):
- Cadre vs Toolkit vs Bibliothèque
- La différence entre le cadre et le contenant?
- Quelles sont les conteneurs Java
- Définition d'un Conteneur Java
- http://martinfowler.com/articles/injection.html (Inversion de Contrôle des Conteneurs et l'Injection de Dépendance modèle)
- http://www.cafeaulait.org/course/week8/36.html (Ce qui est un AWT Conteneur?)
- http://en.wikipedia.org/wiki/Web_container
- http://netbeans.org/features/platform/ (La Plateforme NetBeans)
- Ce que l'on entend par "cadre d'application"?
- Qu'est ce qu'un framework logiciel?
- Quelle est la différence entre un cadre et d'une bibliothèque?
- Quelle est la différence entre une bibliothèque et d'un cadre
- https://stackoverflow.com/questions/11576018/what-is-the-difference-between-a-javascript-framework-and-a-library
- Quelle est la différence majeure entre un cadre et une boîte à outils?
- http://blog.orderharmony.com/2011/07/libraries-vs-frameworks.html
- http://www.javacodegeeks.com/2012/04/frameworks-vs-libraries-as-inheritance.html
- La différence entre la bibliothèque, la plate-forme et le cadre?
- Quelle est la différence entre une plateforme et d'un cadre?
- quelle est la différence entre un cadre et une plate-forme
- La différence entre un module, d'une bibliothèque et d'un cadre
mais chacune de ces ressources définir sur ses propres fins et je n'ai pas encore distincts, par exemple le module de la composante dans le cas général.
Veuillez expliquer ce que signifie ces termes dans la grande image (peut être à une seule classe d'une plate-forme, quel est le montant des modules est nécessaire de faire un conteneur, etc).
Mise à JOUR 2019 De https://www.artima.com/lejava/articles/reuse3.html (mon soulignant)
Bill Venners: Quelle est la différence entre un cadre, une plate-forme, et une boîte à outils, et quels sont les différents besoins de flexibilité?
Erich Gamma: Avec un plate-forme - je associer la stabilité à long terme. Il est sûr de construire au-dessus d'une plate-forme. Une plate-forme rend compatibilité garanties. Les cadres n'ont pas souvent de cette qualité, et j'ai vu de nombreuses cadre échecs à l'égard de stabilité. Si vous regardez l'Éclipse, oui, il comprend des cadres, des boîtes à outils, et fournit la plate-forme Api. Tout cela est livré sous forme de plugins. Cadres abstraits et assurer un haut niveau de fonctionnalité par défaut. Pour ce faire, l' cadre doit être dans le contrôle. Cette perte de contrôle peut conduire à ce qui est parfois appelé frameworkitis.
Bill Venners: Et boîtes à outils n'est pas parce que...
Erich Gamma: Avec boîtes à outils vous créer et appeler trousse d'objets et d'enregistrer les auditeurs à réagir aux événements. Vous êtes dans le contrôle. Cadres essayer d'être en contrôle et vous dire quand faire ce. Un toolkit vous donne la blocs de construction mais c'est à vous d'être en contrôle.
Une autre citation répond à ma question naïve combien de classes fait quelque chose d'un cadre:
https://www.artima.com/lejava/articles/reuse.html
Erich Gamma: ... JUnit est un petit cadre, par exemple. C'est le "Hello, world" de cadres de. Vous avez
Test
,TestCase
,TestSuite
et les relations définies. Aussi, vous intervenez dans les cadres de sous-classement par quelque part. Ils utilisent ce que l'on appelle Hollywood principe de "ne nous appelez pas, nous vous appellerons." Le cadre permet de définir votre comportement personnalisé, et il va vous appeler en arrière quand c'est à votre tour de faire quelque chose. Même avec JUnit, droit? Il vous appelle en arrière quand il veut exécuter un test pour vous, mais le reste est fait dans le cadre.
- Hey! Arrêter de clôture ))
- Arrêter d'essayer de comprendre et de commencer à faire. Démarrer avec Java tutoriels et vous devrez répondre à des questions par défaut. Le reste deviendra clair avec de l'expérience
- Êtes-vous essayer de comprendre l'ensemble du monde java et l'ensemble de ses terminologie sans projet et sans avoir à écrire une seule ligne de code Java? Avez-vous essayé de lire l'Oracle Java tutoriels en premier?
- J'écris JNI interfaces et la libération de plusieurs la sécurité des bibliothèques Java mais il utilise seulement algorithmique (si/pour/tout) Java 1.1 capacités. N'importe quelle entreprise... Et comme je l'ai écrit, j'ai lu plusieurs de référence pour éviter d'écrire muet code. Il est difficile de venir à JAVA EE monde.
- J'apprécie ce que vous êtes en train de faire, mais une demande pour une grande liste de définitions n'est pas vraiment le genre de question que Débordement de Pile est conçu pour gérer. Si vous devez absolument demander, au moins poster une question distincte pour chaque terme, vous avez besoin de la définition de l', et expliquez ce que vous savez déjà à propos de la durée (dans vos mots, et pas seulement un lien).
- Ok, je comprends.
Vous devez vous connecter pour publier un commentaire.
class
Une classe est le plan d'action pour la création des objets dans la classe de base de la programmation orientée objet; vous devez apprendre les bases de la programmation orientée objet et de comprendre ce qu'un objet, qu'une classe est, qu'est-ce que l'héritage, le polymorphisme, l'encapsulation avant d'apprendre quoi que ce soit d'autre au sujet de Java.
package
Un package est un espace de noms; il vous permet de gérer les conflits de noms. Essentiellement, il vous permet d'avoir deux classes nommées Employé, s'ils sont dans différents paquets.
module
Il fait probablement référence à la façon dont les bibliothèques Java sont distribués et utilisés - JAR, WAR, EAR.component
Peut être considéré comme la classe de base de GUI dans AWT (ou JComponent en Swing) ou peut être vu comme un type de fichier EJB - un POJO (Plain Old Java Object) qui répond à certaines exigences; il est possible d'avoir d'autres significations, et dépend du contexte.container
En application d'entreprise, vous avez évidemment utiliser des bibliothèques et Java EE finalement, la seule chose à propos de Java EE bibliothèque est qu'elle ne donne l'API de l'interface et non pas de la mise en œuvre. Ensuite, l'application que vous avez écrit et construit déployée dans unecontainer
serveur qui vient avec la mise en œuvre de l'API Java EE. Il existe deux types de conteneurs: les conteneurs web (uniquement à la mise en œuvre des web technologies spécifiques) et Java EE conteneurs (livré avec la mise en œuvre de web et d'autres technologies Java EE - services de nommage, la persistance, transactions, etc).service
Il n'y a pas de signification particulière en Java. Il peut être lié à des services web qui sont essentiellement de fournir un haut niveau de l'approche de l'Inter Processus Communication sur le réseau.platform
Il n'y a pas de signification particulière en Java; il peut être vu comme un sous-tendent le développement de la plate-forme (Windows, Linux) ou avec le nuage de tendance, il peut faire référence à Platform-as-a-Service où le fournisseur de cloud vient avec l'infrastructure et d'autres logiciels de base (système d'exploitation, base de données, contenant).Classe:
il est normal de java fichier .extension java et qui contient tous les objet, d'une méthode ou d', etc, qui sont nécessaires pour faire la demande et met également en œuvre ou s'étend autres objet ou d'une méthode à partir d'un autre fichier.
Package:
Il est des tas de classe(.java) fichier qui est séparée par leur fonction ou leur nom. ainsi en est-il de l'aide pour le nommage.
Module:
Les grandes applications sont généralement construits en plusieurs parties, qui sont plus étroitement liés les uns aux autres que pour l'extérieur. Donc, on aimerait donner à ces pièces de plus d'un accès aux autres que le monde extérieur est. On pourrait aussi souhaiter que ces pièces réutilisées à plusieurs points dans le système sans se soucier de la synchronisation de données partagées. cette partie est appelée module en java.
La GUERRE, pot etc sont appelés module en langage java.
Composant:
Un composant est une partie identifiable d'un programme ou de la construction. Généralement, un composant fournit une fonction particulière ou un groupe de fonctions associées.
Dans la programmation orientée objet et de l'objet distribué de la technologie, un composant est une réutilisables programme de construction de bloc qui peut être combiné avec d'autres composants de la même ou d'autres ordinateurs dans un réseau distribué pour former une application.
Un composant s'exécute dans un contexte appelé conteneur.
Conteneur:
Un composant s'exécute dans un contexte appelé conteneur.Le conteneur est un élément important d'applications Web en Java Java EE de la technologie. Il est chargé de maintenir les différents composants sur le côté serveur, qui incluent Java servlets, JSP(Java server pages) et Java server faces(JSF). Comment les services seront offerts et accessibles est déterminée par un contrat, qui est un accord entre l'application Web et le conteneur. Cela fournit une quantité considérable de sécurité dans Java EE-cadre parce que les applications clientes sont pas au courant de l'existence du conteneur et, par conséquent, il n'est pas accessible directement. Ainsi, le conteneur Web est responsable de l'initialisation des composants d'applications Web et de faire appel à des demandes du client sur les composants.
Service:
Le Service est une évolution de l'informatique distribuée en fonction de la demande/répondre paradigme de conception synchrone et asynchrone applications. Une logique métier de l'application ou des fonctions individuelles sont modulables et présentés comme des services pour les consommateurs/clients des applications.
Cadre:
Cadres imposer une structure définie sur le code qui les utilise, tandis que les bibliothèques ne sont pas. Dans le logiciel, un framework est un ensemble de logiciels réutilisables programme qui forme la base pour une application. Cadres aide les programmeurs à créer l'application rapidement. Auparavant, il a été très dur pour développer des applications web complexes. Maintenant il est très facile de développer une telle application à l'aide de différents types de cadres tels que Struts, Struts 2, Hibernate, JSF, Spring, etc.
Plate-forme:
Plate-forme se réfère à l'ensemble du développement Java et de l'environnement d'exécution de Soleil. Les programmes Java sont exécutées par un moteur d'exécution (Java Virtual Machine) qui se trouve dans l'ordinateur cible. Depuis Java contient son propre environnement d'exploitation, il a été appelé "plate-forme", contrairement à d'autres langages de programmation qui, une fois compilé, exécuter par eux-mêmes. Voir Java, Java 2, la Machine Virtuelle Java et Java Runtime Environment.