好萊塢原則概述

2021-06-09 13:48:16 字數 1307 閱讀 7630

不要給我們打**,我們會給你打**(don『t call us, we『ll call you)」這是著名的好萊塢原則。在好萊塢,把簡歷遞交給演藝公司後就只有回家等待。由演藝公司對整個娛樂項的完全控制,演員只能被動式的接受公司的差使,在需要的環節中,完成自己的演出。

模板方法模式充分的體現了「好萊塢」原則。ioc是inversion of control的簡稱,ioc的原理就是基於好萊塢原則,所有的元件都是被動的(passive),所有的元件初始化和呼叫都由容器負責。

所有的framework都是遵循好萊塢原則設計的,否則就不叫framework。

framework使用ioc的目的:

對基於介面程式設計的支援減少單件和抽象工廠的依賴降低業務和框架的耦合業務元件可復用,可插拔。強調高層對低層的主動作用,即低層應該只管好自己的工作(具體實現),而高層自有它自己的工作(這就是管理低層的邏輯們,或者說從client到具體實現的一系列中間邏輯),在不需要到某個低層的時候,高層並不會呼叫到這個具體低層,低層永遠不需要向高層作出表示,,說它需要被呼叫,,(即在所有的處於使用者與現有**的中間的,用於隔離和解偶二者的,那些中間邏輯中,低層邏輯永遠不要涉入高層的實現,而只要高層通過某個邏輯去涉入低層的實現,也即低層應不要呼叫高層,只有高層才會去呼叫低層,這才是合理的,我們應盡量避免向上呼叫和相互呼叫)

好萊塢,乙個讓許多俊男靚女欲罷不能的地方。在通往成功的路上,有誰不願意通過捷徑而一炮而紅,在這之中影視聲色是許多人會嘗試的方式之一。

夢想進入好萊塢的人們,你們不要找好萊塢。那怎麼辦呢?答案是,讓好萊塢來找你!

這就是非常著名的好萊塢原則。

在網路程式設計中,特別是server端程式設計時,我們可能會大量利用好萊塢原則。在server端程式設計時,我們大多會利用os提供的一些功能強大的時間分派機制,比如select/poll/epoll/waitformultipleobjects等,通過對這些機制的再次包裝和抽象,牛人們提出了著名的reactor模式。在此模式中,我們使用者不用關心以下事情:

1)socket什麼時候建立連線

2)socket什麼時候有資料帶來

3)socket什麼時候把資料傳送

4)socket什麼時候斷開連線

我們關心的是這些事件帶來的時候,我們怎麼處理?比如socket建立連線了,你是否要做一些log,以便以後檢視。收到資料之後,你是否要做完整性驗證等。我們不用關心事件怎麼來(how),什麼時候來(when),我們關心的唯一一件事是處理它(do it)。在這裡如果把reactor等抽象系統比喻成好萊塢的話,網路上的資料比喻成影片或劇本的話,我們可以把我們對資料的處理比喻成演員。這裡,演員不用去找劇本,好萊塢會帶著劇本來找你,你只要乖乖著等在家裡不要亂動,等劇本來了,你給我好好處理即可。

好萊塢原則

不要給我們打 我們會給你打 don t call us,we ll call you 這是著名的好萊塢原則。在好萊塢,把簡歷遞交給演藝公司後就只有回家等待。由演藝公司對整個娛樂項的完全控制,演員只能被動式的接受公司的差使,在需要的環節中,完成自己的演出。模板方法模式充分的體現了 好萊塢 原則。ioc...

好萊塢原則和IOC控制反轉

不要給 我們打 我們會給你打 don t call us,we ll call you 這是著名的 好萊塢原則。在好萊塢,把簡歷遞交給演藝公司後就只有回家等待。由演藝公司對整個娛樂項的完全控制,演員只能被動式的接受公司的差使,在需要的環節中,完成自己的演出。模板方法模式充分的體現了 好萊塢 原則。i...

Linux與好萊塢電影

linux與好萊塢電影 2009年底上映的 阿凡達 是電影特效的巔峰之作,除此之外還有 2012 每次 之後總能讓我們熱血沸騰。很早以前電影特效都是利用irix技術,之後主流在sgi工作站上進行特效處理。但他們都要花費高昂的費用,加大了成本,所以在1997年首次引用了linux作為特效處理的工作站,...