
    

    <?xml version="1.0" encoding="utf-8"?>
<!-- generator="FeedCreator 1.7.2-ppt DokuWiki" -->
<?xml-stylesheet href="http://ocw.cs.pub.ro/courses/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="http://ocw.cs.pub.ro/courses/feed.php">
        <title>CS Open CourseWare poo-ca-cd:arhiva:laboratoare:2023</title>
        <description></description>
        <link>http://ocw.cs.pub.ro/courses/</link>
        <image rdf:resource="http://ocw.cs.pub.ro/courses/lib/tpl/arctic/images/favicon.ico" />
       <dc:date>2026-05-18T10:40:48+03:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/agregare-mostenire?rev=1728150430&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/clase-abstracte-interfete?rev=1728150515&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/clase-interne?rev=1728150541&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/colectii?rev=1728150582&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/constructori-referinte?rev=1728150457&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/design-patterns?rev=1728150603&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/exceptii?rev=1728150674&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/genericitate?rev=1728150624&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/index?rev=1758959226&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/intro?rev=1728150355&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/java-basics?rev=1728149271&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/java-features?rev=1728150644&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/static-final?rev=1728150495&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/visitor?rev=1731250413&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="http://ocw.cs.pub.ro/courses/lib/tpl/arctic/images/favicon.ico">
        <title>CS Open CourseWare</title>
        <link>http://ocw.cs.pub.ro/courses/</link>
        <url>http://ocw.cs.pub.ro/courses/lib/tpl/arctic/images/favicon.ico</url>
    </image>
    <item rdf:about="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/agregare-mostenire?rev=1728150430&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-05T20:47:10+03:00</dc:date>
        <title>Laboratorul 3: Agregare și moștenire</title>
        <link>http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/agregare-mostenire?rev=1728150430&amp;do=diff</link>
        <description>Laboratorul 3: Agregare și moștenire

Video introductiv: link

Obiective

Scopul acestui laborator este familiarizarea studenților cu noțiunile de agregare și de moștenire a claselor.

Aspectele urmărite sunt:

	*  studierea mecanismului de moștenire
	*  înțelegerea diferenței între moștenire și agregare
	*  downcasting și upcasting</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/clase-abstracte-interfete?rev=1728150515&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-05T20:48:35+03:00</dc:date>
        <title>Laboratorul 5: Abstractizare</title>
        <link>http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/clase-abstracte-interfete?rev=1728150515&amp;do=diff</link>
        <description>Laboratorul 5: Abstractizare

Video introductiv: link

Obiective

Scopul acestui laborator este de a înțelege principiul abstractizării, prin prezentarea conceptelor de interfață și de clasă abstractă și utilizarea lor în limbajul Java.

Conceptele de metode și clase abstracte și de interfețe sunt prezente și în alte limbaje OOP, fiecare cu particularitățile lor de sintaxă. Este important ca în urma acestui laborator să înțelegeți ce reprezintă și situațiile în care să le folosiți.…</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/clase-interne?rev=1728150541&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-05T20:49:01+03:00</dc:date>
        <title>Laboratorul 6: Clase interne</title>
        <link>http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/clase-interne?rev=1728150541&amp;do=diff</link>
        <description>Laboratorul 6: Clase interne

Video introductiv:  link 

Slides din video:[ link]

Obiective

	*  prezentarea conceptului de clasă internă
	*  exemplificarea tipurilor de clase interne folosind Java
	*  utilizarea claselor interne, în special ale celor anonime
	*  utilizarea funcțiilor lambda</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/colectii?rev=1728150582&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-05T20:49:42+03:00</dc:date>
        <title>Laboratorul 8: Colecții</title>
        <link>http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/colectii?rev=1728150582&amp;do=diff</link>
        <description>Laboratorul 8: Colecții

Video introductiv:  link 

Obiective

Pe parcursul laboratoarelor și temelor ați folosit structuri de date oferite de API-ul Java. În cadrul acestui laborator le vom aprofunda.

	*  lucrul cu cele trei tipuri principale de colecții din Java: List, Set, Map
	*  cunoașterea diferențelor dintre implementările colecțiilor (eficiență, sortare, ordonare etc)
	*  compararea elementelor unor colecții
	*  contractul equals-hashcode</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/constructori-referinte?rev=1728150457&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-05T20:47:37+03:00</dc:date>
        <title>Laboratorul 2: Constructori și referințe</title>
        <link>http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/constructori-referinte?rev=1728150457&amp;do=diff</link>
        <description>Laboratorul 2: Constructori și referințe

Video introductiv: link

Obiective

Scopul acestui laborator este familiarizarea voastră cu noțiunile de constructori și de referințe în limbajul Java.

Aspectele urmărite sunt:

	*  tipurile de contructori și crearea de instanţe ale claselor folosind acești constructori
	*  utilizarea cuvântului-cheie this</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/design-patterns?rev=1728150603&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-05T20:50:03+03:00</dc:date>
        <title>Laboratorul 9: Design patterns - Factory, Strategy, Observer, Command, Builder</title>
        <link>http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/design-patterns?rev=1728150603&amp;do=diff</link>
        <description>Laboratorul 9: Design patterns - Factory, Strategy, Observer, Command, Builder

Video introductiv:  link +  link

Obiective

