😈╰•ALBERTO•╯😈 beh allora, direi che in genere è meglio evitare. Fondamentalmente significa includere tutto in un'unica pagina, al caricamento è necessario caricare tutte le risorse, salvo gestione comunque più complessa (per carità, potresti gestire la cosa - e in alcuni casi ok, può avere senso farlo - tramite JavaScript quindi mostrare o nascondere dinamicamente le sezioni, che è analogo a simulare la navigazione fra le pagine). Può essere un modo per mantenere elementi già caricati, c'è da dire comunque che in alternativa verrebbero memorizzati a livello di cache quindi il consumo di risorse, richieste al server, verrebbe ugualmente limitato.
Diciamo che un approccio come quello che descrivi, rallenta il caricamento iniziale (file JavaScript pesante che gestisce tutto questo) mentre velocizza i caricamenti successivi. Poi lato sviluppo e manutenzione del codice... Auguri 😅 scrivere tutto a manina penso sia complicato, improponibile, ha più senso eventualmente tramite framework (Angular, ecc).
Personalmente preferisco evitare, non mi sono trovato a dover gestire questo approccio. Per siti piccoli, fai pure pagine separate, per siti grandi, spesso ha più senso (salvo davvero particolari necessità specifiche) lavorare con CMS, ad esempio WordPress, ottimizzando bene tutto in funzione delle tue esigenze.