阿里奇點編譯器下載
A. 剛剛,阿里開源 iOS 協程開發框架 coobjc!
阿里妹導讀:剛剛,阿里巴巴正式對外開源了基於 Apache 2.0 協議的協程開發框架 coobjc,開發者們可以在 Github 上自主下載。
coobjc是為iOS平台打造的開源協程開發框架,支持Objective-C和Swift,同時提供了cokit庫為Foundation和UIKit中的部分API提供了 協程 化支持,本文將為大家詳細介紹coobjc的設計理念及核心優勢。
從2008年第一個iOS版本發布至今的11年時間里,iOS的非同步編程方式發展緩慢。
基於 Block 的非同步編程回調是目前 iOS 使用最廣泛的非同步編程方式,iOS 系統提供的 GCD 庫讓非同步開發變得很簡單方便,但是基於這種編程方式的缺點也有很多,主要有以下幾點:
針對多線程以及尤其引發的各種崩潰和性能問題,我們制定了很多編程規范、進行了各種新人培訓,嘗試降低問題發生的概率,但是問題依然很嚴峻,多線程引發的問題佔比並沒有明顯的下降,非同步編程本來就是很復雜的事情,單靠規范和培訓是難以從根本上解決問題的,需要有更加好的編程方式來解決。
上述問題在很多系統和語言開發中都可能會碰到,解決問題的標准方式就是使用協程,C#、Kotlin、Python、Javascript 等熱門語言均支持協程極其相關語法,使用這些語言的開發者可以很方便的使用協程及相關功能進行非同步編程。
2017 年的 C++ 標准開始支持協程,Swift5 中也包含了協程相關的標准,從現在的發展趨勢看基於協程的全新的非同步編程方式,是我們解決現有非同步編程問題的有效的方式,但是蘋果基本已經不會升級 Objective-C 了,因此使用Objective-C的開發者是無法使用官方的協程能力的,而最新 Swift 的發布和推廣也還需要時日,為了讓廣大iOS開發者能快速享受到協程帶來的編程方式上的改變,手機淘寶架構團隊基於長期對系統底層庫和匯編的研究,通過匯編和C語言實現了支持 Objective-C 和 Swift 協程的完美解決方案 —— coobjc。
核心能力
內置系統擴展庫
coobjc設計
最底層是協程內核,包含了棧切換的管理、協程調度器的實現、協程間通信channel的實現等。
中間層是基於協程的操作符的包裝,目前支持async/await、Generator、Actor等編程模型。
最上層是對系統庫的協程化擴展,目前基本上覆蓋了Foundation和UIKit的所有IO和耗時方法。
核心實現原理
協程的核心思想是控制調用棧的主動讓出和恢復。一般的協程實現都會提供兩個重要的操作:
我們基於線程的代碼執行時候,是沒法做出暫停操作的,我們現在要做的事情就是要代碼執行能夠暫停,還能夠再恢復。 基本上代碼執行都是一種基於調用棧的模型,所以如果我們能把當前調用棧上的狀態都保存下來,然後再能從緩存中恢復,那我們就能夠實現yield和 resume。
實現這樣操作有幾種方法呢?
上述第三種和第四種只是能過做到跳轉,但是沒法保存調用棧上的狀態,看起來基本上不能算是實現了協程,只能算做做demo,第五種除非官方支持,否則自行改寫編譯器通用性很差。而第一種方案的 ucontext 在iOS上是廢棄了的,不能使用。那麼我們使用的是第二種方案,自己用匯編模擬一下 ucontext。
模擬ucontext的核心是通過getContext和setContext實現保存和恢復調用棧。需要熟悉不同CPU架構下的調用約定(Calling Convention). 匯編實現就是要針對不同cpu實現一套,我們目前實現了 armv7、arm64、i386、x86_64,支持iPhone真機和模擬器。
說了這么多,還是看看代碼吧,我們從一個簡單的網路請求載入圖片功能來看看coobjc到底是如何使用的。
下面是最普通的網路請求的寫法:
下面是使用coobjc庫協程化改造後的代碼:
原本需要20行的代碼,通過coobjc協程化改造後,減少了一半,整個代碼邏輯和可讀性都更加好,這就是coobjc強大的能力,能把原本很復雜的非同步代碼,通過協程化改造,轉變成邏輯簡潔的順序調用。
coobjc還有很多其他強大的能力,本文對於coobjc的實際使用就不過多介紹了,感興趣的朋友可以去官方github倉庫自行下載查看。
我們在iPhone7 iOS11.4.1的設備上使用協程和傳統多線程方式分別模擬高並發讀取數據的場景,下面是兩種方式得到的壓測數據。
從上面的表格我們可以看到使用在並發量很小的場景,由於多線程可以完全使用設備的計算核心,因此coobjc總耗時要比傳統多線程略高,但是由於整體耗時都很小,因此差異並不明顯,但是隨著並發量的增大,coobjc的優勢開始逐漸體現出來,當並發量超過1000以後,傳統多線程開始出現線程分配異常,而導致很多並發任務並沒有執行,因此在上表中顯示的是大於20秒,實際是任務已經無法正常執行了,但是coobjc仍然可以正常運行。
我們在手機淘寶這種超級App中嘗試了協程化改造,針對部分性能差的頁面,我們發現在滑動過程中存在很多主線程IO調用、數據解析,導致幀率下降嚴重,通過引入coobjc,在不改變原有業務代碼的基礎上,通過全局hook部分IO、數據解析方法,即可讓原來在主線程中同步執行的IO方法非同步執行,並且不影響原有的業務邏輯,通過測試驗證,這樣的改造在低端機(iPhone6及以下的機器)上的幀率有20%左右的提升。
簡明
易用
清晰
性能
程序是寫來給人讀的,只會偶爾讓機器執行一下。——Abelson and Sussman
基於協程實現的編程範式能夠幫助開發者編寫出更加優美、健壯、可讀性更強的代碼。
協程可以幫助我們在編寫並發代碼的過程中減少線程和鎖的使用,提升應用的性能和穩定性。
本文作者:淘寶技術
B. 阿里P8程序員是什麼等級P8工資有多高
前言:
近日有一個熱議話題,在頭條和微博傳的很廣,「程序員去阿裡面試遭遇:30歲還靠簡歷找工作?」引起了廣泛的討論。有很多讀者不是很明白阿里P8是什麼級別,在此我單獨寫一篇文章向大家說明一下;
1.了解計算機專業的基礎知識,懂計算機的基本操作,掌握一門基礎的程序語言即可。
2.BAT一般空缺,為非常低端崗位預留。
3.年薪8w以下,國內約有102w人。
1.熟練掌握一種語言,掌握一種開發環境。
2.了解編譯器的原理和實現機制,了解操作系統中的內部機制。
3.能獨立完成復雜任務,能夠發現並解決問題。
4.在項目當中可以作為獨立的項目組成員。
5.年薪9-12w,國內約有116w人。
1.深入了解一門操作系統,掌握某項領域知識的各種思想原理。
2.各種經驗、技能、技巧掌握下來,學習一些知名的開源項目。
3.對於復雜問題的解決有自己的見解,對於問題的識別、優先順序分配有見解,善於尋求資源解決問題。
4.可獨立領導跨部門的項目;在專業方面能夠培訓和教導新進員工。
5.年薪13-15w,國內約有55w人。
1.做基礎研究,研究非數值"計算"。
2.在專業領域,對自己所從事的職業具備一定的前瞻性的了解。
3.對於復雜問題的解決有自己的見解,對於問題的識別、優先順序分配見解尤其有影響力,善於尋求資源解決問題。
4.可獨立領導跨部門的項目;能夠培訓和教導新進員工。
5.是專業領域的資深人士;行業外或公司內培養周期較長。
6.年薪16-20w,國內約有76w人。
1.在某一專業領域中,對於業界的相關資源及水平比較了解。
2.參與部門相關策略的制定;對部門管理層的在某個領域的判斷力產生影響。
3.對事物和復雜問題的分析更有影響力。
4.進行創新。對任何一種簡單的東西,需要考慮各種各樣的需求,以需求來驅動研究;對各種最基礎性的查找結構和演算法都瞭然於胸。
5.年薪21-25w,國內約有45w人。
1.是某一領域中的資深專家;對某一專業領域的規劃和未來走向產生影響。
2.有較大的貢獻。(首先解決問題必須是比較重要的,其次你要比前輩們在某方面有一個較大的提高,或者你解決的是一個全新的以前沒有解決過的問題;最重要的是,主要的思路和方法必須是你自己提供的,不再是在別人的思路基礎上進行的優化和改進)
3.年薪26-30w,國內約有52w人。
1.在公司內部被認為是某一方面的專家或者在國內的業界范圍具備知名度和影響力。
2.對公司某一方面的戰略規劃和未來走向產生影響。
3.在本領域的思想和研究在公司具備較大的影響力。
4.年薪31-40w,國內約有35w人。
而徵友的這一位還有170w的年薪和股票期權。但是大家還是看不對眼。可能要求生活的態度不一樣吧!
P6開始,管理崗M序列出現。P6=M1。P6=資深,研究生1到2年工作經驗,或者優秀應屆研究生,應屆博士起點,或者本科3年工作經驗,幹活主力。M1=主管,一般是帶應屆生或者不超過P6的小團隊leader。P8=M3。P8=高級專家,研究生5年以上經驗,本科7年以上經驗,一線最高級別。M3=高級經理/部分部門給總監。
P8月薪在34K到60K之間,P8工資水平主要靠的是股票收入。值得一提的是,P序列中最高級別的是P11,相當於高級研究員/首席科學家。
只能說很厲害了的,這是實打實的富一代啊。如果有錢的人不說,這個真的不要說別人要求多,別人是有這個實力去要求,其實他把自己的條件擺出來了,你看的上眼的還不是就可以聊聊,看不上眼也沒必要說別人的不是吧!
C. 138.2億年前,宇宙大爆炸炸出所有物質,那原材料來自哪兒
地球上的生命是如此的絢麗多彩,繁榮昌盛。不僅有朝生暮死的浮游,也有萬載長青的常青樹,更有世界上最復雜的生命人類。地球上的生命為何會如此豐富多彩呢? 這來源於138.2億年前的一場宇宙大爆炸。 深邃的黑暗中,點點星光,錯落有致地散落在黑幕中,直到某一天,一道耀眼的白光閃過,砰的一聲,所有的天體被捲入風暴中炸成碎片。
時間是最好的造物者,在它的作用下,新的宇宙漸漸形成 ,地球的生命起源因此形成。 不過問題來了,因為宇宙大爆炸炸出了生命所需的所有物質, 那他們的這些物質的原料從哪兒來?
人類對宇宙的認識分幾步走?
上古時代,先民對世界的認知十分匱乏,不知道雨從何而來,也不知道雷是什麼,更不知道宇宙到底是什麼? 於是他們就將之訴諸神話。 華夏大地上就誕生了盤古開天闢地,女媧捏土造人,應龍治水等等傳說,而且他們還將天地山川一一封神進行祭拜。這是蒙昧時期人們對天地的認識。
到春秋時期,百家爭鳴,各種學說交相輝映,其中就出現了「宇宙」,《文子·自然》:「四方上下曰宇,往古今來曰宙」,認為宇宙是空間和時間的結合。而同時期的古希臘也正是風起雲涌、人才輩出的時代,在著名哲學家畢達哥斯拉的時代,對宇宙一詞的希臘文是τὸ πᾶν、té p ón,意為全部, 包含所有物質和所有空間。
我國古人在春秋時期的思想風暴中, 進一步將宇宙定義為「天圓地方」, 引申出早期的宇宙理論,地平說。即地球是平的,我們好像生活在一個透明的玻璃罩子里,而整個宇宙都是由陰陽二氣演化。而古希臘的哲學家們在亞里斯多德的帶領下,認為宇宙是由地、火、水、風四種基本元素構成,而天體則由第五種元素以太構成。古代印度哲學家則認為宇宙是由一種不可分割的原子構成。
在古巴比倫天文學家開始觀測天文現象後,就製作出了早期的宇宙模型, 地心說模型。 而畢達哥拉斯學派的學者假設,宇宙中心是一團火,而地球、月亮、太陽等天體都圍繞著它做勻速圓周運動。古希臘的天文學家阿里斯塔庫斯是第一個提出 日心說模型 的學者,很令人難以相信吧,日心說居然在古希臘就有人提出了。即使在如今看來,這也是令人難以置信的,何況當時正處於古希臘時代,於是這個超前的理論就被埋沒在 歷史 中,後人只能從古代文獻中的一窺當時的盛景。
公元140年前,天文學家托勒密全面繼承了亞里士多德的地心說,並將其理論收集編纂成一本名叫 《天文學大成》 的著作。
隨著 科技 的發展,天文觀測用具的更新,人們逐漸發現了違背地心說原理的問題。16世紀,天文學家哥白尼在經過多年的天文觀測和研究後,創立了比地心說更為先進的宇宙結構體系, 日心說。
1543年,哥白尼的日心說在他的著作 《天梯運行論》 中正式登上舞台。日心說, 顧名思義就是以太陽為中心,而地球只是圍繞太陽運轉的一顆行星。哥白尼的學說在幾十年後被義大利哲學家喬爾丹諾·布魯諾所繼承和發展。布魯諾認為宇宙並非是靜止的,而是物質的、無限的。宇宙沒有邊界也不存在中心,地球只是圍繞著太陽轉動的行星,而太陽也只是太陽系的中心。宇宙中存在著無數個太陽和地球一樣的行星。
俗話說領先半步是天才,領先一步是瘋子。布魯諾超前的理論就導致他被世俗所棄,由於他背棄教會,並不斷在歐洲各國宣揚日心說,嚴重損傷了基督教的根基。在他的著作發表後不久,就被宗教裁判所所逮捕。 1600年布魯諾作為異端,在羅馬的百花廣場被處以火刑 ,成為基督教殺雞儆猴的工具。雖然布魯諾的肉體已經毀滅但是他的理論並沒有消失,反而隨著他的死亡聲名遠揚,甚至還成為19世紀思想啟蒙運動的象徵。
19世紀歐洲思想啟蒙運動過後, 得益於第1次工業革命,科學技術更新快速, 天文學家們有了更好的技術去觀測天文數據。我們不僅能觀測到太陽系中的其它星體,而且還觀察到了一個更大龐大的星系銀河系,以及河外星系。科學技術推動著天文觀察的進步,天文觀察的進步又推動了人類對於宇宙的認知。這時候的科學家普遍都認為宇宙是沒有邊界的,宇宙是無限的,而不是靜止的。
時間進入21世紀,愛因斯坦、普朗克等一大批物理學家的涌現,直接推動了天文學的發展。1922年,德裔天文學家弗里德曼根據愛因斯坦的廣義相對論建立了 弗里德曼宇宙模型,又稱標准宇宙模型。 這個模型認為宇宙一直在膨脹,並且最終可能會導致兩種結果。一種是宇宙會無限地膨脹下去,另一種是宇宙膨脹到一定程度後,就會開始收縮,最後所有的星系都又都聚集在一起。弗里德曼的學說為宇宙大爆炸學說打下了理論基礎。
1929年,美國天文學家埃德溫·哈勃經過多年的觀測總結出了哈勃定律。 即越遙遠的天體,遠離我們的速度越快。 哈勃定律引申出了宇宙膨脹學說,並為它的准確性加了層保險。1949年美國物理學家伽莫夫正式提出宇宙大爆炸理論。
宇宙大爆炸
提起宇宙大爆炸就不得不說一個詞,奇點。那奇點是什麼呢?哈勃定律說明宇宙一直在膨脹,那麼反推回去,在很久以前的某一個時刻,宇宙中的星系一定是聚合在一起的。 這些星系縮小到一個點,這個點是質量無限大、密度無限大,熱量無限高,體積無限小的點,這就是奇點。 大約138.2億年前,宇宙中所有的物質都集中在奇點,因為這里有著極高的溫度,所以引發了巨大的爆炸。
最初的一秒鍾之後,宇宙的溫度降到100億 K。這時候的宇基本由 質子、中子和電子 形成。又過了兩秒鍾,溫度降到10的9次方K時,氫和氦原子核就形成了。之後隨著溫度的降低,這些粒子彼此之間開始發生核反應,形成原子,這就是原初的宇宙。這些微小的粒子就是建設大樓的鋼筋水泥,沒有它們就不能生成各種元素。氫與氦在核反應中生成了生命的必需元素碳、氧等元素。 三分鍾後宇宙的基本元素都形成了。
大爆炸過了 30萬年後,中性原子,不帶電的中性原子出現。宇宙放晴,各種宇宙輻射出現。之後,恆星、星系開始出現。爆炸51年後,銀河系開始演化, 100億年後太陽系形成。 太陽系形成的同時,地球也在太陽系中孕育。直到35億年前,地球上出現了第一個生命。地球在經歷了5次生物大滅絕後,哺乳動物登上了舞台。大概600萬年前,第1個人類,能人出現,經過六百萬年的進化形成現代人類。
那麼問題來了, 爆炸是從奇點開始的,那麼奇點又是從何而來的? 奇點所爆發產生物質又是從何而來?宇宙是由質子、中子、電子與光等粒子相互碰撞形成原子,然後形成原子核。那麼質子,電子、中子等粒子在宇宙開始之前就存在嗎?
原材料的來源
這就像我們做菜,如果是先沒有買好青菜等原料,我們就不能做出美味的菜餚,也就是我們說的巧婦難為無米之炊。宇宙大爆炸也是如此。我們都知道在奇點發生了大爆炸,物質形成之後開始往外膨脹,然後形成了現在的宇宙, 那麼在奇點之前的宇宙是怎麼樣的?
根據宇宙大爆炸學說,宇宙一直處於膨脹之中, 而萬有引力是牽制宇宙的膨脹的主力軍 ,但是它牽制宇宙的膨脹的力度取決於宇宙物質的物量。當宇宙膨脹到一定大的數量之時,萬有引力就會慢慢減小會限制宇宙膨脹的速度使它變慢,最後速度變成0。之後 宇宙就會從膨脹轉為收縮。 宇宙的體積開始縮小,這個縮小速度由慢到快。它就像一把冰冷的鐵錘將空間和時間都碾碎,最後就又回到奇點。奇點在經過數10億或幾百億年的時間,再重新又孕育出一個宇宙,如此循環往復。
另一種理論是膜宇宙模型。在這個模型中, 認為世界上存在另一個三維世界 ,即存在於我們平行的膜。這塊膜在類似於引力的遷移下與我們的膜相撞,經碰撞產生出我們的宇宙。之後兩塊膜逐漸分離,它們各自開始了減速膨脹,在這個時期物質逐漸構成,比如說恆星、星系銀河系等天體出現。在分離過程中,他們的引力開始減少,中間的物質變得稀薄。之後兩塊膜停止分離進程,轉而再一次靠近,為下一次的碰撞做准備。
除了膜宇宙理論之外, 還有一個完全宇宙學理論假說。按照完全宇宙學原理,物質的分布不僅在空間上是常數,而且不隨時間變化。 所以他們認為宇宙在大尺度下任何時候都一樣的。宇宙膨脹產生的新空隙,會由宇宙源源不斷的產生新的星系來填補。宇宙是從過去延續到至今的,並永遠這樣會存在下去。此外,還有一種理論是,宇宙是周期性不斷輪回的,所以宇宙爆炸的原材料可能是上一個宇宙的殘骸。
結語
宇宙的產生是一個很復雜的事情。而我們的科學技術並不能支持我們,對宇宙進行全方面的 探索 。宇宙已經誕生大約150億年,而人類從能人進化成智人花了幾百年,從智人進化到現代人花了1萬多年。目前人類有記載的 歷史 也不過4000多年。 和古老的宇宙相比,我們人類實在是太過渺小。
要擺脫目前的現狀, 從實處去看宇宙就要依賴於我們的航天技術。 目前美國的旅行者2號已經抵達了太陽系的邊緣准備進入星際空間。也許它會為我們提供太陽系之外的信息,為我們的宇宙 探索 做出更大的貢獻。除了宇宙飛行器以外,大型射電望遠鏡設備,比如我國的天眼也會幫助我們認識、了解宇宙。
D. 阿里筆試作弊了
放心吧沒問題的,這個當時不抓過後就沒有問題了。
先進去,然後驗證身份,同時手機和PC端需要下線所有的聊天軟體如QQ、微信等。
然後電腦攝像頭會讓你開啟,拍照驗證身份,然後手機掃描微信小程序進行手機端的檢測。
接下來就是要求牛客網全程錄制屏幕,中途不能打開其他的瀏覽器,會認為是作弊行為,作弊會一年之內不能投遞此家。
然後看了保密協議之後,會要求簽字(電腦打字簽字)。
沒有到達考試時間的時候,會等待,進入倒計時。
可以使用本地編譯器,然後寫好之後CV過去,但是會讓你去掉package以及修改主類名字為Main。
E. 為什麼阿里工程師代碼寫的好看看他的代碼規范就知道了
曾經與一位從阿里出來的Java工程師一起工作過一段時間,他的技術說不上非常厲害, 但是,他的代碼寫的的非常好,凡是他做的功能很少出現Bug 。我就很好奇,於是經常向他請教一些代碼設計的原則,然後他告訴了我阿里Java手冊。並且,他將這個手冊進行了修改,也成為了我司Java程序員的開發手冊。 這篇文章就讓我們看一看這個手冊中比較重要的原則。
【強制】 代碼中的命名均不能以下劃線或美元符號開始,也不能以下劃線或美元符號結束。
反例:_name / __name / $name / name_ / name$ / name__
【強制】 類型與中括弧緊挨相連來表示數組。
正例:定義整形數組 int[] arrayDemo; 反例:在 main 參數中,使用 String args[]來定義。
【強制】 POJO 類中布爾類型變數都不要加 is 前綴,否則部分框架解析會引起序列化錯誤。
說明:表達是與否的值採用 is_xxx 的命名方式,所以,需要在 設置從 is_xxx 到 xxx 的映射關系。
反例:定義為基本數據類型 Boolean isDeleted 的屬性,它的方法也是 isDeleted(), RPC 框架在反向解 析的時候,「誤以為」對應的屬性名稱是 deleted,導致屬性獲取不到,進而拋出異常。
【推薦】 在常量與變數的命名時,表示類型的名詞放在詞尾,以提升辨識度。
【推薦】 介面類中的方法和屬性不要加任何修飾符號(public 也不要加),保持代碼的簡潔 性,並加上有效的 Javadoc 注釋。盡量不要在介面里定義變數,如果一定要定義變數,肯定 是與介面方法相關,並且是整個應用的基礎常量。
正例:介面方法簽名 void commit();
介面基礎常量 String COMPANY = "alibaba";
反例:介面方法定義 public abstract void f();
說明:JDK8 中介面允許有默認實現,那麼這個 default 方法,是對所有實現類都有價值的默認實現。
【參考】 枚舉類名帶上 Enum 後綴,枚舉成員名稱需要全大寫,單詞間用下劃線隔開。
說明:枚舉其實就是特殊的類,域成員均為常量,且構造方法被默認強制是私有。
正例:枚舉名字為 ProcessStatusEnum 的成員名稱:SUCCESS / UNKNOWN_REASON。
【參考】 各層命名規約:
1) 獲取單個對象的方法用 get 做前綴。
2) 獲取多個對象的方法用 list 做前綴,復數形式結尾如:listObjects。 3) 獲取統計值的方法用 count 做前綴。
4) 插入的方法用 save/insert 做前綴。
5) 刪除的方法用 remove/delete 做前綴。
6) 修改的方法用 update 做前綴。
1) 數據對象:xxxDO,xxx 即為數據表名。
2) 數據傳輸對象:xxxDTO,xxx 為業務領域相關的名稱。
3) 展示對象:xxxVO,xxx 一般為網頁名稱。
4) POJO 是 DO/DTO/BO/VO 的統稱,禁止命名成 xxxPOJO。
【強制】 不允許任何魔法值(即未經預先定義的常量)直接出現在代碼中。
【強制】 避免通過一個類的對象引用訪問此類的靜態變數或靜態方法,無謂增加編譯器解析 成本,直接用類名來訪問即可。
【強制】 相同參數類型,相同業務含義,才可以使用Java的可變參數,避免使用Object。
說明:可變參數必須放置在參數列表的最後。(提倡同學們盡量不用可變參數編程)
【強制】 所有整型包裝類對象之間值的比較,全部使用equals方法比較。
說明:對於 Integer var = ? 在-128 至 127 范圍內的賦值,Integer 對象是在 IntegerCache.cache 產 生,會復用已有對象,這個區間內的 Integer 值可以直接使用==進行判斷,但是這個區間之外的所有數 據,都會在堆上產生,並不會復用已有對象,這是一個大坑,推薦使用 equals 方法進行判斷。
關於基本數據類型與包裝數據類型的使用標准如下:
說明: POJO 類屬性沒有初值是提醒使用者在需要使用時,必須自己顯式地進行賦值 ,任何 NPE 問題,或 者入庫檢查,都由使用者來保證。
正例:資料庫的查詢結果可能是 null,因為自動拆箱,用基本數據類型接收有 NPE 風險。
反例: 比如顯示成交總額漲跌情況,即正負 x%,x 為基本數據類型,調用的 RPC 服務,調用不成功時, 返回的是默認值,頁面顯示為 0%,這是不合理的,應該顯示成中劃線 。所以包裝數據類型的 null 值,能 夠表示額外的信息,如:遠程調用失敗,異常退出。
【強制】 POJO 類必須寫 toString 方法。
使用 IDE 中的工具:source> generate toString 時,如果繼承了另一個 POJO 類,注意在前面加一下 super.toString。
說明: 在方法執行拋出異常時,可以直接調用 POJO 的 toString()方法列印其屬性值,便於排查問題。
【強制】 關於hashCode和equals的處理,遵循如下規則:
說明:String 已覆寫 hashCode 和 equals 方法,所以我們可以愉快地使用 String 對象作為 key 來使用。
【強制】 線程資源必須通過線程池提供,不允許在應用中自行顯式創建線程。
說明:線程池的好處是減少在創建和銷毀線程上所消耗的時間以及系統資源的開銷,解決資源不足的問 題。 如果不使用線程池,有可能造成系統創建大量同類線程而導致消耗完內存或者「過度切換」的問題。
【強制】 線程池不允許使用Executors去創建,而是通過ThreadPoolExecutor的方式,這樣的處理方式讓寫的同學更加明確線程池的運行規則,規避資源耗盡的風險。
以上規范在設計代碼中,是比較重要的原則。如果編寫代碼的過程中,可以依照以上原則,那代碼的可讀性和可維護性將大大提升
F. 2022,零售行業的八大趨勢
基於我們對大零售、大消費、大社區的關注維度,我們列出了幾個關於2022年商業趨勢的關鍵詞:
小而美、縱向一體化、品類奇點、盈利、嵌入感、主理人、生活方式提案、農產品品牌化,這也是未來一年我們持續關注這些領域的主要切入點。
城市風貌.png
一個零售和電商、近場和遠場、實物和服務、興趣和搜索等以前涇渭分明的零售形態,正在朝充分交織、高度協同的「大零售格局」演變。
零售的本質是信息、交易和物流。「大零售格局」出現的原因是,互聯網依靠流量能力來聚合信息、撮合交易、提升流通效率的潛力已經發揮到極致。接下來,通過技術整合協同不同的零售業態,以深入上下游改造供應鏈、搭建更堅實的流通體系,就成為要比拼的硬功夫。
阿里、拼多多、京東、美團在產業帶、產地倉、物流倉儲、農業和硬體技術領域的投資就源自於此。
例如新近動作頻繁的美團,正在以本地生活服務領域積累的流量能力和即時配送能力為根據地,向社區團購(美團優選)、近場電商(美團閃店倉、美團買菜)、遠場電商(團好貨)進攻,「大零售」會成為美團未來十年的第二發展曲線。
以此觀照,美團的老對手不再只是「餓了么」這樣的餐飲外賣平台,而是阿里新組建的中國數字商業板塊(包括大淘寶、B2C零售、淘菜菜、淘特等),以及同屬於俞永福分管的生活服務板塊和同城零售。拼多多在布局的網路電商及社區團購,京東在布局的社區團購和同城零售(協同達達),都會成為接下來巨頭們會交鋒的正面戰場。
與業態融合一體兩面的趨勢是,巨頭越來越明確的邊界能力和協同意識,比如交易平台和種草平台的合縱連橫。抖音立足推薦電商、補齊搜索電商、發力本地生活服務,加上其與每日優鮮的合作,以及快手與美團的戰略合作,都屬於立足流量能力、聯合已有的供應鏈補齊交付履約能力的典型體現。
需要強調的是,大社區近兩年以來強調的所謂「電商閉環」,並不是真正的閉環,而是「一套供應鏈供全網」的典型體現,例如抖音快速切入電商實物交易、賣電影票等本地生活服務,相當於給已經互聯網化的供應商們開了個插件介面。
商業模式.png
所以,阿里、京東、拼多多在供應鏈的長期投入,也會發揮越來越重要的價值。阿里2021年底的組織結構大調整中,國內商業B系和C系的打通,也是為了充分釋放其供應鏈優勢。
零售加速融合背後,是一個新的消費格局正在形成。我們關注的大消費格局,是一個包含了從人群需求、供應鏈、新品牌,到種草平台、交易渠道,以及物流倉儲、數字化技術等基礎設施的大行業。
這個行業正在呈現出從線上到線下、從流量到貨品、從品牌到產業、從中國到海外的幾個確定趨勢。
銷售鏈.png
過去幾年,電商平台推動下的新消費浪潮中,新品牌是主角,VC提供彈葯,社區販賣流量,頭部主播扮演加速器,各垂直品類格局初定。
被驗證過的品類中,一二名試圖捅破品類天花板,三四名尋找新出路。被證偽的品類中,如果一二名銷量衰退,三四名也融資不暢。
品類格局初定後,縱向一體化會成為核心趨勢。一體化由兩個要素驅動,一個是頭部品牌通過自建產能、自控渠道往上下遊走,另一個是頭部企業加速進行數字化、智能化的改造,從而實現對產業從供應鏈到品牌再到交付的全鏈條協同,最終效果是產業的縱向一體化協同程度會加深。
Rio、蜜雪冰城這類公司的核心壁壘就在於其供應鏈價值,而非單純的C端品牌價值。比如,Rio的母公司百潤開發的香精香料除了自用,還供應給百事可口、元氣森林、農夫山泉和相當一批低度酒品牌,B端收入已經佔到其總收入的10%。
這一波新消費浪潮中,跑出來的新品牌的頭部效應、平台效應、盈利效應、出海效應,也會成為未來一年更明確的發展趨勢。
泡泡瑪特、完美日記、元氣森林等頭部公司已經開始從品牌到平台的探索嘗試,頻繁的投資和收購行為,上游供應鏈、研發的持續投入,就是這種體現。
一旦頭部公司平台化,其縱向的產業整合、橫向的邊界拓展,就會帶來更大的發展空間。其產業鏈主角色,還會成為小而美品牌的最終資本歸宿。
依靠國內供應鏈、渠道尤其是流量運營的溢出效應,頭部品牌也註定有機會成為國際品牌,尤其是平台的大手筆加碼,包括阿里調大將蔣凡、位元組TIKTOK/Fanno齊上陣、騰訊投資Cider等跨境電商,品牌出海能夠享受到的渠道溢出效應,已經呼之欲出。
但這一切都需要建立在,品類已經被驗證有品牌化的可能性的前提上。
因此,「品類思維」會再度成為我們接下來觀察消費行業發展的重要思路,是單品出品牌,還是渠道即認知,哪些品類已經被證偽,哪些品類還在等待爆發奇點。
可以肯定的是,單純的流量思維不再完全奏效。我們需要再溫習一下2019年Adidas全球媒介總監 Simon Peel接受MarketingWeek采訪時說過的話:
Adidas在過去這些年過度投資了看起來ROI更高的數字效果廣告,而忽視了品牌廣告。這導致了的嚴重後果是:看起來更高效的廣告投放,帶來了品牌價值的大幅衰落。在短期利益和長期價值之間,Adidas選擇了短期利益,而這最後反噬了長期價值。
全棉時代一高管也說過類似的話:過去十年電商平台基本就是在消耗品牌效應,因為只是做交易做流量 。
拐點到來之後,內容而不是單純的流量,對於品牌的介入程度會越來越高,大社區、大平台介入消費產業的路徑也在發生變化。
一個體現是,內容和廣告正在急速合流:阿里電商新一輪調整中,逛逛和淘寶直播被放在了一級位置,以巨量引擎為核心的位元組系,不僅席捲了廣告,而且試圖通過平台角色,重新定義整個內容行業與廣告變現。小紅書、B站這類手握高價值人群的社區,也重新將商業化重點放到廣告、而非電商上來。
大社區介入消費產業程度加深的另一個直接體現是,「生活方式」會成為人群、平台、品牌參與的,帶動品牌復購和用戶關系的主軸。
小紅書過去一年多次對外強調自己是個「生活方式平台」,並且越來越積極主動地介入到生活方式的造風運動中,藉此向品牌證明其在消費領域的關鍵影響力,典型體現是露營和滑雪。抖音正在嘗試將「種草」列為主站一級入口,還推出了一個類似「小紅書+得物」的獨立電商APP,淘系電商的頻道運營策略也在從直通車鑽展思路轉向生活方式提案化。
落實到具體的品牌和商業體上,其對內容的要求也變得越來越高。這正是永璞創始人鐵皮強調的,一個消費品牌會經歷「賣貨——生活方式——文化輸出」三個階段,所以一個消費品牌要同時具備「媒體屬性、設計屬性、廣告屬性」的原因。
線下商業正在蓬勃發展的主理人生態,也是大消費未來發展趨勢的一體兩面。當大體量購物中心已經呈現飽和狀態後,更加抵進社區的小型商業體和街區,就成為新的增量運營對象,而社區商業不管是在客流量還是品類偏好上,都更適合小而美的主理人店鋪,而不是大連鎖的效率型商業品牌。這也是源野Regular、TX淮海等商業體過去一年受到關注的原因。
用The Boxx聯合創始人黃維的話來說,以前的消費就是吃、喝,但現在的消費需要沉浸式、互動式、社群式,商業空間也需要從空間運營升維到內容運營和用戶運營,概括來說就是把內容注入資產,以文化帶動消費。
基於我們對大零售、大消費、大社區的關注維度,我們列出了幾個關於2022年商業趨勢的關鍵詞,這也是未來一年我們持續關注這些領域的主要切入點。
一、品類奇點
過去兩年許多的品類紅利,是由流量紅利+疫情因素疊加產生的。
寶潔等快消大廠出身的產品經理+流量操盤手+代工廠,小紅書筆記+頭部博主種草+頭部直播間背書+信息流無限放量,一個新品牌由此誕生,核心業務模式是線上DTC。
多個新品牌解決同一消費者需求,便形成一個所謂風口的新品類。
這些被看重的消費者需求通常與疫情有關。因為疫情居家需要解決飲食問題,方便速食、冷凍食品、復合調味料、預制菜等領域不斷湧入新的創業者;因為健康意識的覺醒與重視,植物基、無糖飲料、功能性食品等開始向大眾消費加速滲透;因為長期佩戴口罩,美瞳、眼影、功能性護膚等在化妝品銷售中經歷高速增長。
品類奇點.png
同樣也受益於國內最全的產業鏈結構、充分的產業鏈能力、以及疫情中工廠穩定訂單的減少,也使得眾多包含優質頭部在內的代工廠願意向新品牌開放OEM及ODM能力,甚至出現了一批由B端轉C端的廠牌變品牌,與新品牌同在流量場中競技。
但問題在於,由流量+疫情,在兩個前提條件削弱乃至減退之後,來自VC的彈葯提供也愈發謹慎,帶來一系列連鎖效應,品類紅利能夠維持的時間長短與穩定程度,與該品類的商業模式是否契合線上DTC這一業務模式的相關性愈發凸顯。
這種相關性的起源首先在於C端市場對品類的接受程度,對於那些難以占據大眾心智的品類,其產能及目標客群或將從toC重新回歸toB;其次在於對C端消費者的渠道觸達效率,無論是B2C還是S2B2C,無論是進入傳統的線下經銷渠道還是另起爐灶自建渠道,效率的優劣決定流通的走向。
最後,不同品類間的柔性擠壓始終存在,性價比和便捷度、供應鏈的效率和差異化,即便在同一渠道中,也將發揮重要作用。
至此,在消費融資退潮之後,曾被熱捧的各個品類發展方向開始分岔,被證實的品類或能繼續推進,被證偽的品類則將面臨市場空間在催熱後的自然萎縮,並在這一動態過程中等待新的變數與時間條件出現以重迴向上序列,是為品類奇點。
二、小而美
過去一年,多數品牌遇到了增長困境。這背後,不僅僅是VC退潮、種草反噬、流量紅利消退導致的,結合圈層化、用戶共創、DTC等行業發展趨勢來看,多數品牌確定的未來很可能就是小而美。
發現小而美.png
前魅族高級副總裁李楠在多個場合提到過,他在2019年與時任阿里CEO張勇的一個共識,即現在電商平台的 GMV 大部分來自世界 500 強,但未來可能會有五千強、五萬強。最有價值的品牌會以十倍、百倍的數量增加。
唐彬森也提到過,未來的品牌格局應該是細分垂直、小眾林立。因為品牌解決的是細分需求,而不是底層需求。他用了一個很形象的比喻是,中國把京滬高速修好了,基於京滬高速修建沿街基站,才是更有價值的事情。
除了元氣森林和燃茶之外,元氣森林的品牌矩陣還包括酸奶品牌北海牧場、能量飲料品牌外星人、果汁品牌滿分、礦泉水品牌有礦等子品牌,並且通過投資手段將觀雲白酒、田園主義輕食、Never Coffee納入到了集團品牌矩陣。
交個朋友也在依靠主播資源和渠道能力打造自有品牌矩陣,聯合創始人黃賀認為,以後可能真正成功的品牌是N多個小的SHEIN,庫存少、優化點很好、快反能力也很強,更重要的是有明確的盈利模型。
一個值得注意的結論是,如果新消費品牌多數會成為小而美的細分品牌,那麼多數品牌就不會有VC期許的短時間、高倍率回報,除非是元氣森林、逸仙電商、喜茶這類已經有絕對頭部品牌、且有品牌矩陣運營能力的頭部消費品牌。
從這個意義上說,新消費品牌的投資機會,確實已經給VC關上了大門,但急需品牌煥新和市值管理的老消費巨頭已經發現了自己的機會,頭部新消費品牌投資新消費品牌的現象,也還是會延續下去。
當然,每一個有盈利能力的品牌,會有更多機會選擇,委身於巨頭,亦或小而美,都是出路。
三、縱向一體化
小而美品牌之外,頭部品牌會通過「縱向一體化」擴張實現對上下游的控制,進一步提高自身的競爭壁壘。
縱向一體化.png
縱向一體化的一個方面是向上游延伸,品牌通過自建、投資等方式實現對上游供應鏈(原料、加工)的控制,以避免受到原料、產能的限制,提高產品品控。
比如,2021年蜜雪冰城、茶顏悅色分別成立農業公司是因為,應對新茶飲賽道產品同質化競爭的方式是產品創新,但這需要有充足的原料供應能力作為支撐,以保證采購和價格的穩定。
茶顏悅色.png
另一個方面是在下游自建可控的銷售網路。自建線下渠道的目的,一方面是加速滲透到夫妻小店以及省下部分渠道費,另一方面是建立自己的產品測試渠道。
品牌在這個過程中也會通過數字化系統提高對上下游的管控效率,加深一體化協同程度。有些生產企業也在利用自身的原料、生產優勢,通過孵化、投資等方式向下游一體化擴張,獲得產品深加工的高附加值。
四、盈利、盈利、盈利
所有品牌品類接下來一年要面臨的核心問題,都逃不開「盈利」。
過去幾年,新品牌藉助資本撬動爆發式增長的模式成為常態,即通過短期流量驅動用戶觸達和GMV的快速增長,虧損40%、50%的品牌大有所在。
盈利模式.png
但從2021年下半年起,隨著新消費投資熱潮的下降,VC數量在減少,投資也會越來越謹慎,完美日記、奈雪的茶、泡泡瑪特這些新消費代表公司在IPO後估值回落的趨勢也影響著一級市場的投資熱情和估值考量。加上流量紅利逐步消失,「資本-流量」的增長模式失靈了,新品牌必須要有自我造血的能力。
經歷了一波新品牌的傷害後,VC對於新消費品牌非常苛刻,如果GMV和ROI增幅過高,他們會擔心你忽略了品牌建設,如果早期過於聚焦品牌建設,他們會質疑品牌的增速,除此之外,品牌最好還能有線下渠道能力,或分銷網路體系。
對於一個剛起步的新品牌來說,品牌、銷量、渠道簡直是不可能三角,但這或許也可以窺見資本對於新品牌盈利確定性和長期發展穩定性的渴求。
一些曾經的明星細分賽道,由於頭部公司的增速達不到資本市場的要求,非前三的公司很難拿到融資,甚至整個賽道無人問津。消費品自然不存在零和博弈,只要是滿足用戶真實需求的品牌,服務好目標用戶,就會有自己的生意,三五年後也會被資本看好,但前提就是新品牌要具備自負盈虧的能力。
總而言之,不管出於主動還是被動,資本與新品牌自身都會越來越強調盈利能力,關注復購率、ROI、轉化率、獲客成本等體現運營效率和運營質量的數據。我們在2021年年底接觸到的一些品牌都更強調復購率在GMV增長中的作用,強調現金流把控,賣一單就要賺一單。
五、嵌入感
以北京、上海、成都等為代表,中國的一線和新一線城市的城市建設已經結束整體規劃和大規模建設階段,進入到更為靈活的有機更新中。
和上一代追求一站式服務的巨型商業體相比,在有限的城市空間中,這些基於存量物業改造的新項目面積小,分布零散,廣泛地嵌套於城市的不同社區之中。
「嵌入感」是老城存量物業改造帶來的自然結果。上海的越界陝康里位於陝西北路和康定路的交匯處,其核心建築是一幢西洋風格的紅磚大樓,曾經先後作為警察局、錫克族教堂、修理工廠和建材市場;緊鄰新華里社區,上生·新所基於哥倫比亞俱樂部和孫科故居進行建築更新。
存量改造.png
這些嵌套在社區中的商業空間往往與附近的大型購物中心互為補充。比如,武夷|MIX320緊鄰中山公園商圈;成都的regular源野與伊藤洋華堂僅隔一個十字路口。
有別於傳統的社區商業,這些新空間不僅要提供一種周邊便利性,還要擁有吸引更廣泛客流的能力,這需要他們在傳統商業地產思路外找到新的解題思路。北京的南陽·共享際以戲劇為主題,通過豐富的戲劇演出填充空間內容;上生·新所通過蔦屋書店完成引流;regular源野則通過主理人業態的引入使其成為成都的熱門地標。
「嵌入感」會繼續受到來自更多維度的關注,一定程度上,它是新階段中國城市規劃整體思路的一個具象體現。正如上海2040總規劃在《營造多元融合的城市城鄉》的章節中提到——約15分鍾生活圈是實現宜居城市的重要途徑。
六、主理人化
作為一個舶來詞,「主理人」這個概念最早在潮流品牌中被使用,用於和大眾服裝品牌的管理者相區分。在過去幾年,隨著消費市場的更新,在中國,主理人概念在更多領域被引入和使用,並受到普遍的認知和關注。
主理人品牌的核心是「自己的口味」,指向的是一種更風格化,更個性化的審美和體驗。主理人往往自帶流量,在他們所在的圈子裡擁有忠實的追隨者。新一代消費者對主理人品牌的追逐展現了他們在消費需求和消費習慣上的變化。
這種變化被商業地產捕捉,成為城市更新和空間運營中的新解決方案,成都regular源野是其中的代表。
在非一線城市,主理人成為小城年輕人們新的職業選擇,也成為新生活方式的下沉通路。二級市場管控越發嚴格的趨勢下,在正在變化的分配機制中,主理人也有機會成為未來社會資本流向的方向。
與此同時,以姜思達為代表,對於內容行業而言,一批明星主理人的出現也提供了一種對於IP新的定義和解題方式。
在更廣泛的消費和零售領域,無論是出於對消費者個性消費需求的回應,還是對自身建立更高粘性用戶關系的要求,更具「主理人色彩」的品牌運營也會成為趨勢。
這里的「主理人化」可以是更明確的產品風格、品牌價值觀,也可以是以營銷為代表的消費者溝通方式的改變。它不一定真的需要一個站在前台的具體的人,指向的是一種人格屬性更強、風格也更統一的品牌打造方式。
七、生活方式提案
「生活方式」是一個更高維的詞彙,可以讓品牌超越具體的物理屬性的產品、品類,甚至品牌本身。它最早代表一種「品味」和「階層」的區隔,與消費文化結合後,指代的是一種有審美、有價值觀的營銷理念,天然能夠帶來較高的用戶黏性,良好的互動關系。
1975年,美國學者威爾提出生活方式營銷這一概念,它是企業通過對消費者心理、價值觀、消費行為、視聽接觸的了解,讓一群有著相同的支配時間和金錢模式的同質消費者產生一種感同身受、相互融合的認知並獲得消費者自發性認同,創造出真正讓消費者感動的商品的一種營銷方式。
生活方式營銷.png
最早應用這一營銷概念的代表企業是福特,它在1960年代前後推出了雷鳥、野馬和翼虎等不同生活方式的汽車,此後迅速重回美國汽車領軍企業。
在國內,隨著種草達人、內容、社區在整體消費鏈條中扮演越來越重要,「生活方式」會成為人群、平台、品牌參與的,帶動品牌復購和用戶關系的主軸。
越來越多的品牌開始宣稱自己是「生活方式品牌」,比如從內衣擴展到服飾的內外,以及從潮牌擴展到家居及童裝線的Beaster。摩登天空要從音樂公司升維到一家生活方式公司,藉此與新消費產生更緊密的連接。笑果一開始就直接把喜劇消費定義為一種生活方式。
一些品牌甚至可以借生活方式的走紅而成功破圈。比如露營作為一種生活方式興起後,帶火了Snowpeak等品牌,滑雪背後則是Burton、迪桑特等專業品牌走向大眾的機會。
這當然也與消費整體供給過剩、消費主權意識越來越明顯有關系。品牌生活方式化,還能適應廣告越來越內容化的客觀要求;圍繞一個核心人群形成橫跨不同品類的供給,就是一個劃算的擴張方式,尤其是在國內供應鏈的極度成熟的情況下。
八、農產品品牌化
農產品的品牌建設,長期受制於國內分散且缺乏規模化的生產體系,以及需求離散的消費市場。這種兩頭分散的局面決定了農產品欠缺品牌建設的基礎。
動搖這個強大結構的機會,來自於產業鏈下游零售渠道以及中間流通環節正在發生的變化。
它也是過去兩年間加速發生的自下而上的產業變革。
在零售行業的自我迭代過程中,離散的農產品消費需求被電商、新零售商們匯聚起來。基於這些需求,傳統多級、分散的流通資源,也開始被打散並重新組合。
需求的集中、流通環節的縮減,為農產品自上而下地走向品牌提供了有利前提。在這個過程,一部分農產品類別逐漸表露出了品牌化趨勢。例如山貨、牛羊肉、水產等加工食品,以及水果這類商業價值高的生鮮農產品等。它們能在流通變革的大環境下,優先邁向品牌化的原因是,其自身的生產供應鏈基礎相對集中。
以堅果為例,目前國內在廣東揭陽、浙江杭州等地已經形成有相當規模的堅果產業帶。它們不僅是原材料的匯聚地,也是銷售相關包材、物流、人力等資源的集中地。在需求被集中的大前提下,產業帶的堅果供應商也獲得了能夠快速響應市場需求的機會。它們不再只是作為產業鏈上的一個供給者的角色而存在,而是也開始具備有直面消費市場的能力。
當然,目前這種自上而下的農產品品牌化趨勢才剛剛啟動,它前面還有相當長一段路需要走,越到產業鏈的上游,各利益方之間的博弈關系越復雜,品牌建設的阻力越大。
但來自零售體系內部不斷向前推進的自我迭代,為應對上游這些復雜利益關系提供新的解決方案。它們所帶來的不斷集中和更加細分消費需求,成為未來一年上游農產品品牌建設的機遇所在。
G. 求《星際穿越》電影,雲盤資源
《星際穿越》網路網盤高清資源在線觀看(TV版畫質增強資源):
鏈接: https://pan..com/s/1Fy_ccstS4-oc--Ic_8NJvw
此資源在網路網盤TV版獨享AI增強畫質,電視應用市場下載網路網盤TV版即可
導演:克里斯托弗·諾蘭
編劇:喬納森·諾蘭/克里斯托弗·諾蘭
主演:馬修·麥康納/安妮·海瑟薇/傑西卡·查斯坦/麥肯吉·弗依/卡西·阿弗萊克/更多...
類型:劇情/科幻/冒險
製片國家/地區:美國 / 英國 / 加拿大
語言:英語
上映日期:2014-11-12(中國大陸)/2020-08-02(中國大陸重映)/2014-11-07(美國)
片長:169分鍾
又名:星際啟示錄(港) / 星際效應(台) / 星際空間 / 星際之間 / 星際遠航 / 星際 / Flora's Letter
星際穿越的劇情簡介· · · · · ·
近未來的地球黃沙遍野,小麥、秋葵等基礎農作物相繼因枯萎病滅絕,人類不再像從前那樣仰望星空,放縱想像力和靈感的迸發,而是每日在沙塵暴的肆虐下倒數著所剩不多的光景。在家務農的前NASA宇航員庫珀(馬修·麥康納 Matthew McConaughey 飾)接連在女兒墨菲(麥肯吉·弗依 Mackenzie Foy 飾)的書房發現奇怪的重力場現象,隨即得知在某個未知區域內前NASA成員仍秘密進行一個拯救人類的計劃。多年以前土星附近出現神秘蟲洞,NASA借機將數名宇航員派遣到遙遠的星系尋找適合居住的星球。在布蘭德教授(邁克爾·凱恩 Michael Caine 飾)的勸說下,庫珀忍痛告別了女兒,和其他三名專家教授女兒艾米莉亞·布蘭德(安妮·海瑟薇 Anne Hathaway 飾)、羅米利(大衛·吉雅西 David Gyasi 飾)、多伊爾(韋斯·本特利 Wes Bentley 飾)搭乘宇宙飛船前往目前已知的最有希望的三顆星球考察。
他們穿越遙遠的星系銀河,感受了一小時七年光陰的滄海桑田,窺見了未知星球和黑洞的壯偉與神秘。在浩瀚宇宙的絕望而孤獨角落,總有一份超越了時空的篤定情懷將他們緊緊相連…