带本信息论看《三体》——信息论课程论文
目錄
- 摘要
- 關鍵詞:
- 正文
- 一.小說梗概
- (一)《三體》
- (二)《黑暗森林》
- (三)《死神永生》
- 二.自信息詮釋劇情
- (一)邪乎到家必有鬼
- (二)夢中情人
- 三.藍天的熵
- (一)從不確定性的角度來理解
- (二)用通信系統模型來理解
- 四.猜疑鏈中的互信息兩面性
- 五.用平均互信息極值性詮釋為什么人類最終慘敗
- 六.總結
摘要
本文以信息論的視角為切入點去審視并解讀科幻小說《三體》中的相關段落與情節。先后列舉了:(1)根據自信息量的定義式和理解解釋小說中的一句經典臺詞和一個故事情節。(2)從不確定性的角度和通信系統模型的方法分別去理解和詮釋小說情節中對信息論知識具有直接描寫的相關情節。(3)根據博弈論的理論方法將情節中的模型簡化后加以演繹,用不同的演繹結果對小說中猜疑鏈的概念用互信息兩面性進行辯證解讀。(4)根據平均互信息極值性解釋小說中的童話故事解讀失誤導致人類滅亡。
關鍵詞:
《三體》;自信息量;通信系統模型;互信息;熵的不增原理
正文
《三體》是劉慈欣創作的系列長篇科幻小說,由《三體》、《三體Ⅱ·黑暗森林》、《三體Ⅲ·死神永生》組成,作品講述了地球人類文明和三體文明的信息交流、生死搏殺及兩個文明在宇宙中的興衰歷程。作為當今中國最火熱的科幻IP,《三體》三部曲被普遍認為是中國科幻文學的里程碑之作,它將中國科幻推上了世界級高度。
我在二刷這部作品時恰逢在學習《信息論基礎及應用》這門課程,發現小說中許多故事都蘊含了大量與信息論相關的情節,抑或可以用信息論的知識完美地解釋書中講述的設定。也許這和作者劉慈欣本人的職業有關,畢竟作為娘子關火電廠的一名計算機工程師,他不可能不會接觸到信息論的相關知識。本文將以小說中的部分情節結合所學信息論知識對故事情節和科幻設定背后的秘密進行分析。
一.小說梗概
(一)《三體》
受到文革迫害的天文學家葉文潔被帶到軍方絕密計劃“紅岸工程” ,對人類喪失信心的她向四光年外的三體星系發出呼叫信號,請求三體人救贖人類。與此同時因為受到三個太陽做不規則三體運動 而一次次經歷文明毀滅的三體人看到了希望,決定大舉進攻地球。
數十年后第一部的男主人公汪淼眼中突然出現了神秘倒計時字樣,就在這時他受到了來自軍方的邀請,原來科學界最近出現了許多怪異的事情,在各國軍隊的協助下經過不斷努力后發現了事情的真相,三體人派出“智子” 探測器封鎖地球的科技并且監視人類的行蹤,汪淼眼中的倒計時就是“智子”所為,同時地球人也衍生出一個叫ETO 的組織專門為三體人服務,專司破壞地球正常秩序。與此同時,龐大的三體艦隊正在前往地球的路上。
后來各國軍方通過“古箏計劃” 殺死了ETO的一位領導人伊文斯獲得了大量關于三體人的信息。[^1 ]
(二)《黑暗森林》
為了應對三體危機,人類在組建龐大太空艦隊的同時也利用三體人思維的透明性 開展了“面壁計劃”,旨在利用各種計謀打敗三體人,而三體人借助ETO的力量挑選出破壁人對面壁者的計劃進行破解。
亞洲太空軍軍官章北海借一場隕石雨殺死了支持飛船采用有工質推進的科學家后干涉飛船推進形式的研究方向。冬眠近二百年后,獲選“增援未來”計劃 的他在人類艦隊被三體人發射的“水滴” 清除殆盡前,成功搶奪戰艦逃離,但是在后來的黑暗戰役 中犧牲。
最后“面壁計劃”中的一位面壁者羅輯借助葉文潔生前的只言片語推斷出了本部最核心的“黑暗森林” 法則,利用這一法則使得三體人的陰謀破產,使其與人類之間達成了恐怖的平衡。[^2 ]
(三)《死神永生》
身患絕癥的云天明在死前送給大學時暗戀的同學程心一顆星星,但是程心卻將其大腦當作探測器發射向三體艦隊。數百年后冬眠蘇醒的程心被選作掌握地球命運的執劍人 ,但是就在交接“執劍人”權力的那一刻三體人發動了對地球的打擊。
與此同時在黑暗戰役中存活下來的“藍色空間”號飛船借助四維空間的力量打敗了前來追擊的“水滴”和“萬有引力”號飛船 ,并向全宇宙廣播了三體星系的坐標。
隨后三體星系便遭到了“黑暗森林”的打擊,同樣的命運也將降臨到人類頭上。此時云天明通過三個童話故事向人類透露了躲避打擊的方法,但是因人類的誤判導致人類受到神級文明的“二向箔”打擊,整個太陽系被二維化。程心和閨蜜借助人類唯一可用的光速飛船逃出生天 。[^3]
二.自信息詮釋劇情
(一)邪乎到家必有鬼
在《三體》第一部中,有一個有趣的臺詞可以用信息論中的知識來解釋,第一部的主人公汪淼突然眼前出現了神秘的倒計時,在經過了一系列的事件之后他甚至在全宇宙的尺度看到了倒計時,就在他不知所措時,它的好朋友警察史強來安慰他說:
邪乎到家必有鬼。
“邪乎到家必有鬼”這一句臺詞作為史強的經典語錄在《三體》粉絲群體中也廣為流傳,現在學習過信息論相關知識以后,重新去回顧這句臺詞會給我們全新的認識。
離散隨機變量XXX 中事件xxx,(x∈X)(x∈X)(x∈X)的自信息(或自信息量)I(x)I(x)I(x)定義為
I(x)=?log?P(x)=log1P(x)[4]I(x)=-log?P (x)=log\frac{{1}}{{P(x)}} [^4]I(x)=?log?P(x)=logP(x)1?[4]
可以這樣理解:“邪乎”意味著這一事件發生的概率非常低,因為日常生活中發生概率較高的事件一定不會被定義為是“邪乎”,“邪乎到家”一方面可以理解為這種事件發生的概率已經小到了一定程度可以視作無窮小,另一方面“到家”可以理解為這一事件發生了。“鬼”我們可以理解作非常大的信息量,達到令人難以置信的程度所以可以稱其為“鬼”,抑或將其看作一種不確定性,這樣可以更讓人容易接受,也與生活中所謂的“鬼”有幾分相似,總是行蹤不定,充滿了不確定性。
把這樣的理解帶入信息量定義式進行驗證,結果是完全吻合的,同時也可以取極限認為“邪乎”是不可能事件,即P(x)→0P\left(x\right)\rightarrow0P(x)→0,帶入自信息的定義式,那么這一事件既然發生,說明信息量無窮大,即I(x)→∞I\left(x\right)→∞I(x)→∞,同樣用信息論的知識證明了這句話的合理性。
在生活中我們同樣可以利用這樣的思路去理解許多問題,例如古時候人們在面對諸如日食、地震、月食等異常天象時創造出的各種神話傳說也可以認為是為了詮釋這種異常天象背后蘊含的信息量,畢竟很少會有民族為吃飯睡覺這種人們習以為常的事創造出一個神話來,而地震、日食、雷電這些現象總是被認為天神的震怒。
古人會怕“鬼”同樣也可以理解為是對它帶來的一種不確定性的懼怕。同樣的,我們當前身邊的許多現象用它來解釋就非常合理了,比如今年的疫情相對于往常可以看作是一種反常,抑或“邪乎到家”,疫情的爆發提供了大量的信息量,而這就為各種陰謀論提供了市場,這些陰謀論就是像古人試圖用神話詮釋天象一樣試圖去詮釋這些信息量,然而就像人們最終會知道天象背后的原理一樣,疫情的真相最終也會大白于天下。
(二)夢中情人
在《三體Ⅱ·黑暗森林》中就在其他三位面壁者泰勒、雷迪亞茲和希恩思在忙于自己的面壁計劃時,同樣作為面壁者的羅輯在當選后并沒有像其他三位面壁者一樣去著手籌備針對三體人的“面壁計劃”事宜,而是上演了一出出“面壁者迷惑行為”,雖然非常疑惑,但是人們也一直以為這是羅輯“計劃的一部分”:繼提出要一棟在人間仙境的豪宅 和競拍沉船中的“美酒” 后,羅輯又提出希望大史能幫他找一位只在自己夢中見過的女孩。
驚奇的是這個女孩僅僅是羅輯自己臆想出來的,甚至都有可能不在這個世界上。于是羅輯開始描述這個女孩:
那好,幫我找一個人,一個二十歲左右的女孩兒,這是計劃的一部分。
她是一個,嗯,東方女孩,就設定為中國人吧。
她來到這個世界上,就像垃圾堆里長出了一朵百合花,那么-那么的純潔嬌嫩,周圍的一切都不可能污染她,但都是對她的傷害,是的,周圍的一切都能傷害到她!你見到她的第一反應就是去保護她……啊不,呵護她,讓她免受這粗陋野蠻的現實的傷害,你愿意為此付出一切代價!
她在圖書館中的第一次活現,講述他與她在宿舍里那想象中的壁爐前的相逢,講她在他課堂上的現身,描述那天晚上壁爐的火光透過那瓶像晚霞的眼睛的葡萄酒在她的臉龐上映出的美麗。他幸福地回憶他們的那次旅行,詳細地描述每一個最微小的細節:那雪后的田野、藍天下的小鎮和村莊、像曬太陽的老人的山,還有山上的黃昏和篝火……
大史在聽完羅輯的描述后開始推測這個女孩的基本情況:
“她的文化程度,應該是大學以上博士以下。
她應該出生在一個高級知識分子家庭,過的不是富豪的生活,但比一般人家要富裕得多。她從小到大享受著充分的父愛母愛,但與社會,特別是基層社會接觸很少。
她喜歡穿那種,怎么說呢,素雅的衣服,在她這種年齡的女孩子來說,顯得稍微素了些。”羅輯呆呆地連連點頭,“但總有很潔白的部分,比如襯衣呀領子呀什么的,與其余深色的部分形成挺鮮明的對比。
最后一點:她個子不高,一米六左右吧,身材很……怎么形容來著,纖細,一陣風就能刮跑的那種,所以這個兒也不顯得低……”
在前面自信息量定義式的基礎上引入對自信息量I(x)I(x)I(x)的理解:
(1)I(x)\ I(x)?I(x)表示事件xxx是否發生的不確定度的大小。一旦該事件發生,就消除了這種不確定度,帶來了信息量。
(2)I(x)\ I(x)?I(x)表示事件xxx的發生所帶來(或所提供)的信息量的大小。
(3)I(x)\ I(x)?I(x)表示確定事件xxx是否發生,所需要的信息量的大小。
這里再引入信息量強可加性和可加性的公式:
強可加性: I(x,y)=I(x)+I(y∣x)=I(y)+I(x∣y)I(x,y)=I(x)+I(y|x)=I(y)+I(x|y)I(x,y)=I(x)+I(y∣x)=I(y)+I(x∣y)
可加性:隨機變量 與 相互獨立時 I(x,y)=I(x)+I(y)I(x,y)=I(x)+I(y)I(x,y)=I(x)+I(y)
我們假設女孩為事件 x1x_1x1?,P(x1)=1/2P(x_1)=1/2P(x1?)=1/2 ,根據第一部分的自信息量的定義式可知 I(x1)=1bitI(x_1)=1bitI(x1?)=1bit,同理記二十歲左右為事件x2x_2x2?,P(x2)=1/8P(x_2)=1/8P(x2?)=1/8 ,I(x2)=3bitI(x_2)=3bitI(x2?)=3bit ,事件x1x_1x1?與事件x2x_2x2?統計獨立,所以根據可加性I(x1,x2)=I(x1)+I(x2)=4bitI(x_1,x_2)=I(x_1)+I(x_2)=\mathrm{4bit}I(x1?,x2?)=I(x1?)+I(x2?)=4bit。以此類推,雪后的田野、藍天下的小鎮和村莊、像曬太陽的老人的山,還有山上的黃昏和篝火等等這些都分別記為事件x3,x4,x5,x6x_3,x4,x5,x6x3?,x4,x5,x6……并且計算出它們發生的概率,重復前面的步驟,當最終獲得的信息量 I(x1x2…xn)=33bitI(x_1x_2\ldots x_n)=\mathrm{33bit}I(x1?x2?…xn?)=33bit(233=85899345922^{33}=8589934592233=8589934592,基本接近地球人口,當最終的聯合事件概率接近1/2331/2^{33}1/233時,信息量就達到33bit33bit33bit,此時要找的人就可以唯一確定。)時,大史就可以唯一確定羅輯要找的人了。
一段時間后,大史找到了羅輯的夢中情人——莊顏。
同樣的在偵探小說或者現實生活中,偵探或者警察辦案也是在不斷地搜集各種線索,然后利用這些線索提供的信息量之和唯一地去確定犯罪嫌疑人,當然了警方斷案肯定不會采用這樣的定量計算,但是基本的思路時一致的。
三.藍天的熵
汪淼在玩過《三體》游戲 以后感慨道:
記得在大三的一次信息課中,教授掛出了兩幅大圖片,一幅是畫面龐雜精細的《清明上河圖》,另一幅是一張空曠的天空照片,空蕩蕩的藍天上只有一縷似有似無的白云。教授問這兩幅畫中哪一幅所包含的信息量更大,答案是后者要比前者大一至兩個數量級!
在《三體》中這段情節是三本書中對信息論知識最直接的描寫,對于這段話可以有多種不同的理解:
(一)從不確定性的角度來理解
清明上河圖雖然是一幅場面非常宏大的圖案,但是其上的各個要素,比如人物、舟車、建筑,對于它們來說都是作者張擇端經過安排而確定的,相對而言更加地有序,而藍天以及空中的云朵它們的位置、狀態等等都充滿了不確定性,更加地無序,同樣是一張圖片,在它們消除的不確定度上顯然是后者要大于前者的。
(二)用通信系統模型來理解
接下來給出通信系統的模型:
在觀賞畫作的過程中,畫作是信源,把畫布反射光這一過程當作編碼過程,將信源畫作的信息編碼為了光信號,信號經過空氣這一信道,在這里把眼球也當作信道,因為除了感光細胞以外部分并沒有將光信號轉化為大腦能識別的電信號的能力,把感光細胞作為譯碼器翻譯成大腦可以識別的電信號,大腦作為信宿。
在這個過程中,編碼器、信道、譯碼器和信宿是一樣的,不同的只有信源,可能說在經過這樣一個過程后信宿接收到的關于兩幅圖的信息量可能是接近的,但是有可能編碼器、信道和譯碼器自身的編碼譯碼方式的限制,信源實際的熵值有可能差距會很大。
在這里進一步將該模型簡化:
無失真信源編碼定理和有噪信道編碼定理告訴我們,無論何種信道,只要信息傳輸率小于信道容量,總能找到一種編碼方法,使得在該信道上能以任意小的錯誤概率和任意接近于信道容量的信息傳輸率來傳輸信息。反之則不能使信息的傳輸差錯概率任意小。
但是首先無失真的編碼并非總是必要的。在實際應用中信宿的靈敏度和分辨能力都是有限的,沒有必要無失真地傳輸信息。其次無失真的編碼并非總是可能的,實際信源輸出常常是連續的消息,所以信源的信息量無限大受到信道容量的限制,不能實現無失真的傳輸連續信源的消息。既然允許了一定的失真存在也就允許壓縮信源輸出的信息率。
對于藍天的畫像,藍天的圖案作為一個連續信源其信源熵是無窮大,所以必須對其進行壓縮,比如圖案在1mm1mm1mm上有10個像素點和10000個像素點,這兩種壓縮方式信源熵差距也會很大,比如在10個像素點的時候某個1mm2{1mm}^21mm2的小方塊只是一個暗斑,而在10000個像素點時可以看清是一個飛鳥。當圖案分辨率足夠高信息傳輸率RRR足夠大的時候會超過信道的容量CCC,也超出了信宿(人大腦)的靈敏度和分辨率,即無法也無需進行無失真的傳輸,這就使得信宿(人大腦)接收到的信息實際上是壓縮過的。清明上河圖由于其較高的確定性,信源熵比較低,信息傳輸率RRR小于信道容量CCC,信宿(人大腦)可以無失真地接收信息。
在這樣的情況下對于兩個信源(兩幅圖片)發送的信息來說可能信宿(人大腦)接收的信息量可能差距并不是很大,但是實際上這兩個信源(兩幅圖片)實際的信息量可能差距不只是一兩個數量級。
四.猜疑鏈中的互信息兩面性
在《三體》第二部《黑暗森林》中,最重要的一個概念就是猜疑鏈的概念,書中的原文是這樣的:
如果你認為我是善意的,這并不是你感到安全的理由,因為按照第一條公理(生存是文明的最根本需要),善意文明并不能預先把別的文明也想成善意的,所以,你現在還不知道我是怎么認為你的,你不知道我認為你是善意還是惡意;進一步,即使你知道我把你也想象成善意的,我也知道你把我想象成善意的,但是我不知道你是怎么想我怎么想你怎么想我的,挺繞的是不是?這才是第三層,這個邏輯可以一直向前延伸,沒完沒了。
這就像是一個套娃一樣,總之到了最后雙方都是無法判斷對方是否是善意的以及對方如何判斷我方是否是善意的。然后根據博弈論的理論,在這種情況下,我方會做出主動攻擊對方的舉動。
按照書中的理論我們將模型簡化,假設文明甲發現了文明乙,這時它有三種不同的選擇以及對應的收益(收益為負即為損失):
(1)攻擊文明乙,收益為0;
(2)發出和平聲明表示愿意合作,在這里我們假設兩個事件:在文明甲發現文明乙以后向文明乙發出和平的聲明記作事件yyy,對應概率為P(y)P\left(y\right)P(y),因為發送聲明意味著甲的位置暴露,文明乙有可能攻擊甲,把文明乙攻擊文明甲記作事件xxx,對應概率為P(x)P\left(x\right)P(x)。事件y的出現給出關于事件xxx的信息量為互信息,公式為:
I(x;y)=logP(x∣y)P(x)I(x;{y})=log{\frac{P(x\left|y\right.)}{P(x)}}I(x;y)=logP(x)P(x∣y)?
其含義是:由事件yyy消除的關于事件xxx的不確定度。
然而互信息有一條性質是:互信息可以為正,也可以為負。互信息為正,說明事件yyy的出現消除了關于事件xxx的不確定度,有利于事件xxx的出現,即文明甲發出和平聲明促進了文明乙對文明甲發動進攻;反之互信息為負,說明事件yyy的出現增大了關于事件xxx的不確定度,不利于事件xxx的出現,即文明甲發出和平聲明阻礙了文明乙對文明甲發動進攻。正是由于互信息具有可正可負的性質,使得文明甲在發出和平聲明后既有可能增大了文明乙攻擊甲的可能性,也有可能減小這種可能性,這就為猜疑鏈的形成提供了有力的支持。
在這種情況下,我們規定若乙發動攻擊時甲的收益是-10,乙選擇合作時甲的收益是10;
(3)保持沉默,考慮到黑暗森林理論中的另一重要結論:技術爆炸 ,文明乙有可能在短期內發生技術爆炸后發現文明甲面臨同樣的問題,若乙日后發動攻擊,文明甲的收益就是-10,而發出和平聲明同樣要面臨甲準備發出和平聲明時遇到的情況。
顯然雙方選擇合作能得到最大的總收益20,但是按照囚徒困境[^5]的理論每一方還是會選擇與之相反的舉動,即做出攻擊對方的行為,況且在本案例中,是甲先發現了乙,在做出攻擊決策的時候并不會有任何的損失,這會使得甲更容易做出攻擊決定。
整部《三體》第二部《黑暗森林》里最重要的“黑暗森林”理論中最重要的概念是猜疑鏈,正是由于文明之間猜疑鏈的存在使得三體人大舉進攻地球,也正是由于文明內部猜疑鏈的存在爆發了“黑暗戰役”,從某種意義上來說,整本書都是圍繞猜疑鏈而展開的,而猜疑鏈究其根源還是由于互信息可正可負的性質決定的,所以要是讓信息論老師給《三體》第二部起名,那一定是《互信息兩面性引發的星際慘案》。
同樣的我們也可用互信息兩面性的知識來解釋我們當下的一些現象,抑或利用好互信息兩面性來為我方博取更大的利益。就比如作戰行動中的佯攻,我們就可以認為是一種利用互信息可正可負性質,給予我方不希望的敵軍動向以負的互信息,給予我方希望的敵軍動向以正的互信息,以達到作戰目的。以及賽場上的假動作、人際交往中的爾虞我詐等等我們都可以用互信息的理論來解釋。
五.用平均互信息極值性詮釋為什么人類最終慘敗
在《三體》第三部死神永生中最為網友們津津樂道的就是在小說中男主云天明給女主程心講的三個童話故事了。“萬有引力”號向宇宙廣播三體星系坐標后不久,三體星系就遭到了高級文明的黑暗森林打擊,這讓人類惶惶不可終日,但是“茶道談話”結束的時候“智子”對程心說云天明想見她。在智子的安排下,程心在拉格朗日點通過“智子”實時回傳的畫面見到了云天明,因為三體人不許云天明向人類透露任何關于黑暗森林打擊的消息,于是見面中云天明向程心講了三個童話故事:“王國的新畫師 ” “饕餮海 ” “深水王子 ” ,這三個故事蘊含了人類遭到黑暗森林打擊的方式和逃避打擊的方法,只是由于三體人思想透明看不懂計謀,所以沒有猜出來。
程心返回地球后人類馬上開始了對這三個童話故事的解讀工作,由于故事充滿了各種隱喻,因此破解工作并不順利,最終由于其中最重要的黑暗森林打擊方式沒有被人類解讀出來,導致人類走上了錯誤的發展方向,最終整個太陽系被神級文明“歌者”的二向箔二維化。
在這個故事情節中,我們把云天明要傳遞的情報作為信源傳輸的信息,人類解讀的情報作為信宿接收到的信息,信息傳輸率 R=I(X;Y)=H(X)?H(X∣Y)R=I(X;Y)=H(X)-H(X|Y)R=I(X;Y)=H(X)?H(X∣Y),根據平均互信息的性質之一——極值性:
平均互信息 分別小于等于 和 的熵,即
I(X;Y)≤H(X)I(X;Y)\le H(X)I(X;Y)≤H(X)I(X;Y)≤H(Y)I(X;Y)\le H(Y)I(X;Y)≤H(Y)
如下圖所示,信源熵有部分成為了損失熵,而非常不幸的是“失真”的部分恰好是最重要的黑暗森林打擊方式,正因為沒有解讀出這部分,導致人類在決策時即使掌握了光速飛船的制造技術依然選擇禁止光速飛船的研發,轉而根據之前三體星系遭到的光粒打擊開始掩體計劃,致使人類走上了一條死路。結果令人唏噓不已,歷史給人的唯一教訓,就是人們從未在歷史中吸取過任何教訓。又印證了前部中的那句話:弱小和無知不是生存的障礙,傲慢才是。
六.總結
除了本文介紹的三個案例,《三體》中還有許多情節涉及信息論相關知識抑或劇情的理解上可以采用信息論的觀點,比如《內部參考》紅岸工程文件中提到的自解譯系統;三體人使用一種強思維電波進行溝通,用思維直接進行展示,說明這種“通信”方式有著比人類對話高得多的信息傳輸率;劉慈欣在《三體》Ⅲ中描述了四維空間中觀察三維物體的景象,借助數字傳真編碼的知識將其擴展到三維使我更加方便地理解了小說中的設定……
通過對信息論的學習,我對小說中一些情節產生了許多暢想:葉文潔向三體星系發送信息時編碼方式是什么樣的?云天明在編童話故事的時候能不能引入前向糾錯的方式讓人類知道自己漏譯了信息從而改變人類的命運?也希望通過對后續課程的學習解答自己的這些疑問,同時也希望《三體》的作者劉慈欣能為讀者們帶來更多更加精彩的作品。
[^1] 劉慈欣.三體[M].重慶:重慶出版社,2008.1
[^2 ] 劉慈欣.三體Ⅱ·黑暗森林[M].重慶:重慶出版社,2008.5
[ ^3] 劉慈欣.三體III·死神永生[M].重慶:重慶出版社,2010.11
[^4 ] 趙曉群.信息論基礎及應用[M].北京:機械工業出版社,2015.8
[^5] 范如國 韓民春.博弈論[M].武漢:武漢大學出版社,2004
總結
以上是生活随笔為你收集整理的带本信息论看《三体》——信息论课程论文的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: List集合的remove一个对象的方法
- 下一篇: [nodejs][html5][css3