Ci sono interi corsi universitari sulla modularizzazione del codice, sulla realizzazione delle interfacce utente e sulle architetture che le supportano.
Va da se che la risposta alle tue domande richiederebbe l'equivalente di diversi libri.
Studiati i modelli ‘Model, View, Controller’ (MVC) e ‘Model, View, ViewModel’ (MVVM) (cerca con Google).
Naturalmente questi sono solo 2 di un'infinita' di modelli possibili, e non esiste ‘il migliore’. Ma per partire puo' andare bene.
PS/1: creazione e distruzione? Dipende!
PS/2: se ti appoggi SOLO a cose trovate con Google e NON su LIBRI (quelle cose che rovinano la natura perche' per essere fatte bisogna abattere gli alberi) parti male e finirai peggio ;-)