什麼是工作流?為什麼程式設計師要用它?

2021-10-07 15:31:43 字數 1047 閱讀 8820

每乙個程式設計師,在接觸到工作流的時候,都會有這麼乙個疑問——我用一般的方法可以實現,為什麼還要用工作流?

我曾經也問過這個問題,不過現在稍微有點明白了。別著急要答案,看過下面的例子,或許你也就明白一些了。

這是乙個簡單的業務——訂貨流程:

如果不使用工作流技術,從頭開始開發這個訂購流程的業務邏輯,我們需要:

最終結果就是這樣:

這還不包括監視、控制、分析流程的部分。

但是,如果我們使用了工作流

所以在合適的專案中引入工作流技術,對於基礎開發來說,是非常有益處的:

降低開發風險

通過使用諸如活動、流轉、狀態、行為這樣的術語,使得業務分析師和開發人員使用同一種語言交談成為可能。優秀的流程設計建模工具,甚至能使開發人員不必將使用者需求轉化成詳細設計文件。

流程實現的集中統一

應對業務流程經常變化的情況,使用工作流技術的最大好處是使業務流程的實現**,不再散落在各式各樣的業務系統中。

加速開發

開發者不用再關注流程的參與者、活動節點的銜接、流轉控制……因為這些工作很多被工作流框架接管了。因而開發者開發起來更快、**出錯更少、系統更加容易維護。

提公升對迭代開發的支援

如果系統中業務流程部分被硬編碼,就不容易更改,需求分析師就會花費很大的精力在開發前的業務分析中,並且希望一次成功。但可悲的是,在任何軟體專案開發中,這都很少能實現。工作流管理系統使得業務流程很容易部署和重新編排,業務流程相關的應用開發可以以一種「迭代/漸進」的方式推進,也就是說工作流技術在某種程度上支援「需求分析不必一次完全成功」。

什麼是「閉包」(closure)為什麼要用它?

什麼是閉包 閉包是指有權訪問另乙個函式作用域中變數的函式,建立閉包的最常見的方式就是在乙個函式內建立另乙個函式,通過另乙個函式訪問這個函式的區域性變數,利用閉包可以突破作用鏈域,將函式內部的變數和方法傳遞到外部。閉包的特性 1.函式內再巢狀函式 2.內部函式可以引用外層的引數和變數 3.引數和變數不...

什麼是工作流

什麼是工作流?工作流是從英文單詞work flow中直譯過來的。最直白的意思就是日常工作中相對固定的流程計算機化。在此列舉兩個工作流簡例 客戶到銀行開戶的工作流 客戶索取開戶資料單 資料填寫 營業員核對個人證件 營業員核對帳款 客戶獲取存摺和收據 客戶核對。某產品銷售的工作流示意圖 一直以來,企業管...

什麼是工作流?

工作流就是業務流程的計算機化或自動化。許多公司採用紙張表單,手工傳遞的方式,一級一級審批簽字,工作效率非常低下,對於統計報表功能則不能實現。而採用工作流軟體,使用者只需在電腦上填寫有關表單,會按照定義好的流程自動往下跑,下一級審批者將會收到相關資料,並可以根據需要修改 跟蹤 管理 查詢 統計 列印等...