0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

還在寫大量if來判斷?試試用一個規(guī)則執(zhí)行器來替代它

玩轉(zhuǎn)單片機與嵌入式 ? 來源:稀土掘金技術(shù)社區(qū) ? 作者:稀土掘金技術(shù)社區(qū) ? 2022-11-14 09:27 ? 次閱讀

近日在公司領到一個小需求,需要對之前已有的試用用戶申請規(guī)則進行拓展。我們的場景大概如下所示:

13a0dc28-63a9-11ed-8abf-dac502259ad0.jpg

按照上述的條件我們可以得出的結(jié)論是:

咱們的主要流程主要是基于 and 或者 or 的關系。

如果有一個不匹配的話,其實咱們后續(xù)的流程是不用執(zhí)行的,就是需要具備一個短路的功能。

對于目前的現(xiàn)狀來說,我如果在原有的基礎上來改,只要稍微注意一下解決需求不是很大的問題,但是說后面可維護性非常差。

后面經(jīng)過權(quán)衡過后,我還是決定將這個部分進行重構(gòu)一下。

規(guī)則執(zhí)行器

針對這個需求,我首先梳理了一下咱們規(guī)則執(zhí)行器大概的設計, 然后我設計了一個 V1 版本和大家一起分享一下,如果大家也有這樣的case 可以給我分享留言,下面部分主要是設計和實現(xiàn)的流程和 code。

規(guī)則執(zhí)行器的設計

13b28202-63a9-11ed-8abf-dac502259ad0.jpg

對于規(guī)則的抽象并實現(xiàn)規(guī)則

13daa4ee-63a9-11ed-8abf-dac502259ad0.jpg

執(zhí)行器構(gòu)建

140220dc-63a9-11ed-8abf-dac502259ad0.jpg

執(zhí)行器的調(diào)用

141ec62e-63a9-11ed-8abf-dac502259ad0.jpg

總結(jié)

規(guī)則執(zhí)行器的優(yōu)點和缺點

優(yōu)點:

比較簡單,每個規(guī)則可以獨立,將規(guī)則,數(shù)據(jù),執(zhí)行器拆分出來,調(diào)用方比較規(guī)整;

我在 Rule 模板類中定義 convert 方法做參數(shù)的轉(zhuǎn)換這樣可以能夠,為特定 rule 需要的場景數(shù)據(jù)提供拓展。

缺點:

上下 rule 有數(shù)據(jù)依賴性,如果直接修改公共傳輸對象 dto這樣設計不是很合理,建議提前構(gòu)建數(shù)據(jù)。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 執(zhí)行器
    +關注

    關注

    5

    文章

    370

    瀏覽量

    19261

原文標題:還在寫大量 if 來判斷?試試用一個規(guī)則執(zhí)行器來替代它

