This shows you the differences between two versions of the page.
poo-ca-cd:laboratoare:static-final [2023/10/29 15:59] calin.precupetu |
poo-ca-cd:laboratoare:static-final [2023/10/29 16:03] (current) calin.precupetu |
||
---|---|---|---|
Line 465: | Line 465: | ||
- Pentru a rezolva laboratorul aveti urmatorul contest pe LambdaChecker : [[https://beta.lambdachecker.io/contest/55/problems?page=1 | contest]] | - Pentru a rezolva laboratorul aveti urmatorul contest pe LambdaChecker : [[https://beta.lambdachecker.io/contest/55/problems?page=1 | contest]] | ||
- **(0 puncte)** Folosind pașii de mai sus și debugger-ul, reparați codul din pachetul ''vault'' din cadrul [[https://github.com/oop-pub/oop-labs/tree/master/src/lab4 | scheletului laboratorului]] (același care este prezentat în cadrul tutorialului de debug). | - **(0 puncte)** Folosind pașii de mai sus și debugger-ul, reparați codul din pachetul ''vault'' din cadrul [[https://github.com/oop-pub/oop-labs/tree/master/src/lab4 | scheletului laboratorului]] (același care este prezentat în cadrul tutorialului de debug). | ||
- | - Aveți de implementat o mini aplicație de tip queries dintr-o bază de date cu dealership-uri și selleri de masini. Fiecare dealership are o colecție de asocieri dintre brand-urile de masini vandute și pretul lor, de tip dicționar, iar fiecare seller are o listă de brand-uri de masina pe care le vinde. | + | - Aveți de implementat o mini aplicație de tip queries dintr-o bază de date cu dealershipuri și selleri de masini. Fiecare dealership are o colecție de asocieri dintre brandurile de masini vandute și pretul lor, de tip dicționar, iar fiecare seller are o listă de branduri de masina pe care le vinde. |
- | - **(2 puncte)** Având la bază scheletul de cod, faceți clasa Database, care se ocupă cu gestionarea bazei de date a dealership-urilor și a seller-ilor, o clasă de tip Singleton cu implementare de tip lazy. Această clasă va conține o listă de dealership-uri și o listă de seller-i. Faceți aceste liste de tip final. | + | - **(2 puncte)** Având la bază scheletul de cod, faceți clasa Database, care se ocupă cu gestionarea bazei de date a dealershipurilor și a sellerilor, o clasă de tip Singleton cu implementare de tip lazy. Această clasă va conține o listă de dealershipuri și o listă de selleri. Faceți aceste liste de tip final. |
- | - **(1 punct)** Clasa ''Dealership'' are doua câmpuri: nume și un dicționar unde sunt stocate brand-urile de masini, fiecare brand fiind asociat cu pretul sau la dealership-ul respectiv. În această clasă, implementați următoarele: | + | - **(1 punct)** Clasa ''Dealership'' are doua câmpuri: nume și un dicționar unde sunt stocate brandurile de masini, fiecare brand fiind asociat cu pretul sau la dealershipul respectiv. În această clasă, implementați următoarele: |
- metoda ''averagePrice'', care calculează media pretului masinilor din Dealership. | - metoda ''averagePrice'', care calculează media pretului masinilor din Dealership. | ||
- | - copy constructor-ul clasei | + | - copy constructorul clasei |
- metoda ''getPriceForBrand'', care primește ca parametru de intrare numele unui brand și întoarce pretul acestuia. | - metoda ''getPriceForBrand'', care primește ca parametru de intrare numele unui brand și întoarce pretul acestuia. | ||
- | - **(1 punct)** Clasa ''Seller'' are doua câmpuri: nume si lista brand-urilor pe care acesta le vinde. În această clasa implementați copy constructor. | + | - **(1 punct)** Clasa ''Seller'' are doua câmpuri: nume si lista brandurilor pe care acesta le vinde. În această clasa implementați copy constructor. |
- **(2 puncte)** În clasa ''Database'' implementați următoarele metode: | - **(2 puncte)** În clasa ''Database'' implementați următoarele metode: | ||
- | - ''getAllDealerships'' - întoarce lista de delaership-uri | + | - ''getAllDealerships'' - întoarce lista de delaershipuri |
- | - ''getAllSellers'' - intoarce lista de sell-eri | + | - ''getAllSellers'' - intoarce lista de selleri |
- | - ''getDealershipByBrand'' - primește ca parametru numele unui brand și întoarce lista cu dealership-urile care detin brand-ul respectiv | + | - ''getDealershipByBrand'' - primește ca parametru numele unui brand și întoarce lista cu dealershipurile care detin brandul respectiv |
- | - ''getSellerByBrand'' - primește ca parametru numele unui brand și întoarce lista cu sell-erii care vand brand-ul respectiv. | + | - ''getSellerByBrand'' - primește ca parametru numele unui brand și întoarce lista cu sellerii care vand brandul respectiv. |
- | - ''getDealershipsByAveragePrice'' - întoarce lista cu dealership-uri sortate crescător în funcție de pretul lor mediu. | + | - ''getDealershipsByAveragePrice'' - întoarce lista cu dealershipuri sortate crescător în funcție de pretul lor mediu. |
- | - ''getDealershipsByPriceForBrand'' - primește ca parametru numele unui brand și întoarce lista cu dealership-urile care detin acel brand, sortate după pretul acestuia în ordine crescătoare. | + | - ''getDealershipsByPriceForBrand'' - primește ca parametru numele unui brand și întoarce lista cu dealershipurile care detin acel brand, sortate după pretul acestuia în ordine crescătoare. |
- **(1 punct)** În clasa ''Seller'' implementați următoarele metode, care vor apela metodele corespunzătoare din clasa ''Database'': | - **(1 punct)** În clasa ''Seller'' implementați următoarele metode, care vor apela metodele corespunzătoare din clasa ''Database'': | ||
- ''getAllSellers'' | - ''getAllSellers'' |