英雄聯盟S10總決賽即將開賽,你知道這款遊戲的內在嗎?

這週末英雄聯盟S10總結賽就要開始了,相信各位聯盟發燒友已經按耐不住激動地心情了吧?到底是LPL穩坐第一賽區寶座還是LCK重回巔峰時代?這一切的一切都將在這週末揭曉!

英雄聯盟S10總決賽即將開賽,你知道這款遊戲的內在嗎?

但是英雄聯盟這款遊戲到底是用什麼編程語言寫的呢?

LOL是由html、C++語言編寫。進遊戲前的主界面是由html編寫的,登陸界面的背景和動畫效果就是用的html結合flash動畫處理的。遊戲所用的引擎是拳頭公司自己開發的3D引擎,基於C++開發的,遊戲內核心語句是action>英雄聯盟S10總決賽即將開賽,你知道這款遊戲的內在嗎?

HTML

超文本標記語言,縮寫為HTML,標準通用標記語言下的一個應用。HTML不是一種編程語言,而是一種標記語言 ,是網頁製作所必備的工具。“超文本”就是指頁面內可以包含圖片、鏈接,甚至音樂、程序等非文字元素。

超文本標記語言的結構包括“頭”部分和“主體”部分,其中“頭”部提供關於網頁的信息,“主體”部分提供網頁的具體內容。

語言特點

簡易性:超級文本標記語言 版本升級採用 超集方式,從而更加靈活方便。

可擴展性:超級文本標記語言的廣泛應用帶來了加強功能,增加 標識符等要求,超級文本標記語言採取子類元素的方式,為系統擴展帶來保證。

平臺無關性:雖然 個人計算機大行其道,但使用 MAC等其他機器的大有人在,超級文本標記語言可以使用在廣泛的平臺上,這也是 萬維網( WWW)盛行的另一個原因。

通用性:另外, HTML是網絡的通用語言,一種簡單、通用的全置標記語言。它允許網頁製作人建立文本與圖片相結合的複雜頁面,這些頁面可以被網上任何其他人瀏覽到,無論使用的是什麼類型的電腦或瀏覽器。

C++

C++是一種面向對象的計算機程序設計語言,由美國AT&T貝爾實驗室的本賈尼·斯特勞斯特盧普博士在20世紀80年代初期發明並實現,最初它被稱作“C with Classes”(包含類的C語言)。它是一種靜態數據類型檢查的、支持多種編程範式的通用程序設計語言,支持過程化程序設計、數據抽象、面向對象程序設計、泛型程序設計等多種程序設計風格.

C++是C語言的繼承,進一步擴充和完善了C語言,成為一種面向對象的程序設計語言。

語言特點

優點:

C++設計成靜態類型、和C同樣高效且可移植的多用途程序設計語言。

C++設計成直接的和廣泛的支持多種程序設計風格(程序化程序設計、資料抽象化、面向對象程序設計、泛型程序設計)。

C++設計成給程序設計者更多的選擇,即使可能導致程序設計者選擇錯誤。

C++設計成儘可能與C兼容,藉此提供一個從C到C++的平滑過渡。

C++避免平臺限定或沒有普遍用途的特性。

C++不使用會帶來額外開銷的特性。

C++設計成無需複雜的程序設計環境。

出於保證語言的簡潔和運行高效等方面的考慮,C++的很多特性都是以庫(如STL)或其他的形式提供的,而沒有直接添加到語言本身裡。關於此類話題,Bjarne Stroustrup的《C++語言的設計和演化》(1994)裡做了詳盡的陳述。

C++在一定程度上可以和C語言很好的結合,甚至大多數C語言程序是在C++的集成開發環境中完成的。C++相對眾多的面向對象的語言,具有相當高的性能。

C++引入了面向對象的概念,使得開發人機交互類型的應用程序更為簡單、快捷。很多優秀的程序框架包括MFC、QT、wxWidgets就是使用的C++。

缺點:

C++由於語言本身過度複雜,這甚至使人類難於理解其語義。更為糟糕的是C++的編譯系統受到C++的複雜性的影響,非常難於編寫,即使能夠使用的編譯器也存在了大量的問題,這些問題大多難於被發現。

由於本身的複雜性,複雜的C++程序的正確性相當難於保證。也有人提出不支持多線程的原語等缺陷。不過有如此多的知名人士提出瞭如此多的缺陷,正說明C++被廣泛使用和成功。

c++語言由於過度的複雜性,以及與Unix的文化相牴觸,在Unix/Linux領域受到很多著名人士(比如Linux之父Linus Torvalds與著名黑客Eric S. Raymond)的強烈批評與抵制。


分享到:


相關文章: