Baru-baru ini saya sedang mengusahakan projek yang boleh dikonfigurasikan untuk halaman acara syarikat, sebut saja cms
Fungsinya adalah untuk mengkonfigurasi modul yang sepadan dalam bahagian belakang pengurusan setiap kali terdapat acara promosi seperti Double 11, dan akhirnya menjana halaman tersebut
Antaramuka mempunyai struktur yang serupa dengan ini
{
list:[
{
type: 1, //这个模块的type,比如1对应商品组合模块
cmsId: 1, //这个模块的唯一id
data: {
//具体的这个模块的数据
}
}
],
code: 200,
msg: ''
}
Pemikiran semasa saya ialah:
Tentukan antara muka biasa melalui corak kilang yang ringkas
var factoryInterface = function(type,data){
switch(type){
case 1:
return new BannerWithBroadcastTpl(data)
break;
case 2:
return new PicDisplayTpl(data)
break;
}
}
BannerWithBroadcastTpl dan PicDisplayTpl kedua-duanya adalah komponen yang ditakrifkan Setiap komponen mempunyai kaedah ciptaan untuk mencipta komponen
Gunakan kod berikut untuk melengkapkan permulaan projek
for(var i=0,length=data.length;i<length;i++){
!(function(i){
factoryInterface(data[i].type,data[i]).create(_this.root)
})(i)
}
Sekarang saya ingin berbincang dengan tuan-tuan sama ada terdapat rancangan reka bentuk kod lain untuk pelan ini. Semua orang dialu-alukan untuk memberi komen~~
Tulis di hadapan
Sebelum reka bentuk projek, mari tanya beberapa soalan:
Apakah masalah yang perlu kita selesaikan dalam pembangunan sebenar aktiviti Double 11? Apakah penyelesaian kepada masalah ini?
Bolehkah kita menggunakan sistem ini untuk menyelesaikan masalah yang kita hadapi dalam pembangunan sebenar aktiviti Double 11? Bolehkah ia menyelesaikan berpuluh-puluh peratus masalah?
Berapa kos untuk membuat projek ini? Adakah berbaloi untuk menggunakan Kos ini untuk menyelesaikan bahagian tertentu masalah?
Teras Projek
Rancang
Design
Pelaksanaan (berperingkat)
Isu kiri
Rancangan Projek
Tanyakan soalan:
Berapa banyak mata reka bentuk yang sama terdapat dalam setiap acara Double 11, dan berapa banyak mata yang boleh diabstrak? --> Adakah anda mahu menjadi sistem templat yang mudah, atau sistem dengan fungsi yang lengkap? Automatik sepenuhnya atau separa automatik? --> Apakah fungsi yang perlu dilaksanakan? --> Apakah sumber yang ada dan adakah ia mencukupi? (tenaga kerja, masa, dll.)
Fikirkan dengan jelas tentang isu-isu di atas dan berikan rancangan yang lengkap.
Reka Bentuk Projek
Berdasarkan pemikiran melalui semua isu di atas, berikut adalah contoh:
Bahagian titik fungsi: modul, halaman, PV/UV/Track, acara
Apakah modul yang boleh dikongsikan? Berapakah jenis paparan yang ada untuk jenis bongkah kayu? Oleh itu, sekurang-kurangnya dua typeId diperlukan untuk membezakannya.
Halaman dan modul digabungkan dengan ID.
Titik pengebumian data dan kombinasi halaman.
Cara mengendalikan sistem acara. Pemprosesan operasi pada halaman.
Lain-lain....
Pelaksanaan projek
Pertimbangkan beberapa soalan:
Bagaimana untuk melaksanakan projek secara berperingkat?
Bagaimana untuk beralih pada versi sebelumnya?
Bagaimana untuk mengesahkan dengan cepat sama ada idea kita betul?
Berapa orang yang diatur untuk membangun dan berapa ramai orang yang terus mengekalkan projek ini?
Isu kiri
Projek ini hanya boleh meliputi beberapa aktiviti, dan banyak aktiviti yang tidak universal Keperluan rakyat sentiasa berubah.
Semakin banyak modul perlu diselenggara, dan penyelenggaraan sangat sukar.
Lain-lain...
Ringkasan
Saya hanya memberi contoh mudah di sini tentang cara menyelesaikan masalah projek ini. Saya harap ada lebih banyak penyelesaian. Semua orang boleh mengadu...