Quote Originariamente inviata da andbin Visualizza il messaggio
Una classe base con configurazione/componenti/logica comune e poi 2 sottoclassi con ciò che è specifico (e/o da ridefinire). Nei costruttori delle sottoclassi puoi configurare ciò che è fisso (es. testo di un pulsante).

Senza conoscere bene il contesto e cosa hai scritto, non saprei però che altro dire.
ok, provo a darti qualche dettaglio in più.

in sostanza la finestra si preoccupa di:
-aggiungere un autore / editore -> viene richiamato un web service remoto specifico (aggiungi_autore.php / aggiungi_editore.php), che aggiunge il record sulla tabella corretta
-di listare tutti gli autori / editori presenti -> i dati vengono presi da due file json (autori.json / editori.json)
-di modificare l'autore / editore selezionato nella combo box -> viene richiamato un web service remoto specifico (modifica_autore.php / modifica_editore.php), che modifica il record sulla tabella corretta; al servizio viene passato l'id e il nome; ho due classi che rappresentanto una l'autore e una l'editore (con i getter e setter)
-di cancellare l'autore / editore selezionato nella combo box -> viene richiamato un web service remoto specifico (cancella_autore.php / cancella_editore.php), che cancella il record sulla tabella corretta; al servizio viene passato l'id; ho due classi che rappresentanto una l'autore e una l'editore (con i getter e setter)

le strutture delle tabelle remote sono uguali; cambiano solo i nomi dei campi.
le strutture dei file json sono uguali; cambiano solo i nomi dei campi.
di conseguenza, anche ai servizi remoti passo la stessa quantità di parametri (il nome nel caso di aggiunta; id e nome nel caso di modifica; id nel caso di cancellazione).