Saya memiliki kelas yang mengatur array node dan menghubungkannya satu sama lain dalam struktur seperti grafik. Apakah yang terbaik untuk:
- Jaga fungsionalitas untuk menginisialisasi dan menghubungkan node dalam satu fungsi
- Memiliki fungsi inisialisasi dan koneksi dalam dua fungsi yang berbeda (dan memiliki urutan tergantung pada fungsi yang harus dipanggil - meskipun perlu diingat fungsi-fungsi ini bersifat pribadi.)
Metode 1: (Buruk karena satu fungsi melakukan dua hal, TETAPI itu membuat fungsi dependen dikelompokkan bersama - node tidak boleh dihubungkan tanpa diinisialisasi terlebih dahulu.)
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
}
Metode 2: (Lebih baik dalam arti mendokumentasikan diri, TETAPI connectNodes () tidak boleh dipanggil sebelum setupNodes (), jadi siapa pun yang bekerja dengan kelas internal perlu tahu tentang pesanan ini.)
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
}
Gembira mendengar pikiran.