關於複雜任務與異常處理的設計模式探討!
各位大俠目前我在專案中遇到了這樣一個問題,
現在把我的想法提出來探討一下:
現在把我的想法提出來探討一下:
[專案情況]
有一類複雜的任務是由A,B,C,D,E...不同子任務組成的。
它們之間具有關聯性,即執行完了A後才能執行B
它們之間不具有不可重複性,即執行完了A之後不能再執行A
並且任務有多個組合,也就是說:
任務1:Task1=A+B+C+D
任務2時:Task2=B+C+D+E
還有一個情況就是Task1執行時會產生異常
比如A後產生了異常,系統將會終止Task1,
產生新任務Task1new=B+C,(因為A任務不能重做)
[我的思考]
採用Builder模式,可以解決Task1,Task2不同產品類問題。
但,當執行Task1(A)產生異常時後續任務(B+C)將會成為一個新的產品類。
如此整個系統本來只有兩個產品類現在由於異常會變成數個。
有沒有更好的解決方案呢?
希望得到指點,thx!
相關文章
- 實踐探討Python如何進行異常處理與日誌記錄Python
- 複雜任務中,流程的解耦設計解耦
- 探索責任鏈模式:優雅處理複雜請求鏈模式
- Java 異常表與異常處理原理Java
- 異常處理機制(二)之異常處理與捕獲
- Spring Boot 中關於自定義異常處理的套路!Spring Boot
- 關於volatile與指令重排序的探討排序
- 探討一個比較複雜的查詢
- 異常的處理
- 異常-throws的方式處理異常
- 異常篇——異常處理
- 設計一個全域性異常處理器
- 異常處理
- 異常處理與推導式
- Flutter異常監控 - 伍 | 關於異常監控框架設計的思考Flutter框架
- 關於C++ 的異常處理,解答在這來看看吧~C++
- 關於python中slicing的探討Python
- Python 程式設計高效技巧:最佳化、異常處理與效能提升Python程式設計
- PHP CLI 模式多子程式任務處理PHP模式
- 任務設計:關於幸福的生產力
- 探討遊戲反饋的處理方法遊戲
- JSP 異常處理如何處理?JS
- 第四十五章:基於SpringBoot 設計業務邏輯異常統一處理Spring Boot
- php錯誤與異常處理方法PHP
- golang - 異常處理Golang
- 異常處理2
- 異常處理1
- oracle異常處理Oracle
- Java 異常處理Java
- Python——異常處理Python
- Python異常處理Python
- ThinkPHP 異常處理PHP
- JavaScript 異常處理JavaScript
- JAVA異常處理Java
- Abp 異常處理
- JAVA 異常處理Java
- 08、異常處理
- SpringMVC異常處理SpringMVC
- React 異常處理React