2017-09-07 62 views

回答

0

總之做一兩件事的能力,並把它做好,排序的。通常在SOA中,您將擁有許多不同的服務,每個服務都處理自己的上下文。例如,在銷售系統中,您可能有一位客戶,銷售代表和訂單服務。在銀行體系結構中,您可以擁有客戶,產品,金融工具和交易(借記卡,信用卡)服務。

SOA的一個有趣功能是,一旦你有很多不同的小服務,你就可以開始通過編排其他服務來增加功能。允許我在這裏使用類比。開始將服務視爲樂高積木。他們是一件,一件,只有一件。你可以創建一個房子,一輛汽車或任何其他與塊。

所以功能上下文是服務的主題/目標。例如在銀行業務中,我們會有客戶服務。客戶服務的功能意味着我們只有與該服務相關的操作。例如,創建客戶,按地區查找客戶列表,更新詳細信息等.YOu絕不會通過客戶服務創建新的金融工具。

這個想法是將問題域中的所有對象分解到它們自己的上下文中,並在該上下文中爲這些對象開發功能。

不堅持這種設計模式可能產生的一個問題是,您最終會得到具有奇怪操作的服務,例如讓客戶創建金融工具操作。這是不正確的,因爲客戶可能與金融工具(他們的儲蓄賬戶,信用卡等)相關聯,但它不是該工具的所有者。

基本上所有的意思是,如果你創建一個服務,它應該只處理一個關注的領域,並且只有與這個關注有關的操作。

請記住,沒有什麼可以告訴你這些背景是什麼。這是您根據上下文決定的設計過程的一部分。

相關問題