Differences

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

Link to this comparison view

poo-ca-cd:laboratoare:intro [2025/09/27 19:30]
florian_luis.micu [Instalare Maven]
poo-ca-cd:laboratoare:intro [2025/09/30 16:40] (current)
florian_luis.micu
Line 1: Line 1:
 ===== Setup Environment:​ JDK, IntelliJ, Maven, Git ===== ===== Setup Environment:​ JDK, IntelliJ, Maven, Git =====
 +
 +  * Autori: [[miculuis1@gmail.com | Florian-Luis Micu ]], [[sorinabuf@gmail.com | Sorina-Anamaria Buf ]], [[stefancocioran@gmail.com | Ștefan Cocioran ]]
 +  * Data publicării:​ 29.09.2025
 +  * Data ultimei modificări:​ 30.09.2025
 +
  
 ==== Mediul de dezvoltare Java ==== ==== Mediul de dezvoltare Java ====
Line 5: Line 10:
 Java Development Kit (JDK) este pachetul oficial de unelte necesare pentru dezvoltarea aplicațiilor Java. Acesta include: Java Development Kit (JDK) este pachetul oficial de unelte necesare pentru dezvoltarea aplicațiilor Java. Acesta include:
  
-  * compilatorul **javac**, care transformă codul sursă în bytecode, +  * compilatorul **javac**, care transformă codul sursă în bytecode. 
-  * **Java Runtime Environment (JRE)**, pentru rularea aplicațiilor, +  * **Java Runtime Environment (JRE)**, pentru rularea aplicațiilor. 
-  * biblioteci de bază,+  * biblioteci de bază.
   * unelte pentru debugging și monitorizare.   * unelte pentru debugging și monitorizare.
  
Line 85: Line 90:
 <note important>​Adăugați cele două linii la finalul fișierului și apoi salvați modificările apăsând ''​escape''​ după care scrieți '':​wq''​.</​note>​ <note important>​Adăugați cele două linii la finalul fișierului și apoi salvați modificările apăsând ''​escape''​ după care scrieți '':​wq''​.</​note>​
  
-6. Rulați script-ul de inițializare pentru shell manual+6. Rulați script-ul de inițializare pentru shell manual:
 <code bash> <code bash>
 $ source ~/.bashrc $ source ~/.bashrc
Line 129: Line 134:
 <note important>​Deoarece lucrați într-un folder administrat de sistemul de operare va trebui să folosiți drepturi de administrator.</​note>​ <note important>​Deoarece lucrați într-un folder administrat de sistemul de operare va trebui să folosiți drepturi de administrator.</​note>​
  
-3. Intrați în folderul ''​jdk-25''​ și dați click pe address bar iar apoi click dreapta și ''​copy''​.+3. Intrați în folderul ''​jdk-25''​ și dați click pe address bar iar apoi click dreapta și ''​copy''​:
  
 {{:​poo-ca-cd:​laboratoare:​java_windows_path.png?​nolink&​500|}} {{:​poo-ca-cd:​laboratoare:​java_windows_path.png?​nolink&​500|}}
Line 148: Line 153:
  
  
-7. Apăsați tasta ''​windows''​ -> tastați "​terminal"​ și ''​enter''​ după care rulați comenzile ''​java --version''​ și ''​javac --version''​ pentru a vedea dacă utilitarele s-au instalat corect:+7. Apăsați pe ''​Edit''​ pe variabila PATH din ''​System variables'',​ apoi dați click pe ''​New''​ în fereastra nouă care s-a deschis și introduceți path-ul ''​%JAVA_HOME%\bin''​. 
 + 
 +8. Apăsați tasta ''​windows''​ -> tastați "​terminal"​ și ''​enter''​ după care rulați comenzile ''​java --version''​ și ''​javac --version''​ pentru a vedea dacă utilitarele s-au instalat corect:
  
 {{:​poo-ca-cd:​laboratoare:​java_windows_install.png?​nolink&​500|}} {{:​poo-ca-cd:​laboratoare:​java_windows_install.png?​nolink&​500|}}
Line 232: Line 239:
 3. Restart pentru a se face update la variabilele de mediu 3. Restart pentru a se face update la variabilele de mediu
  
-==== IntelliJ IDEA Ultimate Edition ====+ 
 +==== Instalare ​IntelliJ IDEA Ultimate Edition ====
  
 Fiecare student poate beneficia de o licență gratis de IntelliJ IDEA Ultimate Edition prin intermediul contului de mail de la facultate (cel cu domeniul @stud.acs.upb.ro). Versiunea de Ultimate a IDE-ului vine cu foarte multe beneficii care se rezumă principal la feature-uri noi și suport pentru mult mai multe limbaje de programare și tehnologii decât versiunea de Community. Pentru mai multe detalii, consultați pagina: https://​www.jetbrains.com/​idea/​features/​editions_comparison_matrix.html Fiecare student poate beneficia de o licență gratis de IntelliJ IDEA Ultimate Edition prin intermediul contului de mail de la facultate (cel cu domeniul @stud.acs.upb.ro). Versiunea de Ultimate a IDE-ului vine cu foarte multe beneficii care se rezumă principal la feature-uri noi și suport pentru mult mai multe limbaje de programare și tehnologii decât versiunea de Community. Pentru mai multe detalii, consultați pagina: https://​www.jetbrains.com/​idea/​features/​editions_comparison_matrix.html
