[發明專利]一種應用系統中的公式設計及解析方法在審
| 申請號: | 201810173536.1 | 申請日: | 2018-02-28 |
| 公開(公告)號: | CN110209376A | 公開(公告)日: | 2019-09-06 |
| 發明(設計)人: | 肖志;范少亭;張輝 | 申請(專利權)人: | 無錫銳泰節能系統科學有限公司 |
| 主分類號: | G06F8/20 | 分類號: | G06F8/20 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 214135 江蘇省無錫市新吳區*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 運算 基類 公式設計 面向對象 應用系統 運算公式 解析 抽象 常量 單個對象 單一類型 公式分解 獲取設備 應用場景 運算類型 類繼承 乘法 除法 遞歸 多態 減法 加法 分解 轉化 | ||
本發明提供了一種應用系統中的公式設計及解析方法,包括:運用面向對象的思想,抽象出一個運算基類,定義好運算虛方法和解析入口,把每一個具體的運算類型:加法、減法、乘法、除法、常量、求平方、獲取設備變量值等等,抽象成一個運算類,運算類繼承自運算基類,根據自身運算的特點,實現具體運算方法;對于一個給定的運算公式,將其遞歸分解成單個對象運算,每一個對象的類型都是運算基類類型,由于多態的特性,復雜的運算公式被轉化為單一類型的對象運算。通過本發明的技術方案,可以很好的將復雜的公式分解成同一類型的對象運算,對于不同的應用場景,通過面向對象的設計,可以很好的擴展。
技術領域
本發明涉及軟件算法設計領域,具體地,涉及一種應用系統中的公式設計及解析方法。
背景技術
現在很多的應用系統中都有對數據做運算的操作,但是在這些已有的系統中對于公式的處理并沒有一種通用的處理方案,都只能解決各自的問題,代碼可供重復利用的程度不高,支持的公式類型比較單一,而且不易擴展,不能很好的支持對象之間的運算。在系統后期的使用過程中,一些運算還需要臨時的改變,這要求公式還需要有一定的靈活性。
面向對象思想開發的系統由于繼承、封裝、多態的特性,自然設計出高內聚、低耦合的系統結構,使得系統更靈活、更容易擴展。
發明內容
本發明的目的在于,提供一種可以方便的復用和擴展的運算公式設計和解析方法。
本發明采用的技術方案是:
一種應用系統中的公式設計及解析方法運用面向對象的思想,抽象出一個運算基類,定義好運算虛方法和解析入口,把每一個具體的運算類型:加法、減法、乘法、除法、常量、求平方、獲取設備變量值等等,抽象成一個運算類,運算類繼承自運算基類,根據自身運算的特點,實現具體運算方法;對于一個給定的運算公式,將其遞歸分解成單個對象運算,每一個對象的類型都是運算基類類型,由于多態的特性,復雜的運算公式被轉化為單一類型的對象運算。
所述的運算類型包括加法、減法、乘法、除法、常量、求平方、獲取設備變量值等等,實際使用中,根據應用場景可以抽象出不同的運算類進行擴展。
所述運算類有兩種類型:運算可分解和運算不可分解。
所述運算可分解類在實例化的時候具有多個同類型的屬性,這些屬性就是分解后的單個運算對象。
所述解析入口是一個靜態方法,具體功能是:根據指定的運算識別符號識別順序將運算公式分解成多個運算并創建相應的運算實例,保持兩個原則:先識別優先級低的運算;分解公式時,保證識別的運算符號左側括號是成對出現或者不出現。
所述遞歸分解具體的實現是:判斷當前運算實例對應的類型是否是可分解類,可分解類在實例化的構造函數中調用解析入口函數來創建新的運算實例,以此類推,直至解析完整的公式。
本發明的技術方案具有以下有益效果:很好的將復雜的公式分解成同一類型的對象運算;對于不同的應用場景,通過面向對象的設計,能夠很方便的實現擴展。
附圖說明
圖1為本發明技術方案所述的一種應用系統中的公式設計及解析方法的運算類關系圖;
圖2為本發明技術方案所述的一種應用系統中的公式設計及解析方法的運算公式解析流程。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于無錫銳泰節能系統科學有限公司,未經無錫銳泰節能系統科學有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810173536.1/2.html,轉載請聲明來源鉆瓜專利網。





