Saya harus mengurai kode dalam View Controllers berukuran besar sebelumnya dan itu benar-benar menghambat kemampuan saya untuk menavigasi konten pada awalnya. Satu hal penting yang saya sadari adalah bahwa ukuran saja dari View Controller tidak cukup alasan untuk memecah hal-hal. Ada kerumitan dalam memiliki 1 file besar dan juga kompleksitas dalam memiliki banyak file kecil. Berikut adalah beberapa alasan yang sah untuk refactor untuk memecah View Controller menjadi bagian-bagian yang lebih kecil:
MVC
View Controller seharusnya tidak melakukan lebih dari menjadi perekat penghubung antara View dan Model. Jika Anda memiliki banyak kode koneksi jaringan, kode manipulasi gambar, dll, maka pertimbangkan untuk memecahnya menjadi kelas pembantu.
Kontrol Berganda dengan View Controller sebagai sumber data
Jika Anda memiliki banyak kontrol di layar yang memiliki View Controller Anda sebagai sumber data, pertimbangkan memecahnya menjadi objek sumber data yang terpisah dan menjadikannya sebagai sumber data. Atau Anda juga dapat memecahnya menjadi View Controllers yang terpisah (seperti jika Anda View Controller memiliki tampilan tabel selain controller lainnya, Anda dapat memecahnya ke dalam kelas Table View Controller sendiri).
Kode Gandakan
Jika Anda memiliki kode yang sama persis di berbagai Pengontrol Tampilan, masukkan di 1 lokasi bersama. Itu akan membuat kode Anda dapat digunakan kembali dan membantu mengelola kompleksitas.
Berikut adalah beberapa saran tambahan untuk meminimalkan kompleksitas View Controller:
Storyboard bukan Programmatic
Menciptakan elemen Tampilan adalah banyak kode dan bingkai kode geometri banyak pekerjaan juga. Jika belum mempertimbangkan menggunakan batasan tata letak otomatis dan menempatkan sebanyak mungkin elemen Tampilan di storyboard.
Kode / komentar yang tidak perlu
Pastikan juga untuk menghapus kode / komentar yang tidak perlu. Banyak kali file View Controller baru akan datang dengan metode yang tidak Anda gunakan. Jika Anda tidak menggunakan metode sepertididReceiveMemoryWarning
itu maka aman untuk mengeluarkannya. Juga, karena file View Controller sangat besar kadang-kadang menakutkan untuk menghapus kode atau komentar lama. Jangan menunda itu! Itu hanya menambah kompleksitas.
Notifikasi
Untuk menjawab pertanyaan Anda tentang notifikasi: Notifikasi bukan Golden Hammer untuk digunakan dengan segalanya. Saya menemukan notifikasi berguna ketika beberapa Pengontrol Tampilan perlu memperbarui pada saat yang sama karena 1 tindakan tertentu. Berhati-hatilah dengan notifikasi, menggunakannya secara berlebihan dapat menyebabkan Anda merasa sangat sakit saat mencoba melacaknya.