You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2.3 KiB

Linaris_MAUI_SAE_201

Diagramme de classe

@startuml
class Artist {
    - string name
    + Artist(string name)
    + boolean Equals(object obj)
    + int GetHashCode()
    + string ToString()
}

class Album {
    - string name
    - string description
    - string imageURL
    - string information
    + Album(string name, string file_Name, Artist artist, string description, string information)
    + Album()
    + void AddTitle(Title title)
    + void RemoveTitle(Title title)
    + boolean Equals(object obj)
    + int GetHashCode()
    + string ToString()
}

class Playlist {
    - string name
    - string description
    - string imageURL
    - int index = 0
    + boolean shuffle = false
    + boolean loop = false
    + boolean looptitle = false
    - List<int> played
    + Playlist(string nom, string description, string imageURL)
    + Playlist()
    + void AddTitle(CustomTitle morceau)
    + void RemoveTitle(CustomTitle morceau)
    + void NextTitle()
    + void PreviousTitle()
    + Title? GetCurrentTitle()
    + boolean Equals(object? obj)
    + int GetHashCode()
    + string ToString()
    - int RandomGenerator(int n)
}

class Title {
    - string name
    - string imageURL
    - string information
    + Title(string nom, string file_Name, string informations)
    + boolean Equals(object? obj)
    + int GetHashCode()
    + string ToString()
}

enum Genre
{
    HIP_HOP
    POP
    ROCK
    ELECTRO
    CLASSIQUE
    JAZZ
    VARIETE_FRANCAISE
    VARIETE_INTERNATIONALE
    REGGAE
    RAP
    RNB
    DISCO
    BLUES
    COUNTRY
    FUNK
    GOSPEL
    METAL
    K_POP
}

class CustomTitle {
    - string path
    + CustomTitle(string name, string imageURL, string information, string path)
    + CustomTitle()
    + boolean Equals(object? obj)
    + int GetHashCode()
    + string ToString()
}

class InfoTitle {
    - string description
    - List<Artist> feat
    + InfoTitle(string name, string imageURL, string information, Artist artist, string description, Genre genre)
    + InfoTitle()
    + void AddFeat(Artist artist)
    + void RemoveFeat(Artist artiste)
    + boolean Equals(object? obj)
    + int GetHashCode()
    + string ToString()

}

Album --> "+ artist" Artist
Album --> "- titles" Title
Playlist --> "- titles" Title
CustomTitle <|-- Title
InfoTitle <|-- Title
InfoTitle --> "+ genre" Genre
InfoTitle --> "+ artist" Artist
@enduml