C/S B/S之争
C/S B/S之爭
? ? ? ? ?C/S即Client/Server(客戶機/服務器)結構,通過將任務合理分配到Client端和Server端,來降低系統的通信開銷,但是需要安裝客戶端才能進行相關操作,就像Word、WPS、PS以及報稅軟件需要功能的軟件,都是C/S結構。目前的移動APP,絕大多數據也是C/S結構,它需要下載客戶端才能使用其服務。
? ? ? ? ? C/S架構特點:一是界面和操作可以很豐富,但界面太死板,二是安全性能高;三是響應快,特別是富客戶端,結合本地數據與運程數據,數據處理特快,響應好。但是,由于運行需要需要安裝程序,用戶受到限制,因此不適合面向一些不可知的用戶。同時維護上工作量較大。
? ? ? ? ? B/S即Browser/Server(瀏覽器/服務器)結構,是隨著Internet技術的興起,對C/S結構的一種變化或改進的結構。但其實B/S也可以理解為客戶機/服務器模式,只不過B/S的客戶端是瀏覽器。因數它沒有客戶端程序,客戶端就是通過瀏覽器,有個網址,就可以上網使用。
? ? ? ? ?B/S架構特點:一是客戶端無需安裝,有Web瀏覽器即可。直接面向網友;二是無需升級多個客戶端,升級服務器即可。三是界面與流行接近受到歡迎。但是,B/S不能跨瀏覽器上,界面的控件,對數據的容納不及C/S,很難達到C/S的程序。特別是響應速度上,受上限制(需要刷新頁面)。B/S最大的弱點,是對瀏覽器的選擇,有時谷歌、IE都有問題,讓客戶報冤。
? ? ? ? ? C/S與B/S結構綜合分析:
? ? ? ? ? 1,系統數據處理:
? ? ? ? ? B/S優勢就是靈活性。只要瀏覽器可以上網,不管何時何地,也不管是什么系統,都可以使用B/S系統的終端。但是這樣的話,絕大部分工作就只能由服務器來承擔了,這樣就會使得服務器的負擔很重。而且因為是瀏覽器,所以文件就要以HTML為主,不便于編輯與修改。
? ? ? ? ? ?C/S結構,客戶端與服務器端都能夠處理任務,雖然對客戶端的要求比較高,但是卻可以減輕服務器的壓力。依據客戶的需要,可以編寫出胖客戶端或廋客戶端,本人就很喜歡胖客戶端,服務器器只負責存貯數據,數據的處理基本上放在客戶端處理、顯示打印,效果非常好。
? ? ? ? ? 2、客戶端窗口顯示
? ? ? ? ? B/S通過瀏覽器可以操作,但是它對瀏覽器的版本和內核,又有很苛刻,瀏覽器不對照樣掛機。瀏覽器對數據界面的顯示,居中對齊,上下拉動,瀏覽器的控件位置,比較古板。但是,瀏覽器的優勢,就是對于對屏幕的分辨率,要求不高可以自動對齊,上下拉動。
? ? ? ? ?C/S通過客戶端操作,在運行客戶端時,對屏幕的分辨率有一定的要求,否則顯示不全,就不能操作了。這一點,目前已有改進辦法。
? ? ? ? ? 客觀地說,在編輯數據處理上,C/S具有優勢,它可以嚴密地通過大批優秀VCL,做出復雜的界面,一個界面,包容大量的數據,特別是打印上,功能非常強,可以做出非常優秀的功能模塊。手機APP,絕大多數是C/S結構,移動客戶端的出現,為以C/S結構,提供活力。
? ? ? ? ? 在窗口顯示上B/S,有著明顯的優勢,它可以做出非常出眾的流行界面,如數據統計界面。但是,在應用在windows的C/S還處于傳統的界面上。AlphaControls控件的出現,為C/S界面,帶來革新的希望。
? ? ? ? ? 因此,相當多的客戶方,對B/S感興趣,而數據的操作者對C/S好感。
?? ? ? ? ? 3、系統開發:
? ? ? ? ? C/S結構是建立在客戶端基礎之上的,開發難度大些,它要求程序下載更新、不同模塊,特別是不同分辨率屏幕的處理上,要求較高。
? ? ? ? ? ?而對于B/S來說,則就不需要那么麻煩。目前開發的軟件,大多數針對支持B/S。擴大功能,只能通過插件實行。
? ? ? ? ? 就系統的開發而言,B/S僅是一個瀏覽器的服務程序。而C/S的客戶端,是一組EXE文件組成的模塊化體系:首先執行牽引(下載模塊)DownloadEXE,確認下載更新完成,進入主程序MainEXE,主程序中再調用子模塊MidEXE,眾多個MidEXE(Dll),加上本地的Data,可以組成一個完整豐富的系統,這是B/S做不到的。 ?
? ? ? ? ? ?比較B/S和C/S,我認為C/S技術,性能更成熟、可靠。目前的移動APP也都是C/S結構。
? ? ? ? ? 4,系統的升級維護:
? ? ? ? ? B/S基本上不需要升級維護,只有瀏覽器版本的升級。?
? ? ? ? ? C/S系統的升級維護,比較復雜,模塊中只要有一部分發生改變,那么其他與其相關聯的模塊也會發生變動。
? ? ? ? ? 但是,依據C/S的技術,完成可以實行動態更新,即在軟件啟動時,做到自動更新。本人編寫的軟件,就是客戶端登錄時,自動搜索更新,也是很方便的。
? ? ? ? ? ?5、數據安全
? ? ? ? ? B/S數據放在服務器上,主要在外網上操作,非常容易受到黑客的攻擊。?
? ? ? ? ? C/S數據不僅數據在服務器上,同時客戶端也處理數據,二者都易受到攻擊。但是,很多C/S系統是通過局域網操作,即使外網也是通過VPN組成局域網,安全性好多了。
? ? ? ? ??個人觀點:
? ? ? ? ? ? 一、注重功能的軟件大多數是C/S結構,如報稅、開票、財務軟件。
? ? ? ? ? ? 二、B/S是流行的趨勢,上手快。
? ? ? ? ? ? 三、二者有著相互整合的趨勢,各自的特點,都被開發者借鑒(作為一種手段方式的相互運用)。未來方向,就是整合二者優勢的編程方向。
? ? ? ? ? ?
? ? ? ? ? ? ?最后,借鑒第三方控件,對C/S的展望:? ? ? ? ? ??? ?
? ? ? ? ? ? ?1、AlphaControls控件,可以做非常亮麗的窗口界面,推動C/S編程發展。同時,該控件
TsFrameBar 控件 可以實現客戶端小窗口內嵌高分辨率窗口,為C/S添加競爭力。
? ? ? ? ? ? ?2、uniGUI, 是通過VCL編輯,實現B/S的手段,它融合了C/S和B/S的編輯手段。
? ? ? ? ? ? ?比較好的辦法,C/S和B/S都使用,通過模塊化,實施功能模塊的調用,瀏覽層面使用B/S,操作層面使用C/S。如果開發軟件能結合二者的優勢,就是開心一刻啦!?
? ? ? ? ? ? ?上述僅個人C/S和B/S的一些見解,望批評指正。
?
總結
- 上一篇: ASF 董事会是如何炼成的?
- 下一篇: TP- LINK企业级vp-n路由器ip