Line 268: Line 276:
 ==Final steps== ==Final steps==
 După instalarea IDE-ului, veți fi nevoiți să vă logați cu contul de IntelliJ IDEA proaspăt creat, după care puteți folosi versiunea Ultimate. După instalarea IDE-ului, veți fi nevoiți să vă logați cu contul de IntelliJ IDEA proaspăt creat, după care puteți folosi versiunea Ultimate.
 +
 {{:​poo-ca-cd:​laboratoare:​login_page_intellij.png?​500|}} {{:​poo-ca-cd:​laboratoare:​login_page_intellij.png?​500|}}
  
Line 322: Line 331:
 3. Pentru a face debug codului putem apăsa pe butonul care seamănă cu un gândac (tradus în engleză "​bug"​),​ după ce am pus un breakpoint la o linie cu o instrucțiune de cod (vezi chenarele albastre din poza de mai sus). 3. Pentru a face debug codului putem apăsa pe butonul care seamănă cu un gândac (tradus în engleză "​bug"​),​ după ce am pus un breakpoint la o linie cu o instrucțiune de cod (vezi chenarele albastre din poza de mai sus).
  
-4. După ce porniți o sesiune dedebug vi se va deschide un panou special cu mai multe comenzi:+4. După ce porniți o sesiune de debugvi se va deschide un panou special cu mai multe comenzi:
  
 {{:​poo-ca-cd:​laboratoare:​intellij_debug.png?​nolink&​800|}} {{:​poo-ca-cd:​laboratoare:​intellij_debug.png?​nolink&​800|}}
Line 328: Line 337:
   * Chenarul galben: ​   * Chenarul galben: ​
     * butonul din dreapta vă permite să săriți ușor cu pasul de execuție la următorul breakpoint, deci dacă vă aflați la linia "​104"​ și următorul breakpoint este la linia "​150",​ prin apăsarea butonului veți sări direct la acea linie, totuși aveți grijă ca breakpoint-ul să fie la o linie de cod care se va executa.     * butonul din dreapta vă permite să săriți ușor cu pasul de execuție la următorul breakpoint, deci dacă vă aflați la linia "​104"​ și următorul breakpoint este la linia "​150",​ prin apăsarea butonului veți sări direct la acea linie, totuși aveți grijă ca breakpoint-ul să fie la o linie de cod care se va executa.
-    * butonul din mijloc oprește sesiunea dedebug +    * butonul din mijloc oprește sesiunea de debug. 
-    * butonul din stânga restartează sesiunea dedebug +    * butonul din stânga restartează sesiunea de debug.
   * Chenarul mov:   * Chenarul mov:
     * se afișează mai multe ''​Stack frame-uri'',​ practic dacă aveți apeluri de metode imbricate puteți apăsa pe oricare Stack Frame și astfel puteți să verificați starea obiectelor Java în momentul apelului unei metode.     * se afișează mai multe ''​Stack frame-uri'',​ practic dacă aveți apeluri de metode imbricate puteți apăsa pe oricare Stack Frame și astfel puteți să verificați starea obiectelor Java în momentul apelului unei metode.
Line 341: Line 350:
 <note tip> <note tip>
   * Noțiunile de mai sus pot fi ușor avansate, deoarece nu cunoașteți încă detalii despre programarea în Java, însă puteți reveni oricând la acest laborator pentru a vă familiariza cu procesul de, debug.   * Noțiunile de mai sus pot fi ușor avansate, deoarece nu cunoașteți încă detalii despre programarea în Java, însă puteți reveni oricând la acest laborator pentru a vă familiariza cu procesul de, debug.
