[發(fā)明專利]一種針對(duì)通用化模型客制化需求開發(fā)方法有效
| 申請(qǐng)?zhí)枺?/td> | 202011350792.7 | 申請(qǐng)日: | 2020-11-26 |
| 公開(公告)號(hào): | CN112463147B | 公開(公告)日: | 2023-07-04 |
| 發(fā)明(設(shè)計(jì))人: | 王一君;陳燦;段國(guó)增;蘇成龍 | 申請(qǐng)(專利權(quán))人: | 杭州覽眾數(shù)據(jù)科技有限公司 |
| 主分類號(hào): | G06F8/35 | 分類號(hào): | G06F8/35;G06F8/71;G06F8/65;G06F8/61 |
| 代理公司: | 杭州君度專利代理事務(wù)所(特殊普通合伙) 33240 | 代理人: | 朱月芬 |
| 地址: | 310000 浙江省杭州市濱*** | 國(guó)省代碼: | 浙江;33 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 針對(duì) 通用 模型 客制化 需求 開發(fā) 方法 | ||
1.一種針對(duì)通用化模型客制化需求開發(fā)方法,其特征在于包括如下步驟:
步驟1:根據(jù)項(xiàng)目主體模型的基本構(gòu)成,對(duì)主體模型進(jìn)行解耦,將主體模型分為四個(gè)層級(jí),在框架的src目錄下放置主體模型的四層結(jié)構(gòu),主體模型四層結(jié)構(gòu)具體如下:
第一層:application文件夾作為模型的appliction層,主要作用是用來存放主體模型的基本流程代碼;
第二層:business_unit文件夾作為模型的business_unit層,是用來存放主體模型的業(yè)務(wù)邏輯代碼,是存在依賴關(guān)系的類;
第三層:component文件夾作為模型的component層,用來存放主體模型的功能組件代碼;
第四層:basic文件夾作為模型的basic層,用來存放模型數(shù)據(jù)讀取代碼,是對(duì)獲取業(yè)務(wù)單體數(shù)據(jù)的封裝類;
步驟2:構(gòu)建框架下項(xiàng)目的客制化代碼存放路徑,客制化代碼通過繼承主體模型來對(duì)主體模型進(jìn)行擴(kuò)展;且在框架中,將放置客制化代碼的文件夾extend_dev創(chuàng)建在src目錄下;
步驟3:在通用化模型進(jìn)行開發(fā)時(shí),主體模型在四層結(jié)構(gòu)的基礎(chǔ)上進(jìn)行版本的迭代和升級(jí),客制化代碼在文件夾extend_dev中通過繼承的方式完成需求的開發(fā);
步驟4:對(duì)框架下項(xiàng)目進(jìn)行部署時(shí),首先將對(duì)應(yīng)租戶的客制化代碼部署在src目錄的extend_dev文件夾下,再將項(xiàng)目部署在對(duì)應(yīng)租戶的云服務(wù)器上為租戶提供服務(wù);
步驟5:對(duì)完成項(xiàng)目部署的框架進(jìn)行測(cè)試,解決存在的主體模型/客制化代碼版本異常問題和客制化代碼與主體模型不匹配問題;
步驟6:框架測(cè)試無異常后,執(zhí)行項(xiàng)目;
將客制化代碼加載到主體模型,通過客制化代碼加載腳本實(shí)現(xiàn)項(xiàng)目運(yùn)行:執(zhí)行到src路徑下的產(chǎn)品模型時(shí),根據(jù)python語言的特性優(yōu)先執(zhí)行src路徑下的__init__.py文件;客制化代碼加載組件的入口函數(shù)在__init__.py文件中,所以主體模型運(yùn)行前會(huì)將客制化代碼加載到主體模型中。
2.根據(jù)權(quán)利要求1所述的一種針對(duì)通用化模型客制化需求開發(fā)方法,其特征在于步驟5的不匹配問題具體解決如下:
針對(duì)人為原因?qū)е虏渴鸬闹黧w模型代碼和項(xiàng)目的主體模型代碼版本不一致問題,通過提供主體模型版本校驗(yàn)?zāi)_本解決;具體:在項(xiàng)目部署時(shí)對(duì)主體模型代碼進(jìn)行MD5加密,并生成該版本對(duì)應(yīng)的MD5碼,同時(shí)項(xiàng)目上的主體模型代碼也會(huì)生成一份對(duì)應(yīng)的MD5碼;對(duì)比兩份MD5碼來判斷主體模型代碼版本的一致性,若不一致,則重新部署主體模型代碼;
針對(duì)人為原因?qū)е驴椭苹a的部署出現(xiàn)版本部署錯(cuò)誤,針通過提供客制化代碼版本校驗(yàn)?zāi)_本解決;由于客制化代碼并沒有對(duì)應(yīng)的版本信息,因此對(duì)客制化代碼版本的校驗(yàn),具體:針對(duì)部署的客制化代碼和客制化代碼倉庫對(duì)應(yīng)分支的最新客制化代碼進(jìn)行對(duì)比,判斷部署的客制化代碼是否與對(duì)應(yīng)分支的最新客制化代碼保持一致,若不一致則重新部署客制化代碼;
針對(duì)客制化代碼與主體模型不匹配問題,通過提供客制化代碼與主體模型代碼匹配校驗(yàn)?zāi)_本解決,在開發(fā)中會(huì)存在由于主體模型更新而客制化代碼沒有及時(shí)更新適配主體模型,導(dǎo)致產(chǎn)品模型報(bào)錯(cuò);該腳本針對(duì)客制化代碼中的類和主體模型中的類進(jìn)行匹配校驗(yàn),通過動(dòng)態(tài)加載類匹配、函數(shù)匹配來解決該問題,并輸出日志。
3.根據(jù)權(quán)利要求1或2所述的一種針對(duì)通用化模型客制化需求開發(fā)方法,其特征在于步驟5所述的客制化代碼與主體模型匹配校驗(yàn)?zāi)_本的校驗(yàn)實(shí)現(xiàn)如下:
①:動(dòng)態(tài)加載客制化代碼,驗(yàn)證客制化代碼中的import導(dǎo)入模塊是否存在錯(cuò)誤,如果存在錯(cuò)誤則說明當(dāng)前客制化代碼和主線模塊代碼存在差異,需要進(jìn)行檢驗(yàn);
②:對(duì)類繼承關(guān)系進(jìn)行校驗(yàn),因?yàn)榭椭苹a繼承主體模型中的模塊,所以獲取客制化代碼中的類名和客制化代碼繼承的父類類名以及主體模型中類的類名,判斷客制化代碼的父類是否存在于主體模型,若不存在進(jìn)行檢查;
③:對(duì)函數(shù)進(jìn)行校驗(yàn),驗(yàn)證客制化代碼中的函數(shù)是否在主體模型中存在。
4.根據(jù)權(quán)利要求3所述的一種針對(duì)通用化模型客制化需求開發(fā)方法,其特征在于步驟6所述的加載的過程實(shí)現(xiàn)包括:
加載python內(nèi)置的sys.module;
獲取客制化代碼文件路徑;
動(dòng)態(tài)加載客制化代碼,并將加載的客制化代碼信息存放到列表;
生成客制化代碼類和所繼承的對(duì)應(yīng)的主體模型的類的映射關(guān)系;
在sys.module中查找對(duì)應(yīng)的主體模型的類映射關(guān)系;
將sys.module中的主體模型的類映射關(guān)系改為客制化代碼類的映射關(guān)系;
完成客制化代碼加載到主線。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于杭州覽眾數(shù)據(jù)科技有限公司,未經(jīng)杭州覽眾數(shù)據(jù)科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011350792.7/1.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 一種客制化基本輸入輸出系統(tǒng)的更新方法
- 一種光電元件的客制化制造方法
- 應(yīng)用程序圖形用戶界面客制化方法與計(jì)算機(jī)可讀取儲(chǔ)存媒體
- 一種光電元件的客制化制造方法
- 客制化數(shù)據(jù)導(dǎo)入方法、終端及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 客制化軟件的處理方法、嵌入式系統(tǒng)設(shè)備及存儲(chǔ)介質(zhì)
- 汽車客制化方法、設(shè)備及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 一種按消費(fèi)者客制化需求生產(chǎn)產(chǎn)品的方法和裝置
- 系統(tǒng)客制化方法、裝置及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 路由器設(shè)備客戶自助批量客制化的方法、裝置及儲(chǔ)存介質(zhì)





