第83章

小A:“爲什麼使用代理模式?”

大B:“1、授權機制不同級別的用戶對同一對象擁有不同的訪問權利,如Jive論壇系統中,就使用Proxy進行授權機制控制,訪問論壇有兩種人:註冊用戶和遊客(未註冊用戶),Jive中就通過類似ForumProxy這樣的代理來控制這兩種用戶對論壇的訪問權限。2、某個客戶端不能直接操作到某個對象,但又必須和那個對象有所互動。”

小A:“能不能舉個例子啊?”

大B:“可以,就舉例兩個具體情況:1、如果那個對象是一個是很大的圖片,需要花費很長時間才能顯示出來,那麼當這個圖片包含在文檔中時,使用編輯器或瀏覽器打開這個文檔,打開文檔必須很迅速,不能等待大圖片處理完成,這時需要做個圖片Proxy來代替真正的圖片。2、如果那個對象在Internet的某個遠端服務器上,直接操作這個對象因爲網絡速度原因可能比較慢,那我們可以先用Proxy來代替那個對象。總之原則是,對於開銷很大的對象,只有在使用它時才創建,這個原則可以爲我們節省很多寶貴的Java內存。所以,有些人認爲Java耗費資源內存,我以爲這和程序編制思路也有一定的關係。”

小A:“那它一般用在哪些地方哩?”

大B:“現實中,Proxy應用範圍很廣,現在流行的分佈計算方式RMI和Corba等都是Proxy模式的應用。”

第157章第142章第199章第175章第225章第139章第86章第51章第87章第64章第74章第14章第48章第10章第84章第199章第189章第46章第52章第104章第203章第191章第193章第193章第58章第167章第182章第208章第41章第29章第5章第41章第54章第55章第119章第51章第72章第147章第199章第220章第65章第77章第221章第48章第201章第78章第196章第192章第159章第123章第116章第3章第212章第28章第101章第114章第12章第179章第176章第40章第181章第38章第22章第81章第144章第215章第89章第32章第9章第44章第27章第221章第3章第192章第153章第97章第64章第195章第134章第114章第56章第115章第61章第141章第224章第92章第196章第146章第88章第73章第210章第42章第97章第193章第15章第116章第19章第106章第221章第49章
第157章第142章第199章第175章第225章第139章第86章第51章第87章第64章第74章第14章第48章第10章第84章第199章第189章第46章第52章第104章第203章第191章第193章第193章第58章第167章第182章第208章第41章第29章第5章第41章第54章第55章第119章第51章第72章第147章第199章第220章第65章第77章第221章第48章第201章第78章第196章第192章第159章第123章第116章第3章第212章第28章第101章第114章第12章第179章第176章第40章第181章第38章第22章第81章第144章第215章第89章第32章第9章第44章第27章第221章第3章第192章第153章第97章第64章第195章第134章第114章第56章第115章第61章第141章第224章第92章第196章第146章第88章第73章第210章第42章第97章第193章第15章第116章第19章第106章第221章第49章