Scopul acestui laborator este familiarizarea cu folosirea unor pattern-uri des întâlnite în design-ul atât al aplicațiilor, cât și al API-urilor - Factory, Strategy, Observer, Command și Builder.</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/exceptii?rev=1728150674&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-05T20:51:14+03:00</dc:date>
        <title>Laboratorul 12: Excepții</title>
        <link>http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/exceptii?rev=1728150674&amp;do=diff</link>
        <description>Laboratorul 12: Excepții

Video introductiv:  link

Obiective

	*  înţelegerea conceptului de excepţie şi utilizarea corectă a mecanismelor de generare şi tratare a excepţiilor puse la dispoziţie de limbajul / maşina virtuală Java

Introducere

În esenţă, o excepţie este un eveniment care se produce în timpul execuţiei unui program şi care perturbă fluxul normal al instrucţiunilor acestuia.</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/genericitate?rev=1728150624&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-05T20:50:24+03:00</dc:date>
        <title>Laboratorul 10: Genericitate</title>
        <link>http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/genericitate?rev=1728150624&amp;do=diff</link>
        <description>Laboratorul 10: Genericitate

Obiective

Scopul acestui laborator este prezentarea conceptului de genericitate și modalitățile de creare și folosire a claselor, metodelor și interfețelor generice în Java.

Aspectele urmărite sunt:

	*  prezentarea structurilor generice simple
	*  conceptele de wildcard și bounded wildcards
	*  utilitatea genericității în design-ul unui sistem</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/index?rev=1758959226&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-09-27T10:47:06+03:00</dc:date>
        <title>poo-ca-cd:arhiva:laboratoare:2023:index</title>
        <link>http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/index?rev=1758959226&amp;do=diff</link>
        <description>2023-2024

	*   Setup environment
	*   Laboratorul 1: Java basics
	*   Laboratorul 2: Constructori și referințe
	*   Laboratorul 3: Agregare și moștenire
	*   Laboratorul 4: static și final; Singleton pattern
	*   Laboratorul 5: Abstractizare
	*   Laboratorul 6: Clase interne
	*   Laboratorul 7: Overriding, overloading &amp; Visitor pattern
	*    Laboratorul 8: Colecții
	*   Laboratorul 9: Design patterns
	*   Laboratorul 10: Genericitate
	*   Laboratorul 11: Java features
	*   Laboratorul 12: Excep…</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/intro?rev=1728150355&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-05T20:45:55+03:00</dc:date>
        <title>Setup Environment</title>
        <link>http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/intro?rev=1728150355&amp;do=diff</link>
        <description>Setup Environment

Instalare Java 17

Pentru POO vom folosi Java 17 și anume OpenJDK 17.

Pași de instalare:

Ubuntu

1. Deschideți un terminal - Ctrl + Alt + T

2. Faceți update la pachetele instalate deja in sistem


$ sudo apt update


3. Adăugați repository-ul de OpenJDK</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/java-basics?rev=1728149271&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-05T20:27:51+03:00</dc:date>
        <title>Laboratorul 1: Java basics</title>
        <link>http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/java-basics?rev=1728149271&amp;do=diff</link>
        <description>Laboratorul 1: Java basics

Video introductiv: link

Slideuri folosite în video: [PDF]

Obiective

Scopul acestui laborator este familiarizarea studenților cu noțiunile de bază ale programării în Java.

Aspectele urmărite sunt:

	*  organizarea unui proiect Java
	*  familiarizarea cu IDE-ul
	*  definirea noțiunilor de clasă, câmpuri, proprietăți, metode, specificatori de acces
	*  folosirea unor tipuri de date</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/java-features?rev=1728150644&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-05T20:50:44+03:00</dc:date>
        <title>Laboratorul 11: Java features</title>
        <link>http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/java-features?rev=1728150644&amp;do=diff</link>
        <description>Laboratorul 11: Java features

Obiective

	*  înțelegerea conceptelor de expresii lambda și de streams
	*  familiarizarea cu metode default și cu metode statice în interfețe
	*  utilizarea de structuri sintactice introduse începând cu Java 8 (var)</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/static-final?rev=1728150495&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-05T20:48:15+03:00</dc:date>
        <title>Laboratorul 4: static și final; Singleton pattern</title>
        <link>http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/static-final?rev=1728150495&amp;do=diff</link>
        <description>Laboratorul 4: static și final; Singleton pattern

Video introductiv: link

Obiective

	*  Înțelegerea conceptului de static în contextul claselor și instanțelor
	*  Utilizarea keywords-urilor static și final din Java
	*  Folosirea design-pattern-ului Singleton</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/visitor?rev=1731250413&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-10T16:53:33+03:00</dc:date>
        <title>Laboratorul 7: Visitor pattern</title>
        <link>http://ocw.cs.pub.ro/courses/poo-ca-cd/arhiva/laboratoare/2023/visitor?rev=1731250413&amp;do=diff</link>
        <description>Laboratorul 7: Visitor pattern

Video introductiv:  link 

Obiective

	*  Prezentarea design pattern-ului Visitor și familiarizarea cu situațiile în care acesta este util de aplicat

Visitor Design Pattern



Visitor este un behavioral design pattern ce oferă posibilitatea de a adăuga în mod extern funcționalități pe o întreagă ierarhie de clase fără să fie nevoie să modificăm efectiv structura acestora.</description>
    </item>
</rdf:RDF>
