Akhir-akhir ini, saya terobsesi dengan "modularisasi", termasuk artikel dan PPT, dan saya terpaksa memikirkan banyak hal terkait. Untuk memilah pemikiran saya tentang "modularitas" selama periode ini, sebagian besar didasarkan pada pengalaman dan pemahaman saya sendiri tentang pekerjaan rekonstruksi halaman sampai batas tertentu, dan saya berharap saya dapat mempelajari hal baru dengan meninjau masa lalu.
"Modular" hanyalah sebuah nama trendi untuk teknologi dan metode yang telah kita gunakan di masa lalu, sama seperti "Ajax". Namun, seiring tren perkembangan rekonstruksi halaman, orang-orang semakin memperhatikannya, dan tanpa sadar mereka sering berbicara tentang "modularitas", tetapi apakah Anda benar-benar memahami apa itu "modularisasi"?
Apa itu modularitas?
Ada 28 penafsiran "modularitas" dalam CNKI . Terlihat bahwa pemikiran “modular” banyak digunakan. Penjelasan yang paling mendekati "modularisasi" dalam rekonstruksi halaman mungkin adalah penjelasan dalam pengembangan perangkat lunak.
Pertama-tama mari kita lihat bagaimana entri Baidu menjelaskan “ modularitas ”:
Modularisasi mengacu pada proses membagi sistem perangkat lunak menjadi beberapa modul lapis demi lapis dari atas ke bawah ketika memecahkan masalah yang kompleks. Setiap modul menyelesaikan sub-fungsi tertentu, dan semua modul dirangkai dengan cara tertentu menjadi satu kesatuan. Selesaikan fungsi yang dibutuhkan oleh seluruh sistem. Modul memiliki atribut dasar berikut: antarmuka, fungsi, logika, dan status. Fungsi, status, dan antarmuka mencerminkan karakteristik eksternal modul, dan logika mencerminkan karakteristik internalnya arsitektur perangkat lunak, modul. Ini adalah unit yang dapat digabungkan, dibongkar dan diganti.”
Ada juga beberapa buku terkait, dan siswa yang tertarik dapat mencarinya. Perlu ditegaskan bahwa yang kita pelajari adalah cara berpikir.
Mengapa produksi halaman harus bersifat modular?
Konten situs bertambah dan kode menjadi membengkak, yang secara bertahap memengaruhi pengalaman klien (terutama kecepatan pembukaan) dan efisiensi pemeliharaan. Apakah ada cara untuk mengatasi masalah ini?
Kita dapat dengan mudah memikirkan: mengurangi redundansi kode, meningkatkan penggunaan kembali kode, kompresi gambar, dll., tetapi bagaimana cara mencapainya? Pemikiran modular dapat diselesaikan, yang secara efektif dapat mengurangi redundansi kode dan meningkatkan penggunaan kembali kode. Yang lebih penting, hal ini dapat mendukung pemeliharaan multi-orang dan mengurangi biaya pemeliharaan. Metode penulisan CSS lebih fleksibel dan dapat dengan mudah menyebabkan penggabungan kode. Penggunaan modularisasi juga dapat mengurangi penggabungan sampai batas tertentu, yang juga berguna untuk menemukan bug. Oleh karena itu, kita harus lebih memperhatikan dan menggunakan "pemikiran modular" untuk menulis situs pada tahap awal situs.
Sebagian besar pengoptimalan kinerja situs yang sering kami sebutkan sebelumnya juga melibatkan "modularisasi", seperti meningkatkan penggunaan kembali kode, meningkatkan efisiensi pengembangan, dll. Ada banyak keuntungan dari "modularisasi". Saya akan mencantumkannya secara singkat:
Poin terpenting, menurut saya, adalah "meningkatkan penggunaan kembali kode", yang juga merupakan salah satu fitur terpenting dari modularitas.
Bagaimana cara mencapai "modularitas"?
Masalah utama di sini adalah "modularitas" HTML dan CSS. Kita dapat melihat cara menerapkan skinning:
Dari sini kita dapat melihat implementasi antarmuka HTML dan CSS:
Untuk mengimplementasikan antarmuka ini dengan lebih baik, diperlukan konvensi, aturan, dan spesifikasi yang relevan (interaksi, desain, halaman, pengembangan), misalnya: semua status saat ini menggunakan nama kelas yang sama "nonce", dan semua performa berwarna abu-abu gunakan Tambahkan "_n" setelah nama kelas asli, cara mengimplementasikan Tab, dll. Dengan adanya konvensi, aturan, dan spesifikasi ini, kode HTML dapat dengan mudah dibuat template dan disatukan dengan spesifikasi antarmuka.
Ada dua kesalahpahaman yang perlu dipahami terlebih dahulu:
Modul yang sepenuhnya independen ditempatkan dalam proyek yang sama. Karena proyek memiliki kinerja dan kesatuan interaktifnya sendiri, harus ada bagian yang serupa di antara modul. Bagian-bagian ini dapat diusulkan sebagai definisi umum untuk mengurangi redundansi , dan tidak mungkin untuk dipisahkan sepenuhnya. Oleh karena itu, poin yang sangat penting dalam modularisasi adalah "penggandengan moderat". Dengan definisi publik, maka perlu dilakukan penyesuaian implementasi gaya modul, dan penyesuaian ini juga akan mempengaruhi implementasi "antarmuka".
Karena artikel ini terutama membahas tentang cara berpikir modular, detail implementasi spesifiknya akan dibahas di artikel mendatang. Untuk konten terkait, Anda dapat membaca tulisan sebelumnya " Modularisasi dari Desain Furnitur IKEA ". Selamat berdiskusi bersama.