文章出處:【微信號:玩轉(zhuǎn)單片機與嵌入式,微信公眾號:玩轉(zhuǎn)單片機與嵌入式】歡迎添加關注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關推薦

    溫室中無線執(zhí)行器節(jié)點設計

    摘要:介紹了溫室中無線傳感網(wǎng)絡的組成及其工作過程,采用基于ARM?Cortex?-M3 的LMS3S1968 微控制和無線收發(fā)芯片nRF905 設計了執(zhí)行器節(jié)點。從硬件和軟件兩
    發(fā)表于 11-02 16:11

    基于LabVIEW的航天執(zhí)行器測試解決方案

    內(nèi))采集到的電機振動進行分析。振動測量是分析的部分,可以幫助我們預測測試結(jié)束前的故障情況。我們需要帶有充電放大器的負載電源測量執(zhí)行器
    發(fā)表于 04-11 09:40

    prisma氣動執(zhí)行器資料

    prisma氣動執(zhí)行器.part01.rar prisma氣動執(zhí)行器.part02.rar prisma氣動執(zhí)行器.part03.rar prisma氣動執(zhí)行器.part04.r
    發(fā)表于 05-03 23:34 ?876次閱讀

    執(zhí)行器由什么組成_執(zhí)行器的工作原理

    在過程控制系統(tǒng)中,執(zhí)行器執(zhí)行機構(gòu)和自動化調(diào)節(jié)機構(gòu)兩部分組成。自動化調(diào)節(jié)機構(gòu)通過執(zhí)行元件直接改變生產(chǎn)過程的參數(shù),使生產(chǎn)過程滿足預定的要求。執(zhí)行機構(gòu)則接受來自控制
    發(fā)表于 01-21 15:18 ?1.1w次閱讀
    <b class='flag-5'>執(zhí)行器</b>由什么組成_<b class='flag-5'>執(zhí)行器</b>的工作原理

    氣動執(zhí)行器的常見故障和解決方法

    氣動執(zhí)行器從文字上就能看出這類是通過氣壓力操作的控制設備,和電動執(zhí)行器對比,氣動執(zhí)行器的適應能力更好,價格也便宜,合理的結(jié)構(gòu)讓其負載力更大,實現(xiàn)了對高力矩輸出的目標。同時比電動
    發(fā)表于 01-21 15:36 ?7261次閱讀

    氣動執(zhí)行器的組成_氣動執(zhí)行器選型

    氣動執(zhí)行器的調(diào)節(jié)機構(gòu)的種類和構(gòu)造大致相同,主要是執(zhí)行機構(gòu)不同。因此在氣動執(zhí)行器介紹時分為執(zhí)行機構(gòu)和調(diào)節(jié)閥兩部分。氣動執(zhí)行器
    發(fā)表于 01-21 15:43 ?3893次閱讀

    電動執(zhí)行器和風門執(zhí)行器之間的差別是什么

    風門執(zhí)行器的作用: 風門執(zhí)行器關鍵作用在供熱系統(tǒng)尾端,根據(jù)與溫度控制裝置起連動,調(diào)整室溫。假如房間內(nèi)總面積很大,能夠安裝2地采暖環(huán)城路,這時候只需應用
    發(fā)表于 02-18 17:19 ?2405次閱讀

    應用風門執(zhí)行器時的關鍵點是什么

    風門執(zhí)行器有很多優(yōu)勢,它有較強的使用性能和相對性較高的精度。專業(yè)人士表明,風門執(zhí)行器安全系數(shù)高,在各種各樣標準下都能穩(wěn)定工作。除此之外,當代風門執(zhí)行器的智能化系統(tǒng)也獲得了提升。根據(jù)多
    發(fā)表于 02-22 11:42 ?468次閱讀

    電動執(zhí)行器控制精度低的解決方案

    不管怎樣種類的電動執(zhí)行器,控制精度全是十分關鍵的點,電動執(zhí)行器也是這般。在電動執(zhí)行器的應用全過程中,有時候會發(fā)生控制精度低的難題,下邊電動執(zhí)行器
    發(fā)表于 04-06 10:18 ?1142次閱讀

    羅托克執(zhí)行器的優(yōu)勢有哪些

    羅托克執(zhí)行器常常與各種閥門搭配運用,起到能夠遠程操控,定時啟閉的作用,給大家日常的運用帶來極大的便利。那么羅托克執(zhí)行器的優(yōu)勢還有哪些呢?下面由我為大家解說下。 羅托克
    發(fā)表于 03-29 22:55 ?808次閱讀

    如何使用Arduino控制大型線性執(zhí)行器

    本文將向你展示如何使用 Arduino 和兩按鈕對大型線性執(zhí)行器進行基本的手動控制。在第組代碼中,第一個按鈕伸出執(zhí)行器,第二
    的頭像 發(fā)表于 04-24 17:25 ?1959次閱讀
    如何使用Arduino控制大型線性<b class='flag-5'>執(zhí)行器</b>

    使用單個執(zhí)行器創(chuàng)建推式呼吸機

    電子發(fā)燒友網(wǎng)站提供《使用單個執(zhí)行器創(chuàng)建推式呼吸機.zip》資料免費下載
    發(fā)表于 12-19 10:36 ?0次下載
    使用單個<b class='flag-5'>執(zhí)行器</b><b class='flag-5'>來</b>創(chuàng)建推式呼吸機

    氣動執(zhí)行器與電動執(zhí)行器:哪個更好?

    氣動執(zhí)行器與電動執(zhí)行器:哪個更好?
    的頭像 發(fā)表于 03-13 16:30 ?4435次閱讀
    氣動<b class='flag-5'>執(zhí)行器</b>與電動<b class='flag-5'>執(zhí)行器</b>:哪個更好?

    氣動執(zhí)行器換電動執(zhí)行器怎么換

    氣動執(zhí)行器和電動執(zhí)行器是工業(yè)自動化領域中常見的兩種驅(qū)動方式。它們各自有其特點和優(yōu)勢,適用于不同的應用場景。在某些情況下,可能需要將氣動執(zhí)行器更換為電動執(zhí)行器,以滿足特定的需求。 了解氣
    的頭像 發(fā)表于 07-10 14:47 ?554次閱讀

    電動執(zhí)行器常見故障及處理方法

    電動執(zhí)行器種廣泛應用于工業(yè)自動化領域的設備,通過接收控制信號驅(qū)動閥門、閘門等設備,實現(xiàn)遠程控制和自動化操作。然而,在使用過程中,電動執(zhí)行器
    的頭像 發(fā)表于 07-10 14:49 ?1138次閱讀