-  * IntelliJ este un IDE, ceea ce înseamnă că are foarte multe utilitare de proofiling și debug care vă pot fi utile. Vă recomandăm să consultați documentația oficilă [[https://​www.jetbrains.com/​help/​idea/​debugging-your-first-java-application.html|JetBrains]] , deoarece IntelliJ este un software ​foare folosind ​în industria IT.+  * IntelliJ este un IDE, ceea ce înseamnă că are foarte multe utilitare de proofiling și debug care vă pot fi utile. Vă recomandăm să consultați documentația oficilă [[https://​www.jetbrains.com/​help/​idea/​debugging-your-first-java-application.html|JetBrains]] , deoarece IntelliJ este un software ​foarte folosit ​în industria IT.
 </​note>​ </​note>​
 ==== Comenzi de formatere cod ==== ==== Comenzi de formatere cod ====
  
-Toate se găsesc în meniul Refactor (click dreapta) și sunt foarte folositoare atunci când lucrezi la un proiect mai mare, dându-ți o mână de ajutor.+Toate se găsesc în meniul Refactor (click dreapta ​pe o secvență de cod) și sunt foarte folositoare atunci când lucrezi la un proiect mai mare, dându-ți o mână de ajutor.
  
   * **Rename** (va face automat modificări în constructori și în metoda main)   * **Rename** (va face automat modificări în constructori și în metoda main)
Line 457: Line 466:
 ==== Git ==== ==== Git ====
  
-Pentru integrare ​Git în IntelliJ consultați tutorialul ​de [[https://​ocw.cs.pub.ro/​courses/​poo-ca-cd/​resurse-utile/​tutorial-intellij-git|aici]]+Git este un tool de versionare a codului care este folosit de orice programator pentru a facilita procesul de review, back-up și versionare.
  
-== Comenzi importante ==+Vă recomandăm să citiți tutorialul exhaustiv de [[poo-ca-cd:​resurse-utile:​tutorial-git|aici]].
  
-  * **git clone:** clonează repo-ul local +<note tip> 
-  * **git add:** adaugă fișierele modificate +  ​Nu încurcați GitHub cu ''​git''​. GitHub, BitBucket, GitLab sunt interfețe web peste tool-ul ''​git''​. 
-  * **git commit:** salvează fișierele +  * Nu este obligatoriu să folosiți direct ''​git'',​ există tool-uri grafice care vă pot ușura munca dacă preferaținterfețele grafice
-  * **git push:** adaugă fișierele pe repo +    * **IntelliJ** are suport integrat pentru ''​git''​ dintr-un panou dedicat. Pentru detalii consultați documentația de [[https://​www.jetbrains.com/​help/​idea/​using-git-integration.html|aici]] după ce ați terminat de parcurs ghidul de mai sus despre ''​git''​. 
-  * **git branch <nume branch>:​** creează un nou branch +    GitHub vă pune la dispoziție aplicația ​**GitHub Desktop** pentru Windows ​și macOS. Pentru detalii consultați documentația de [[https://desktop.github.com/​download/​|aici]] după ce ați terminat de parcurs ghidul de mai sus despre ''​git''​.
-  * **git checkout <nume branch>:​** mută pe alt branch +
-  * **git pull:** preia schimbările din repo șle adaugă local +
-  * **git status:** arată statusul proiectului,​ ce fișiere au fost schimbate +
-  * **git rebase** +
- +
-== Workflow cu Git din Git Bash == +
- +
-  * git clone <​link>​ +
-    * pentru a adăuga repo-ul local (sau git pull dacă aveți deja clonat repo-ul pe local și s-au produs schimbări) +
-  * git branch <nume branch> +
-  git checkout <nume branch>  +
-  * lucrăm în repo, modificăm și adaugăm fișiere +
-  ​git add <​fișiere>​  +
-  ​git commit -m “Mesaj de commit” +
-  ​git push -u origin <name branch>​ +
-  ​intrăm pe GitHub ​și facem Pull Request +
- +
-<note important>​ +
-  * Tutorial: {{:​poo-ca-cd:​laboratoare:upload_git_with_gitbash.pdf|Workflow cu Git din Git Bash}} +
-  * Dacă vreți să folosiți Git-ul integrat din IntelliJ: {{:​poo-ca-cd:​laboratoare:​upload_git_with_inteliij.pdf|Workflow cu Git din IntelliJ}}+
 </​note>​ </​note>​
  
 <note warning> <note warning>
-Vă recomandăm să consultați următorul tutorial despre [[poo-ca-cd:​resurse-utile:​tutorial-git|Git]], deoarece ​veți folosi acest utilitar și la **teme**.+Vă rugăm să parcurgeți cu atenție tutorialul de mai sus, deoarece ​va trebui să folosiți ''​git'' ​la teme.
 </​note>​ </​note>​
  
-==== GitHub Desktop ==== 
  
-GitHub Desktop este un tool dezvoltat de GitHub care simplifică lucrul cu Git. Avantajul acestuia este că acesta ajută printr-o interfață grafică user-friendly realizarea flow-ului descris mai sus și ușurează folosirea diferitelor comenzi disponibile. Momentan este disponibil pentru Windows si macOS. Acesta poate fi descărcat accesând acest [[https://​desktop.github.com/​|link]]. 
  
-<note important>​ 
-În continuare puteți găsi un tutorial de folosire a GitHub Desktop în care se crează un branch nou, se adaugă modificările făcute pe repository și se face rebase la branch-ul respectiv: {{:​poo-ca-cd:​laboratoare:​tutorial_github_desktop.pdf|Tutorial}} 
-</​note>​ 
poo-ca-cd/laboratoare/intro.1758990611.txt.gz · Last modified: 2025/09/27 19:30 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