Quins són els components de Java Architecture?

Java Architecture combina el procés de compilació i interpretació. En aquest article, us explicaré els diversos components de l'arquitectura Java

Java Architecture combina el procés de compilació i interpretació. Explica els diversos processos implicats mentre es formula un . Abans de començar amb el tema, deixeu-me presentar-vos l'agenda d'aquest article.



A continuació es detallaran els nostres temes de debat:



Comencem per entendre què és exactament Java Architecture?



Què és Java Architecture?

Aquí us explicaré l'arquitectura Java en passos senzills.

  • A Java, hi ha un procés de recopilació i interpretació.
  • El codi escrit en , es converteix en codis de bytes que fa el compilador Java.
  • Els codis de bytes, després, es converteixen en codi de màquina per la JVM.
  • El codi de la màquina és executat directament per la màquina.

Aquest diagrama il·lustra el funcionament intern d'un codi Java o, precisament, l'arquitectura Java.



JVM - Arquitectura Java - EdurekaAra, aprofundim una mica més en l’arquitectura Java i parlem de diversos .

c ++ salta a la línia

Components de l'arquitectura Java

Hi ha tres components principals del llenguatge Java: JVM, JRE i JDK .

Java Virtual Machine, Java Runtime Environment i Java Development Kit respectivament.

Deixeu-me elaborar cadascun d'ells un per un:

Màquina virtual Java:

Heu sentit a parlar mai de WORA? (Escriu una vegada Run Anywhere). Doncs bé, les aplicacions Java s’anomenen WORA per la seva capacitat d’executar un codi en qualsevol plataforma. Això només es fa a causa de JVM. La JVM és un component de plataforma Java que proporciona un entorn per executar programes Java. JVM interpreta el bytecode en codi de màquina que s'executa a la màquina en què s'executa el programa Java.

Per tant, en poques paraules, JVM realitza les funcions següents:

  • Carrega el codi
  • Verifica el codi
  • Executa el codi
  • Proporciona un entorn d'execució

Ara, deixeu-me que us mostri l'arquitectura JVM. Aquí va!

Explicació:

Class Loader : El carregador de classes és un subsistema de JVM. S'utilitza per carregar fitxers de classe. Sempre que executem el programa Java, el carregador de classes el carrega primer.

Àrea del mètode de classe : És una de les àrees de dades de JVM, en què s'emmagatzemaran les dades de la classe. Les variables estàtiques, els blocs estàtics, els mètodes estàtics i els mètodes d’instància s’emmagatzemen en aquesta àrea.

Munt : Es crea un munt quan s'inicia la JVM. Pot augmentar o disminuir la mida mentre s’aplica l’aplicació.

Pila : La pila JVM es coneix com a pila de fils. És una àrea de dades de la memòria JVM que es crea per a un únic fil d'execució. El fil utilitza la pila JVM d’un fil per emmagatzemar diversos elements, és a dir, variables locals, resultats parcials i dades per al mètode de trucada i els retorns.

Pila nativa : Subsumeix tots els mètodes natius utilitzats a la vostra aplicació.

Motor d'execució:

  • Compilador Jit
  • Abocador

Compilador JIT: El Compilador Just-In-Time (JIT) és una part de l'entorn d'execució. Ajuda a millorar el rendiment de les aplicacions Java mitjançant la compilació de codis byt a codi de màquina en temps d'execució. El compilador JIT està habilitat per defecte. Quan es compila un mètode, la JVM crida directament al codi compilat d'aquest mètode. El compilador JIT compila el bytecode d'aquest mètode en codi de màquina, compilant-lo 'just a temps' per executar-lo.

Abocador: Com el seu nom explica Abocador significa recollir el material no utilitzat. Bé, a JVM aquest treball el fa la recollida d’escombraries. Realitza un seguiment de tots i cadascun dels objectes disponibles a l’espai d’emmagatzematge dinàmic de la JVM i elimina els no desitjats.
El col·lector de deixalles funciona en dos senzills passos coneguts com a Mark and Sweep:

  • Marca: és on el recollidor d'escombraries identifica quina peça de memòria s'utilitza i quines no
  • Escombrat: elimina els objectes identificats durant la fase de 'marca'.

Entorn d'execució de Java:

El programari JRE crea un entorn d'execució en el qual es poden executar programes Java. El JRE és el sistema en disc que pren el vostre codi Java, el combina amb les biblioteques necessàries i inicia la JVM per executar-lo. El JRE conté biblioteques i programari necessaris per executar els vostres programes Java. JRE forma part de JDK (que estudiarem més endavant) però es pot descarregar per separat.

Kit de desenvolupament de Java:

El Java Development Kit (JDK) és un entorn de desenvolupament de programari utilitzat per desenvolupar aplicacions i miniaplicacions Java. Conté JRE i diverses eines de desenvolupament, un intèrpret / carregador (java), un compilador (javac), un arxiu (jar), un generador de documentació (javadoc) acompanyat d’una altra eina.

La zona blava que es mostra al diagrama és JDK. Ara, deixeu-me elaborar les eines de desenvolupament per a tots vosaltres.

java : és el llançador de totes les aplicacions Java.
javac : compatible amb els llenguatges de programació java.
javadoc : és el generador de documentació de l'API.
pot : crea i gestiona tots els fitxers JAR.

Seguint amb l'arquitectura Java, entenem com la plataforma Java és independent?

Com és independent la plataforma Java?

Quan es diu que qualsevol llenguatge de programació és independent de la plataforma? Bé, si i només si pot funcionar en tots els sistemes operatius disponibles pel que fa al seu desenvolupament i compilació.
Ara, Java és independent de la plataforma només a causa del bytecode. Deixeu-me dir-vos què és exactament un bytecode? En termes simples,
Bytecode és un codi de la JVM que s’entén per màquina.
L'execució de codis byt a Java demostra que és un llenguatge independent de la plataforma.
Aquí us mostraré els passos implicats en el procés d’execució de bytecode de Java.

A continuació es mostra l’explicació dels passos implicats:

sample.java → javac (sample. class) → JVM (sample.obj) → sortida final

El compilador Java utilitza el primer codi font i es converteix en un fitxer .class. El codi del fitxer de classe es troba en forma de codi de bytes i JVM utilitza aquest fitxer de classe per convertir-lo en un fitxer objecte. Després d'això, podeu veure la sortida final a la pantalla.

Avançant a l'article sobre l'arquitectura Java, entenem el concepte de JIT a Java .

JIT a Java

El compilador Just In Time conegut normalment com a JIT, és bàsicament responsable de l'optimització del rendiment de les aplicacions basades en Java en temps d'execució. El rendiment d'una aplicació depèn d'un compilador.
Aquí teniu un esquema senzill que us mostra el procés intern en curs.

Compilador JIT - Arquitectura Java - Edureka

El compilador JIT compila el codi de bytes del mètode en codi de màquina, compilant-lo 'Just In Time' per executar-lo. Quan es compila un mètode, la JVM crida directament al codi compilat d'aquest mètode.
Aprofundim:
El codi de bytes s’ha d’interpretar o compilar segons les instruccions adequades de la màquina, en funció del conjunt d’instruccions proporcionat. A més, es poden executar directament si l'arquitectura d'instruccions està basada en codi de bytes. La interpretació del codi de bytes afecta la velocitat d’execució.
Per tal de millorar el rendiment, els compiladors JIT interactuen amb la màquina virtual de Java (JVM) en temps d'execució i compilen seqüències de bytecode adequades en codi de màquina natiu (com es mostra al diagrama). Mentre s’utilitza un compilador JIT, el maquinari és capaç d’executar el codi natiu, en comparació amb el fet que la JVM interpreti la mateixa seqüència de bytecode repetidament i incorri en despeses generals per al procés de traducció.

Amb això, he arribat al final d’aquest article sobre Java Architecture. Espero que els temes comentats anteriorment aportin un valor afegit al vostre coneixement de Java. Estigueu atents a més articles.

Ara que ja heu entès els conceptes bàsics de Java, consulteu el fitxer per Edureka, una empresa d'aprenentatge en línia de confiança amb una xarxa de més de 250.000 estudiants satisfets repartits per tot el món. El curs de formació i certificació de Java J2EE i SOA d’Edureka està dissenyat per a estudiants i professionals que vulguin ser desenvolupador de Java. El curs està dissenyat per donar-vos un avantatge en la programació de Java i formar-vos tant per a conceptes bàsics com avançats de Java, juntament amb diversos marcs Java com Hibernate i Spring.

és un màster considerat postgrau

Tens alguna pregunta? Si us plau, mencioneu-ho a la secció de comentaris d’aquest bloc “Arquitectura Java i els seus components” i us respondrem el més aviat possible.