業務邏輯與界面徹底分離的一個參考原型
如何才能稱之為業務邏輯與界面達到了徹底的分離?回答這個問題困難。但是如果能夠找到一個參考原型,那就會很好理解。
我找的一個參考原型是:SQL Server + SQL Admin
1、SQL Server是服務器,它只有業務邏輯,沒有界面;
2、SQL Admin是SQL Server的界面,沒有業務邏輯;
3、SQL Server與SQL Admin通過TCP交互,它們是徹底分離的,影射成就是:這是一種業務邏輯與界面徹底分離的完美形式;
他們是如何徹底分離?其實很簡單:
SQL Server提供了SQL Admin的一個TCP命令調用接口,也就是Command模式來完成,影射成就是:程序的業務邏輯應該提供給界面一個Command接口,界面只能夠通過Command接口來執行命令,而不能直接操作業務邏輯里面的數據。
當然,如果考慮到界面需要不掛起,若Command執行是阻塞模式就有些問題,需要變換成回調返回的異步模式,這會復雜少許。
posted on 2008-10-12 17:53 肥仔 閱讀(1956) 評論(1) 編輯 收藏 引用 所屬分類: 編程思想