Saya mengalami masalah dalam menentukan pola data ini yang saya temui saat mengerjakan beberapa aplikasi.
Terdiri dari:
- Jenis objek yang terdiri dari banyak objek itu sendiri
- Tipe objek kedua, di mana setiap instance 'memiliki banyak' objek pertama
- Dan, masing-masing sub-objek dari objek pertama dapat dimodifikasi per setiap asosiasi ke tipe objek kedua.
Contoh sederhana mungkin:
- Kursus pemrograman yang terdiri dari serangkaian pelajaran
- Pelajaran terdiri dari satu set tugas.
- Suatu kursus dapat diberikan kepada seorang siswa.
- Namun, begitu sebuah mata pelajaran diberikan kepada seorang siswa, setiap pelajaran dan / atau tugas dapat disesuaikan untuk siswa tersebut, dengan pemindahan dan penambahan, ke titik di mana mata pelajaran yang asli mungkin tidak dapat dikenali.
Dalam solusi saya, hasil dari ini adalah:
Pada tugas kursus kepada siswa, kursus dimuat ke dalam memori. Kemudian untuk setiap sub-objek, objek hubungan siswa / sub-objek dihasilkan dengan metadata yang sesuai. Pada dasarnya, saya menggunakan objek asli sebagai templat untuk menghasilkan objek yang dapat disesuaikan yang diperlukan.
Ini menghasilkan sejumlah besar data ketika sub-objek menjadi lebih kompleks dan diberi nomor. Saya bertanya-tanya apakah ada beberapa optimasi atau pola untuk mengurangi jumlah logika / kompleksitas yang diperlukan untuk memanipulasi pola data ini.