javascript - Perbincangan mengenai rancangan reka bentuk projek
迷茫
迷茫 2017-05-19 10:41:26
0
1
565

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~~

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

membalas semua(1)
左手右手慢动作

Tulis di hadapan
Sebelum reka bentuk projek, mari tanya beberapa soalan:

  1. Apakah masalah yang perlu kita selesaikan dalam pembangunan sebenar aktiviti Double 11? Apakah penyelesaian kepada masalah ini?

  2. Bolehkah kita menggunakan sistem ini untuk menyelesaikan masalah yang kita hadapi dalam pembangunan sebenar aktiviti Double 11? Bolehkah ia menyelesaikan berpuluh-puluh peratus masalah?

  3. Berapa kos untuk membuat projek ini? Adakah berbaloi untuk menggunakan Kos ini untuk menyelesaikan bahagian tertentu masalah?

Teras Projek

  1. Rancang

  2. Design

  3. Pelaksanaan (berperingkat)

  4. 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:

  1. Bahagian titik fungsi: modul, halaman, PV/UV/Track, acara

  2. Apakah modul yang boleh dikongsikan? Berapakah jenis paparan yang ada untuk jenis bongkah kayu? Oleh itu, sekurang-kurangnya dua typeId diperlukan untuk membezakannya.

  3. Halaman dan modul digabungkan dengan ID.

  4. Titik pengebumian data dan kombinasi halaman.

  5. Cara mengendalikan sistem acara. Pemprosesan operasi pada halaman.

  6. Lain-lain....

Pelaksanaan projek
Pertimbangkan beberapa soalan:

  1. Bagaimana untuk melaksanakan projek secara berperingkat?

  2. Bagaimana untuk beralih pada versi sebelumnya?

  3. Bagaimana untuk mengesahkan dengan cepat sama ada idea kita betul?

  4. Berapa orang yang diatur untuk membangun dan berapa ramai orang yang terus mengekalkan projek ini?

Isu kiri

  1. Projek ini hanya boleh meliputi beberapa aktiviti, dan banyak aktiviti yang tidak universal Keperluan rakyat sentiasa berubah.

  2. Semakin banyak modul perlu diselenggara, dan penyelenggaraan sangat sukar.

  3. 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...

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan