我剛剛繼承了一個基於網絡的旅行請求系統來支持和維護。我可以 - 或多或少 - 遵循這一切的邏輯,但我無法弄清楚爲什麼做出某些設計決定,我想知道你是否可以提供幫助。例如,我已經發現了「Unobtrusive Javascript」,所以它可能是我以前沒有讀過的策略。爲什麼要將業務邏輯分爲三層?
例如。根據大約8種不同的因素,每個請求都需要發送電子郵件給四種類型的經理之一來授權請求以及發送給人們的其他電子郵件,僅供參考。
- 客戶端JavaScript跟蹤哪些經理類型需要電子郵件的請求時,這樣等級的人可以選擇接收電子郵件。
- 頁面背後的代碼播放不起作用,但僅保存是否需要將電子郵件發送到四種管理器類型中的每一種以及所選的ID。不是要發送哪種類型的電子郵件。
- 最後,所有的郵件發送都是在Oracle Sproc中完成的,它再次按照哪個順序重新計算要發送的所有電子郵件,並將哪些電子郵件僅作爲信息提供給誰,以及哪些電子郵件僅作爲信息請求授權。
這似乎有點過於複雜。是否有任何理由(除了將數據庫請求保持在最低限度)所有的電子郵件邏輯,創建和發送都應該在一個存儲過程中,而不是放在頁面的代碼隱藏之中?爲什麼在三層重複相同的邏輯三次?
思想歡迎。