Differences

This shows you the differences between two versions of the page.

Link to this comparison view

poo-ca-cd:laboratoare:limbajul-java [2025/09/30 16:11]
florian_luis.micu
poo-ca-cd:laboratoare:limbajul-java [2025/10/01 21:55] (current)
florian_luis.micu
Line 27: Line 27:
  
 <note warning> <note warning>
-  * În acest laborator există mai multe secțiuni marcate **[Extra mile]**. Aceste secțiuni cuprind informații **bonus** care vă pot fi prezentate în **timpul laboratorului** sau pe care le puteți aprofunda **în afara** acestuia, ele nefiind necesare pentru laboratoarele viitoare sau pentru teme. +  * În acest laborator există mai multe secțiuni marcate **[Optional]**. Aceste secțiuni cuprind informații **bonus** care vă pot fi prezentate în **timpul laboratorului** sau pe care le puteți aprofunda **în afara** acestuia, ele nefiind necesare pentru laboratoarele viitoare sau pentru teme. 
-  * De asemenea, veți întâlni câteva secțiuni marcate **[Extra mile recomandat]**. Vă recomandăm ca acestea să aibă **prioritate** în parcurgerea secțiunilor de tip **[Extra mile]**, deoarece vă pot oferi informații bonus care să fie și foarte probabil utile pentru **teme** sau **laboratoare viitoare**.+  * De asemenea, veți întâlni câteva secțiuni marcate **[Nice to know]**. Vă recomandăm ca acestea să aibă **prioritate** în parcurgerea secțiunilor de tip **[Optional]**, deoarece vă pot oferi informații bonus care să fie și foarte probabil utile pentru **teme** sau **laboratoare viitoare**.
   * Verificați că ați instalat toate utilitarele din [[poo-ca-cd:​laboratoare:​intro|laboratorul 0]]. Dacă ați întâmpinat probleme sau aveți nevoie de clarificări **discutați cu laborantul**.   * Verificați că ați instalat toate utilitarele din [[poo-ca-cd:​laboratoare:​intro|laboratorul 0]]. Dacă ați întâmpinat probleme sau aveți nevoie de clarificări **discutați cu laborantul**.
 </​note>​ </​note>​
Line 127: Line 127:
  
 ==== ==== ==== ====
-<spoiler [Extra mile] Despre primitive>​+<spoiler [Optional] Despre primitive>​
 **Mărimea tipului char** **Mărimea tipului char**
  
Line 622: Line 622:
  
 ==== ==== ==== ====
-<spoiler [Extra mile] Alte funcționalități ale javac>+<spoiler [Optional] Alte funcționalități ale javac>
 **Recompilare inteligentă** **Recompilare inteligentă**
  
Line 679: Line 679:
  
 <note tip> <note tip>
-Datorită pasului de compilare pentru transformarea fișierelor din cod Java în bytecode, dar și a JVM-ului, care folosește un mecanism de interpretare a bytecode-ului,​ Java este considerat un **limbaj compilat și interpretat**. Pentru mai multe detalii, consultați secțiunea **[Extra mile]** de mai jos.+Datorită pasului de compilare pentru transformarea fișierelor din cod Java în bytecode, dar și a JVM-ului, care folosește un mecanism de interpretare a bytecode-ului,​ Java este considerat un **limbaj compilat și interpretat**. Pentru mai multe detalii, consultați secțiunea **[Optional]** de mai jos.
 </​note>​ </​note>​
  
-<spoiler [Extra mile] JVM și JIT în detaliu>+<spoiler [Optional] JVM și JIT în detaliu>
 **1. Încărcarea claselor (Class Loader)** **1. Încărcarea claselor (Class Loader)**
  
Line 758: Line 758:
  
 <note warning> <note warning>
