日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

业务系统里面常见的方法接口设计

發布時間:2023/12/19 windows 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 业务系统里面常见的方法接口设计 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在程序中用得最多的還是方法,在處理業務的系統中如何設計方法是一個很重要的問題。很多系統由于缺乏統一的約定而導致維護困難。本文主要介紹的是偶在平常的開發中總結出來的一些方法設計的思路。希望大家不嫌棄。

?

1.???????? 簡單的方法

?void DoSth(args)
??? {

?????????? // do some thing here

?????????? // throw some error here if the method was not run correctly?
??? }

?????? 方法沒有返回值,也沒有特別的錯誤標示,一般用在一些不易出錯的 所以如果方法有可能執行不成功的時候,則可以在方法里面拋出異常,在調用的地方用catch捕捉。或者根本不捕捉方法里面可能產生的異常,從而讓異常跟著堆棧往上層爬,一直到合適的位置才進行捕捉。這種情況通常用于對方法中的異常沒有十足的把握處理、不想在本方法中處理異常、有意向上層屏蔽底層異常的情況。很多設計這主張“底層拋出異常,上層處理異常”的設計原則,在這種設計原則的指導下,用的最多的方法設計就是這種。

?

以下的幾種方法都要求盡量捕捉方法中可能存在的Exception。

?

2.???????? 返回字符串/數字

string/int DoSth(args)
{

?????? // do some thing here

?????? // return some message if the method was not run correctly

}

執行某個方法,然后把結果用字符串/數字的形式返回,比如返回“OK”/1表示執行成功,返回“不能預料的錯誤”/-1等信息表示沒有正確執行

?

3.???????? 返回布爾值

bool DoSth(args)
{

?????? // do some thing here

?????? // return true or false to tell the caller if the method was run correctly

}

執行某個方法,然后把結果用bool值的形式返回,true表示執行成功,false表示執行失敗。一般用在只關心結果,不在乎為什么是那個結果或者導致結果的原因已經很明確的時候。

?

4.???????? 返回布爾值和錯誤信息

bool DoSth(args, out string message)
{

?????? // do some thing here

// return true or false to tell the caller if the method was run correctly

?????? // set the error message to “message” if exception or error occurred.

}

?????? 執行某個方法,然后把結果用bool值的形式返回,如果出錯,將錯誤信息設置到一個out 的參數中。這種方法適合于那些比較復雜,可能出現多種意外的方法,執行中出現的意外可以通過message來查看,而結果可以通過返回值來查看。調用方可以只在乎結果,也可以在乎原因。

?

5.???????? 兩個方法合作(或者一個方法和一個屬性合作的方法)

string errorMessage;

bool DoSth1(args)
{

?????? // do some thing here

?????? // return true or false to tell the caller if the method was run correctly

?????? // set the error message to “errorMessage” if exception or error occurred.

?

}

bool DoSth2(args)

{

?????? // do some thing here

// return true or false to tell the caller if the method was run correctly

?????? // set the error message to “errorMessage” if exception or error occurred.

}

?

string GetLastError()
{
?????? return errorMessage;
}

?

方法本身只返回結果,但是當結果為false的時候,可以通過GetLastError來獲取最后一個錯誤信息。這種設計適合于類里面存在很多可能出錯的方法的情況,比如上面的DoSth1,DoSth2,這樣就不必要為每個方法添加out參數,在實際中用得比較多。另外,當程序中存在循環,而又不想因為循環的某一次發生錯誤而終止程序的時候,也可以采取這種辦法。


事實上,每一種方法都有其用武之地,?問題的關鍵在于我們使用一種約定,最好的辦法就是在同一個系統里面盡量只使用其中的一種,以避免維護和后續開發上的麻煩。

轉載于:https://www.cnblogs.com/QuitGame/archive/2005/06/30/183732.html

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的业务系统里面常见的方法接口设计的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。