Programare Orientată Obiect (curs) - Seria F: Diferență între versiuni

De la WikiLabs
Jump to navigationJump to search
Fără descriere a modificării
Fără descriere a modificării
 
(Nu s-au afișat 8 versiuni intermediare efectuate de același utilizator)
Linia 1: Linia 1:
= Informații restanță septembrie 2016 =


Pentru cei care doresc să dea examen în sesiunea de restanțe din toamnă, examenul va consta într-o probă teoretică de tip grilă, de 20 de puncte și o probă practică de 30 de puncte la care se adaugă punctajul obținut în ultimul an universitar (2015-2016).


<div style="font-size: 24pt; color: red; font-weight: bold">Atenție: Platforma Moodle a devenit disponibilă. Toate informațiile relevante despre curs vor fi publicate pe <br><br>http://electronica.curs.pub.ro/2016/course/view.php?id=141</div>


= Sistemul de evaluare =
== Repartizarea punctelor ==
Punctajul maxim este de 100 de puncte, corespunzător notei 10. Acest punctaj este repartizat în felul următor:
* 20 de puncte - 4 teme de casă;
* 50 de puncte - laborator;
** 25 de puncte - activitatea din timpul semestrului;
** 25 de puncte - colocviu de laborator;
* 30 de puncte - examen final;
* '''BONUS''' 10 puncte pentru activitate excepțională în timpul semestrului. Punctajul bonus este '''<font color="red">exclusiv</font>''' la latitudinea titularului de curs.


* Lucru individual - 40p acordate pentru realizarea a patru teme propuse pe parcursul semestrului
= Condiții de promovare =
* Laborator - 50p acordate pe activitatea de laborator la platformele 2-6
* Examen oral <strike>(opțional)</strike> - 20p acordate în urma unei discuții pe marginea proiectului de laborator, la sfârșitul semestrului


<span style="color: red; font-weight: bold">Update:</span> Având în vedere codul submis pentru laborator și teme, care conține secțiuni ce pun sub semnul întrebării adevărații autori, se introduc următoarele reguli suplimentare:
Condițiile minime de promovare sunt:
# În ultimele două săptămâni de școală, în cadrul laboratorului, se va susține un colocviu. Acest colocviu nu va conta la notă, pentru a păstra nemodificată schema de punctaj hotărâtă, dar o diferență de mai mult de două puncte între nota obținută la colocviu și media notelor la teme și laborator va implica obligativitatea prezentării la examenul final. Neprezentarea la colocviu duce automat la nepromovarea materiei, cu absență.
* cel mult o absență în laborator;
# Neprezentarea la examenul final în cazul în care acesta devine obligatoriu, duce la nepromovarea materiei, cu absență.
* minim 25 de puncte din punctajul de laborator;
# În cadrul examenului oral, dacă există suspiciuni că programele trimise ca teme nu au fost dezvoltate de studentul în cauză, punctajul pentu acestea se va anula în întregime.
* minim 50 puncte în total.


= Programa cursului =
= Programa cursului =
Linia 31: Linia 35:
# Q&A
# Q&A


Repo cu exemplele date la curs: http://gitlab.dcae.pub.ro/Teaching/poo_seriaf_2016.git
<!--
= Autentificare WebCat (site pentru teme) =
= Autentificare WebCat (site pentru teme) =


Linia 38: Linia 45:
# Odată găsite, folosiți user-ul și parola pentru a vă autentifica pe site-ul de cursuri: http://electronica.curs.pub.ro/2015/
# Odată găsite, folosiți user-ul și parola pentru a vă autentifica pe site-ul de cursuri: http://electronica.curs.pub.ro/2015/
# Dacă vă autentificați pentru prima dată, este necesar să vă schimbați parola.
# Dacă vă autentificați pentru prima dată, este necesar să vă schimbați parola.
# După autentificarea pe site-ul de cursuri, folosiți același user și parolă pentru a vă autentifica pe [http://homework.dcae.pub.ro:8888/Web-CAT/WebObjects/Web-CAT.woa WebCat].
# După autentificarea pe site-ul de cursuri, folosiți același user și parolă pentru a vă autentifica pe [http://homework.dcae.pub.ro WebCat].
# După autentificarea cu succes pe WebCat, completați-vă datele în tabelul următor: [https://docs.google.com/spreadsheets/d/1GxLF-LB2UNpA46qBTTXqmNOpqBpfR8txt0dxmipsZyM/edit?usp=sharing Înscrieri utilizatori WebCat]
 
== Update 1 ==
 
O parte din cei care au submis teme au primit 0 puncte fără feedback. Motivul a fost faptul că atunci când v-ați autentificat, ați introdus un spațiu ori la început ori la finalul username-ului. Am modificat manual username-urile voastre eliminând toate spațiile. Atenție când vă autentificați din nou și folosiți copy-paste, să nu aveți spații.
 
== Update 2 ==
 
Vă rog să vă completați pe WebCat numele complet (fără diacritice, pentru că nu sunt suportate) și adresa de e-mail pentru a primi notificări.
 
== Update 3 ==
 
Cei care nu s-au putut conecta pe WebCat pot încerca din nou. Am modificat niște setări legate de server-ul de autentificare.