-Vă recomandăm să parcurgeți următoarele două secțiuni **[Extra mile recomandat]**, deoarece acestea vă vor învăța mai multe despre structura proiectelor Java și despre adăugarea dependențelor. Următoarele laboratoare **nu necesită** informații despre aceste concepte și temele pot fi făcute **fără** să cunoașteți detaliile menționate,​ dar cu siguranță vă pot ajuta pentru anumite scenarii de **debug** sau la **personalizarea** proiectului prin dependențe extra. ​+Vă recomandăm să parcurgeți următoarele două secțiuni **[Nice to know]**, deoarece acestea vă vor învăța mai multe despre structura proiectelor Java și despre adăugarea dependențelor. Următoarele laboratoare **nu necesită** informații despre aceste concepte și temele pot fi făcute **fără** să cunoașteți detaliile menționate,​ dar cu siguranță vă pot ajuta pentru anumite scenarii de **debug** sau la **personalizarea** proiectului prin dependențe extra. ​
 </​note>​ </​note>​
-====[Extra mile recomandat] Executabile JAR====+====[Nice to know] Executabile JAR====
 Un **JAR (Java ARchive)** este un fișier comprimat (similar cu un ''​.zip''​) care conține clase compilate ''​.class'',​ resurse (imagini, fișiere de configurare) și metadate necesare pentru rularea sau distribuirea unei aplicații Java. Un **JAR (Java ARchive)** este un fișier comprimat (similar cu un ''​.zip''​) care conține clase compilate ''​.class'',​ resurse (imagini, fișiere de configurare) și metadate necesare pentru rularea sau distribuirea unei aplicații Java.
  
Line 784: Line 784:
 </​code>​ </​code>​
  
-====[Extra mile recomandat] Sisteme de build și management de proiecte====+====[Nice to know] Sisteme de build și management de proiecte====
 Un sistem de build și management de proiect este responsabil cu facilitarea compilării și rulării unui proiect. Proiectele Java folosesc trei sisteme de build: Un sistem de build și management de proiect este responsabil cu facilitarea compilării și rulării unui proiect. Proiectele Java folosesc trei sisteme de build:
   * IntelliJ build system: folosit pentru proiecte personale simple, nu este preferat pentru proiecte mari sau enterprise.   * IntelliJ build system: folosit pentru proiecte personale simple, nu este preferat pentru proiecte mari sau enterprise.
Line 895: Line 895:
 </​note>​ </​note>​
  
-====[Extra mile] Java din linia de comandă====+====[Optional] Java din linia de comandă====
 ''​JShell''​ este un instrument introdus în **Java 9** care oferă un mediu interactiv (**REPL – Read-Eval-Print-Loop**). El permite rularea de instrucțiuni Java fără a mai crea fișiere ''​.java''​ și fără a compila manual cu ''​javac''​. Este foarte util pentru testarea rapidă a expresiilor,​ a fragmentelor de cod sau pentru învățare. ''​JShell''​ este un instrument introdus în **Java 9** care oferă un mediu interactiv (**REPL – Read-Eval-Print-Loop**). El permite rularea de instrucțiuni Java fără a mai crea fișiere ''​.java''​ și fără a compila manual cu ''​javac''​. Este foarte util pentru testarea rapidă a expresiilor,​ a fragmentelor de cod sau pentru învățare.
  
Line 921: Line 921:
     * ''/​exit'':​ termină sesiunea.     * ''/​exit'':​ termină sesiunea.
  
-====[Extra mile] System properties în Java====+====[Optional] System properties în Java====
 Java oferă o modalitate portabilă de a configura aplicațiile prin **System Properties**,​ concret perechi **cheie-valoare** transmise la pornirea JVM. System properties sunt utile pentru a configura aplicația Java la momentul pornirii, fără a modifica codul sursă. ​ Java oferă o modalitate portabilă de a configura aplicațiile prin **System Properties**,​ concret perechi **cheie-valoare** transmise la pornirea JVM. System properties sunt utile pentru a configura aplicația Java la momentul pornirii, fără a modifica codul sursă. ​
  
Line 952: Line 952:
 </​note>​ </​note>​
  
-====[Extra mile] Classpath====+====[Optional] Classpath====
  
 Classpath-ul este lista de directoare și fișiere ''​.jar''​ unde compilatorul ''​javac''​ și JVM-ul ''​java''​ caută clasele necesare pentru compilare și execuție. Classpath-ul este lista de directoare și fișiere ''​.jar''​ unde compilatorul ''​javac''​ și JVM-ul ''​java''​ caută clasele necesare pentru compilare și execuție.
poo-ca-cd/laboratoare/limbajul-java.txt · Last modified: 2025/10/01 21:55 by florian_luis.micu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0