Skip to content

Laborator de Programare Orientată pe Obiecte, Facultatea de Matematică și Informatică @ Universitatea din București

License

Notifications You must be signed in to change notification settings

tibmax01/oop-lab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Laborator POO 2025-2026, semestrul I

Laborator de Programare Orientată pe Obiecte, Facultatea de Matematică și Informatică @ Universitatea din București

Acknowledgements

Mulțumiri lui @mcmarius pentru materialele puse la dispoziție pentru buna desfășurare a acestui laborator!

Cuprins

  1. Despre Evaluare
  2. Despre Prezențe
  3. Despre Proiect
  4. Despre Colocviu
  5. Calendar Laborator
  6. Materiale Laborator
  7. Alte Materiale Utile
  8. Contact

Despre Evaluare

Componenta de laborator reprezintă 50% din nota finală de la această disciplină. Ea se obține din alte două sub-componente: o parte practică (care se va implementa pe parcursul întregului semestru) și un colocviu (la final de semestru).

Fiecare dintre cele două componente ale laboratorului valorează câte 50% din nota de laborator. Altfel spus, notarea la această disciplină se face în felul următor:

  • 50% examen de curs;
  • 25% proiect (P) - aici vom lucra noi;
  • 25% colocviu de laborator (C) - aici vom lucra noi;
  • 0.5 puncte bonus din seminar (S) - aici vom lucra noi.

Notele maxime pe care le puteți obține în cadrul acestui laborator:

  • P = max. 12 puncte (2p reprezintă bonus);
  • C = max. 1x puncte (rămâne de stabilit conform baremului).

Există prag pentru fiecare componentă a evaluarii:

    nota_P = evaluare_proiect(P1, P2, P3, bonus_P);
    if (nota_P < 5) {
        return "PICAT LA POO! Nu mergem la colocviu... :(";
    } // dacă luăm peste 5, mergem mai departe la colocviu

    nota_C = evaluare_colocviu(C, bonus_C);
    if (nota_C < 5) {
        return "PICAT LA POO! Nu mergem la examenul de curs... :(";
    } // dacă luăm peste 5, mergem mai departe la examenul de curs

    nota_curs = evaluare_curs(curs);
    if (nota_curs < 5) {
        return "PICAT LA POO! :(";
    }

    return "TRECUT LA POO! :);

Despre Prezențe

  • În cadrul laboratorului SUNT obligatorii minim 10 prezențe.
  • În cazul seminarului, prezențele nu sunt obligatorii, dar sunt recomandate.

Voi face prezența, voi nota și activitatea: pot (nu garantez) ține cont de aceste aspecte și la evaluare.

Este obligatoriu să fiți prezenți la orele de prezentări în care se va evalua munca depusă în cadrul componentei practice. Dacă nu veniți la prezentările de proiecte, veți primi 0 puncte pe milestone-ul respectiv:

    P1 = prezent_P1 ? evaluare_P1() : 0;
    P2 = prezent_P2 ? evaluare_P2() : 0;
    P3 = prezent_P3 ? evaluare_P3() : 0;
    bonus_P = evaluare_bonus_P();
    // nota finala proiect
    nota_P = evaluare_proiect(P1, P2, P3, bonus_P);

Calendarul activităților se regăsește aici.

ALTE REGULI IMPORTANTE!

  • Prezența la laborator NU garantează promovarea acestuia!

  • NU se acceptă prezentarea proiectului la final de semestru: (P = 0).

  • Pentru întârzieri se aplică penalizări: (2.5p / laborator de întârizere).

  • Pentru neîntrunirea numărului de prezențe se aplică penalizări, după cum urmează:

        nof_prezente = get_nof_prezente();
        if (nof_prezente >= 10) return;
    
        // calculeaza coeficientul de penalizare
        nof_absente = 10 - nof_prezente;
        coef_penalizare = (nof_absente < 4) ? 1 : 2;
    
        // calculeaza nota finala
        nota_P = nota_P - nof_absente * coef_penalizare;

Acest laborator este o componentă mai mult autodidactă. Sunteți responsabili (într-o oarecare măsură) pentru succesul vostru la colocviu.

Despre Proiect

Componenta practică a acestui laborator constă în realizarea unui proiect care îndeplinește o serie de cerințe.

Temele de proiect se pot alege în mod independent. Nu sunt restricții, însă trebuie să vă asigurați că aceste criterii pot fi îndeplinite prin tema pe care decideți să o alegeți. Aveți dreptul să vă schimbați tema proiectului o singură dată, după M1 (cu o singură condiție: rezolvarea cerințelor din M1 și pentru noua temă a proiectului). Până la M1 aveți libertatea să vă schimbați tema oricând.

Există această pagină în care puteți observa câteva idei de teme care au fost alese în trecut: HoF.md. Există și proiecte interzise!


Etapele de realizare a acestei componente sunt:

Configurarea mediului de lucru

Milestone 1 - compunere, constructori, cc, op=, destr, op<<

Milestone 2 - moștenire, virtual, excepții, dynamic_cast

Milestone 3 - templates (șabloane), design patterns (șabloane de proiectare)

Găsiți informații utile în fișierele markdown aferente fiecărui milestone. Vă recomand să treceți prin acestea.

Bonusul pentru proiect se acordă pentru cele mai faine proiecte din grupa respectivă:

  • 1-2 bonusuri de 2 puncte;
  • 1-2 bonusuri de 1.5 puncte;
  • 1-2 bonusuri de 1 punct;
  • 1-2 bonusuri de 0.5 puncte.

