-
Notifications
You must be signed in to change notification settings - Fork 0
The main objective of VideosDB is designing a movie and serial streaming platform, where users might simulate commands specific to this type of interface (rate videos, view videos, get personalized recommendations, etc.). Along the implementation of the program, OOP design concepts were used and input data was parsed using JSONObjects.
sorinabuf/VideosDB
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
********************************************************************************
TEMA POO - VIDEOSDB
BUF SORINA ANAMARIA
********************************************************************************
Tema a constat in implementarea unei platforme de filme si seriale in care
utilizatorii pot simula operatiile specifice unei astfel de interfete.
Tema este organizata in urmatoarele pachete:
• actions - contine principalele clase ale programului responsabile cu exe-
cutarea efectiva a comenzilor care sunt apoi create in main,
folosindu-se de campurile si metodele database-urilor.
clase: - Command: executa actiuni de tip command;
- Query: executa actiuni de tip query;
- Recommendation: executa actiuni de tip recommendation.
• actor - contine toate clasele specifice entitatii actor.
clase: - Actor: contine campurile specifice unui actor;
- ActorsAwards: clasa enum care contine tipuri generale de premii;
- ActorsAwardsSort: comparator utilizat in sortarea unei liste de
actori dupa un numar de premii si nume;
- ActorsFiletersSort: comparator utilizat in sortarea unei liste
de actori dupa nume;
- ActorsRatingsSort: comparator utilizat in sortarea unei liste de
actori dupa rating-ul filmelor in care au apa-
rut si dupa nume;
- ActorsDatabase: principala clasa a pachetului care contine cam-
puri de actori destinate sortarii, create prin
intermediul metodelor implementate, care utili-
zeaza clasele comparator anterior mentionate.
• checker;
• common;
• entertainment - contine toate clasele specifice entitatii video.
clase: - Genre: clasa enum care contine tipuri de videouri;
- Movie: mosteneste clasa Video, avand campuri specifice;
- Season: specifica unui serial;
- Show: mosteneste clasa Video, avand campuri specifice;
- Video: principala entitate, mostenita de Movie si Show, care
cuprinde campurile comune acestora;
- VideosBestUnseenSort: comparator utilizat in sortarea filmelor
pe baza rating-ului si a ordinii de aparitie
in baza de date;
- VideosNumericalSort: comparator utilizat in sortarea filmelor
pe baza unor caracteristici numerice intregi;
- VideosRatingsSort: comparator utilizat in sortarea videourilor
pe baza rating-urilor obtinute;
- VideosDatabase: principala clasa a pachetului care contine toate
campurile de videouri destinate sortarii pe baza
criteriilor mentionate in input, continand metode
specifice pentru popularea acestor campuri care
apeleaza comparatorii mentionati anterior, efec-
tuand parcurgeri si sortari ale database-ului.
• fileio;
• main - in cadrul acestui pachet, clasa main apeleaza tipuri de actiuni
corespunzatoare input-ului primit, returnand mesaje specifice.
• setinputdata - in cadrul acestui pachet, clasa SetInputData populeaza
database-urile de actori, videouri si utilizatori pe baza
input-ului primit prin intermediul claselor create in
pachetul checker.
• user - contine toate clasele specifice entitatii utilizator.
clase: - User: contine campurile specifice unui user;
- UserRatingSort: comparator care sorteaza lista de utilizatori
dupa numarul de rating-uri acordate filmelor
si serialelor si dupa nume;
- UsersDatabase: principala clasa a pachetului care contine lista
de utilizatori destinata sortarii conform com-
paratorului mentionat anterior.
• utils.
Pentru mai multe detalii legate de implementarea efectiva a metodelor si de
reprezentarea campurilor am adugat comentarii semnificative in cod.
GitHub Repository: https://github.com/sorinabuf/VideosDB.gitAbout
The main objective of VideosDB is designing a movie and serial streaming platform, where users might simulate commands specific to this type of interface (rate videos, view videos, get personalized recommendations, etc.). Along the implementation of the program, OOP design concepts were used and input data was parsed using JSONObjects.
Topics
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published