= Teme =
= Teme =
Linia 59: Linia 53:
* [[POO Tema 3]]
* [[POO Tema 3]]
* [[POO Tema 4]]
* [[POO Tema 4]]
== Examen ==
Programările pentru examen precum si situația notelor se află [https://docs.google.com/spreadsheets/d/1jhJnoYRac1uFAs-90y2SXPj5M4RS1l4Pv5Q9KL1KOD8/edit?usp=sharing aici].
'''Observații:'''
* Pentru cei care nu sunt obligați să vină dar doresc să o facă, sunt 4 sloturi libere în mijlocul zilei unde vă puteți completa numele.
* Este posibil să faceți schimb între voi, dar nu veniți fără schimb la altă oră pentru că riscați să așteptați degeaba.
* Dacă cineva NU vine, puteți să vă anunțați colegii pentru a veni în locul vostru.
* Sala de examen NU va fi A414, veți fi anunțați din timp care este noua locație. '''Update:''' Ne vedem în față la A414 și mergem într-o sală liberă (A415 sau A416).


= Informații pentru studenții de la diferență =
= Informații pentru studenții de la diferență =


* Deocamdată, pentru refacerea laboratorului, pot primi atâți studenți câte locuri există în sală. Dacă puteți veni cu laptop, atunci puteți ocupa locurile la calculatoarele nefuncționale din laborator.
Pentru refacerea laboratorului se recomandă prezența joia de la ora 15:00 in A414.
* Pentru o soluție mai robustă, problema a fost adusă la cunoștința conducerii facultații, și voi ține la curent cu viitoarele decizii.
 
=== Update 1 ===
 
Conducerea facultății va aproba laboratoare suplimentare pentru cei de la diferență. Pentru a afla numărul exact de locuri necesare, vă rog să va completați numele în [https://docs.google.com/spreadsheets/d/1fo3CnOHyX08vhidg5mUpATeG_Ac0ISkMIz7xFaY5_LQ/edit?usp=sharing următorul tabel].
 
=== Update 2 ===


Trebuie stabilit un interval orar unde putem face laboratorul. Propunerea mea este miercurea de la 10:00. Conform orarului de la seria F, anul 3, toata lumea are liber la ora respectivă. Cei de la 4A si 4B pot ajunge la unul din laboratoarele de joi seara (16-18 sau 18-20). Am adăugat o coloană de confirmare în [https://docs.google.com/spreadsheets/d/1fo3CnOHyX08vhidg5mUpATeG_Ac0ISkMIz7xFaY5_LQ/edit?usp=sharing tabelul de mai sus].
-->


= Resurse Externe =
= Resurse Externe =


* http://programmingbydoing.com/
* http://programmingbydoing.com/
* Câte două probleme pe zi, până la Crăciun, ajutați-l pe Moșu`: http://adventofcode.com/

Versiunea curentă din 20 noiembrie 2016 11:46


Atenție: Platforma Moodle a devenit disponibilă. Toate informațiile relevante despre curs vor fi publicate pe

http://electronica.curs.pub.ro/2016/course/view.php?id=141

Repartizarea punctelor

Punctajul maxim este de 100 de puncte, corespunzător notei 10. Acest punctaj este repartizat în felul următor:

  • 20 de puncte - 4 teme de casă;
  • 50 de puncte - laborator;
    • 25 de puncte - activitatea din timpul semestrului;
    • 25 de puncte - colocviu de laborator;
  • 30 de puncte - examen final;
  • BONUS 10 puncte pentru activitate excepțională în timpul semestrului. Punctajul bonus este exclusiv la latitudinea titularului de curs.

Condiții de promovare

Condițiile minime de promovare sunt:

  • cel mult o absență în laborator;
  • minim 25 de puncte din punctajul de laborator;
  • minim 50 puncte în total.

Programa cursului

  1. Paradigma Orientată Obiect - Clasa și obiectul; Membrii unei clase - Câmpul și metoda; Constructorul și supraîncărcarea; Modificatorii de acces public și private; Pachetul - Fișier:Poo curs1.pdf
  2. Tipuri de date în Java: primitive și referințe; Alocarea memoriei; Moștenirea și suprascrierea metodelor; Modificatorul de acces protected - Fișier:Poo curs2.pdf
  3. Vectori în Java; Tratarea excepțiilor; Utilizarea API-ului Java - clasa ArrayList - Fișier:Poo curs3.pdf
  4. Interfețe și clase abstracte; Fluxuri de date (streams) în Java - Fișier:Poo curs4.pdf
  5. Serializarea obiectelor; Exerciții cu stream-uri și review de sintaxă - Fișier:Poo curs5.pdf Fișier:Backtracking.java Fișier:QueenBacktracking.java Fișier:Person.java Fișier:MainCourse5.java
  6. Socket-uri de rețea; Exemplu de serializare pe rețea - Fișier:Poo curs6.pdf Fișier:ClientMain.java Fișier:ServerMain.java
  7. Fire de execuție în Java - Threads; Cuvântul cheie static; Bariera și semaforul Fișier:Poo curs7.pdf Fișier:TestThreads.java
  8. Exemple cu fire de execuție Fișier:Poo curs8.pdf
  9. Java Generics - Verificarea tipului la compilare Fișier:Poo curs9.pdf
  10. Java Swing - Interfețe grafice în Java Fișier:Poo curs10.pdf Fișier:TestGui.java Fișier:MyButtonListener.java
  11. Java Swing - Evenimente și Event Dispatch Thread Fișier:Poo curs11.pdf
  12. Cele mai utilizare clase și interfețe din API - Map - HashMap, List - ArrayList, Set, Collection, etc.
  13. Q&A
Repo cu exemplele date la curs: http://gitlab.dcae.pub.ro/Teaching/poo_seriaf_2016.git


Resurse Externe