Ho una classe che imposta una serie di nodi e li collega tra loro in una struttura a forma di grafico. È meglio:
- Mantieni la funzionalità per inizializzare e connettere i nodi in una funzione
- Avere la funzionalità di inizializzazione e connessione in due diverse funzioni (e avere un ordine dipendente in base al quale le funzioni devono essere chiamate, anche se tenere a mente che queste funzioni sono private.)
Metodo 1: (Male in quella funzione sta facendo due cose, MA mantiene le funzionalità dipendenti raggruppate insieme - i nodi non dovrebbero mai essere connessi senza essere inizializzati per primi.)
init() {
setupNodes()
}
private func setupNodes() {
// 1. Create array of nodes
// 2. Go through array, connecting each node to its neighbors
// according to some predefined constants
}
Metodo 2: (Meglio nel senso che è autodocumentante, MA connectNodes () non dovrebbe mai essere chiamato prima di setupNodes (), quindi chiunque lavori con gli interni della classe deve conoscere questo ordine.)
init() {
setupNodes()
}
private func setupNodes() {
createNodes()
connectNodes()
}
private func createNodes() {
// 1. Create array of nodes
}
private func connectNodes() {
// 2. Go through array, connecting each node to its neighbors
// according to some predefined constants
}
Entusiasti di ascoltare qualsiasi pensiero.