2011-04-09 84 views
0

在最新版本的MSDN Magizine中,有一篇文章(MSDN Magizine),其中引用了'If-Then-Throw'模式。這種模式的想法很有意義。儘管我似乎無法找到任何正式的定義。有沒有人聽說過這個?If-Then-Throw模式?

+2

這些也被稱爲警衛 - 嘗試搜索... – 2011-04-09 21:38:10

+1

另一個名稱是「先決條件檢查」。 – 2011-04-09 21:38:59

回答

0

沒有答案,但更多的一個額外的問題。自從引入結構化例外之前,我一直在這裏工作。當他們是時,「規則」是,他們真的只是爲了讓一個不可恢復的錯誤向用戶發出優雅的「信號」。它清楚地表明,它們不會被用於任何類似於商業規則或任何我們認爲是邏輯信號的事物。我目前已經有了一個我正在使用的Web服務項目,正如您所描述的那樣使用了該模式。它基本上是一個xml over http應用程序,兩邊都有許多自定義類需要轉換爲提供直接SOAP,並且它是一個NIGHTMARE,它解釋了這一點,因爲我們正在處理的服務器並不真正支持公開這些類型的自定義異常通過SOAP錯誤......它應該和它的公司「標準」,但它是供應商用「我們對規範的解釋......」開始回答的那些事情之一,bleech。

因此,我的另一個問題是什麼時候發生了這種變異?它真的被認爲是做事的好方法嗎?我不確定它是否在所有平臺上都是相同的,但在JavaLand中,在幾乎普遍接受Spring的影響下,對於檢查的異常存在主要抵觸,所以在這種情況下,並不一定是「合同」,你會有無法解釋的和意想不到的例外冒出各地。

我知道錯誤代碼被認爲是古怪和舊式的,但它們似乎對我一直在努力的項目有更好的工作,但一如既往,我期待着接受其他方面的教育。

謝謝。