Proiectele trebuie să fie ceva mai complexe în comparație cu restul proiectelor din grupă. Nu este obligatoriu ca acest bonus să fie acordat cuiva, acesta fiind acordat doar dacă proiectul chiar este complex.


Pentru gestionarea și evaluarea facilă a proiectului, se va utiliza un template. Detalii despre acesta puteți găsi aici.


Evaluarea proiectului se face pentru fiecare milestone. Acestă evaluare constă în prezentarea + explicarea, în câteva minute, a progresului din respectivul milestone, într-o serie de întrebări la care trebuie să răspundeți.

După fiecare feedback, aveți șansa să vă reparați o parte din muncă. Acest lucru poate afecta nota pozitiv sau negativ, în funcție de ce ați făcut sau nu ați făcut în urma feedback-ului primit: nu puteți primi punctajul maxim, ci doar un mic punctaj parțial.

În cazul în care nu respectați cerințele generale impuse în template sau veniți la cu întârziere NU acord feedback, ci direct nota.

Despre Colocviu

Colocviul reprezintă un examen de laborator prin care vi se vor testa conoștințele dobândite în cadrul acestui laborator prin implementarea unor cerințe folosind tehnici POO.

Mai multe detalii, vor fi anunțate în proximitatea acestuia. Până atunci, câteva sfaturi pentru colocviu puteți găsi aici.

Calendar Activități

Activitate Săptămâna Calendar Action Item
Laborator 1 (263) Săptămâna 1 29 septembrie pierdut
Laborator 1 (262) Săptămâna 1 30 septembrie pierdut
Seminar 1 (263) Saptămâna 1 30 septembrie pierdut
Laborator 2 (263) Săptămâna 2 6 octombrie N/A
Laborator 2 (262) Săptămâna 2 7 octombrie N/A
Seminar 1 (264) Saptămâna 2 7 octombrie N/A
Laborator 3 (263) Săptămâna 3 13 octombrie N/A
Laborator 3 (262) Săptămâna 3 14 octombrie N/A
Seminar 2 (263) Saptămâna 3 14 octombrie N/A
Laborator 4 (263) Săptămâna 4 20 octombrie de reprogramat!
Laborator 4 (262) Săptămâna 4 21 octombrie de reprogramat!
Seminar 2 (264) Saptămâna 4 21 octombrie de reprogramat!
Laborator 5 (263) Săptămâna 5 27 octombrie M1 - de reprogramat!
Laborator 5 (262) Săptămâna 5 28 octombrie M1 - de reprogramat!
Seminar 3 (263) Saptămâna 5 28 octombrie de reprogramat!
Laborator 6 (263) Săptămâna 6 3 noiembrie de reprogramat!
Laborator 6 (262) Săptămâna 6 4 noiembrie N/A
Seminar 3 (264) Saptămâna 6 4 noiembrie N/A
Laborator 7 (263) Săptămâna 7 10 noiembrie N/A
Laborator 7 (262) Săptămâna 7 11 noiembrie N/A
Seminar 4 (263) Saptămâna 7 11 noiembrie N/A
Laborator 8 (263) Săptămâna 8 17 noiembrie N/A
Laborator 8 (262) Săptămâna 8 18 noiembrie N/A
Seminar 4 (264) Saptămâna 8 18 noiembrie N/A
Laborator 9 (263) Săptămâna 9 24 noiembrie M2
Laborator 9 (262) Săptămâna 9 25 noiembrie M2
Seminar 5 (263) Saptămâna 9 25 noiembrie N/A
Laborator 10 (263) Săptămâna 10 1 decembrie pierdut
Laborator 10 (262) Săptămâna 10 2 decembrie N/A
Seminar 5 (264) Saptămâna 10 2 decembrie N/A
Laborator 11 (263) Săptămâna 11 8 decembrie N/A
Laborator 11 (262) Săptămâna 11 9 decembrie N/A
Seminar 6 (263) Saptămâna 11 9 decembire N/A
Laborator 12 (263) Săptămâna 12 15 decembrie N/A
Laborator 12 (262) Săptămâna 12 16 decembrie N/A
Seminar 6 (264) Saptămâna 12 16 decembrie N/A
Laborator 13 (263) Săptămâna 13 22 decembrie N/A
Laborator 13 (262) Săptămâna 13 23 decembrie N/A
Seminar 7 (263) Saptămâna 13 23 decembire N/A
Vacanță Vacanță 24.12 - 04.01 Vacanță
Laborator 14 (263) Săptămâna 14 5 ianuarie N/A
Laborator 14 (262) Săptămâna 14 6 ianuarie pierdut
Seminar 7 (264) Saptămâna 14 6 ianuarie pierdut
Laborator 15 (263) Săptămâna 15 12 ianuarie M3
Laborator 15 (262) Săptămâna 15 13 ianuarie M3
Seminar 8 (263) Saptămâna 15 13 ianuarie N/A

Materiale Laborator

Materialele și codurile utilizate în cadrul laboratoarelor pot fi găsite aici.

Alte Materiale Utile

În repo-ul lui Marius găsiți o multitudine de informații structurate pe categorii. Pentru a vă fi mai ușor, las aici câte un link pentru fiecare dintre acestea:

Contact

Pentru orice problemă pe care o întâmpinați, mă puteți contacta pe Teams și vă voi răspunde cât mai repede posibil.

License

The Unlicense

About

Laborator de Programare Orientată pe Obiecte, Facultatea de Matematică și Informatică @ Universitatea din București

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors