Dopo molti anni, non riesco ancora a determinare il modo corretto di definire una classe / funzione per riprodurre il suono. Supponiamo che la mia app abbia bisogno di riprodurre alcuni suoni, ad esempio: clic sul pulsante, popup di errore, ... Come dovrei definire la funzione?
** Metodo 1: una sola funzione per tutti i suoni **
//simulate languages features that enums are numbers
const Sound={
BUTTON_CLICK:0,
ERROR_POPUP:1,
};
class MyClass{
static playSound(sound){
switch(sound){
case Sound.BUTTON_CLICK:
SoundLibrary.playSound('button_click.mp3');
break;
case Sound.ERROR_POPUP:
SoundLibrary.playSound('error_popup.mp3');
break;
}
}
}
** Metodo 2: una funzione per ogni suono **
class MyClass{
static playButtonClickSound(){
SoundLibrary.playSound('button_click.mp3');
}
static playErrorPopupSound(){
SoundLibrary.playSound('error_popup.mp3');
}
}
** Metodo 3: una classe per ogni suono **
class ButtonClickSound{
static play(){
SoundLibrary.playSound('button_click.mp3');
}
}
class ErrorPopupSound{
static play(){
SoundLibrary.playSound('error_popup.mp3');
}
}
** Method 4: (other methods)**
Quale modo dovrei usare?