求真百科歡迎當事人提供第一手真實資料,洗刷冤屈,終結網路霸凌。

代碼檢視原始碼討論檢視歷史

事實揭露 揭密真相
前往: 導覽搜尋
代碼

代碼,就是程序員開發工具所支持的語言寫出來的源文件,是一組由字符、符號或信號碼元以離散形式表示信息的明確的規則體系。代碼設計的原則包括唯一確定性、標準化通用性、可擴充性與穩定性、便於識別與記憶、力求短小與格式統一以及容易修改等。 源代碼是代碼的分支,某種意義上來說,源代碼相當於代碼。現代程序語言中,源代碼可以書籍或磁帶形式出現,但最為常用格式文本文件,這種典型格式的目的是為了編譯出計算機程序。計算機源代碼最終目的是將人類可讀文本翻譯成為計算機可執行的二進制指令,這種過程叫編譯,它由通過編譯器完成。[1]

詞語解釋

供把資料和指示輸入自動計算機或制表機的任何符號系統;亦指這種符號的記錄(如靠打孔資料卡片或磁帶上的受磁點)

計算機代碼

源代碼(也稱源程序),是指一系列人類可讀的計算機語言指令。

源代碼是相對目標代碼和可執行代碼而言的。 源代碼就是用匯編語言和高級語言寫出來的地代碼。目標代碼是指源代碼經過編譯程序產生的能被cpu直接識別二進制代碼。可執行代碼就是將目標代碼連接後形成的可執行文件,當然也是二進制的。

在現代程序語言中,源代碼可以是以書籍或者磁帶的形式出現,但最為常用的格式是文本文件,這種典型格式的目的是為了編譯出計算機程序。計算機源代碼的最終目的是將人類可讀的文本翻譯成為計算機可以執行的二進制指令,這種過程叫做編譯,通過編譯器完成。[2] 作用

源代碼主要功用有如下2種作用:

生成目標代碼,即計算機可以識別的代碼。

代碼1.jpg

對軟件進行說明,即對軟件的編寫進行說明。為數不少的初學者,甚至少數有經驗的程序員都忽視軟件說明的編寫,因為這部分雖然不會在生成的程序中直接顯示,也不參與編譯。但是說明對軟件的學習、分享、維護和軟件復用都有巨大的好處。因此,書寫軟件說明在業界被認為是能創造優秀程序的良好習慣,一些公司也硬性規定必須書寫。

需要指出的是,源代碼的修改不能改變已經生成的目標代碼。如果需要目標代碼做出相應的修改,必須重新編譯。

代碼組合

源代碼作為軟件的特殊部分,可能被包含在一個或多個文件中。一個程序不必用同一種格式的源代碼書寫。例如,一個程序如果有C語言庫的支持,那麼就可以用C語言;而另一部分為了達到比較高的運行效率,則可以用匯編語言編寫。

較為複雜的軟件,一 般需要數十種甚至上百種的源代碼的參與。為了降低種複雜度,必須引入一種可以描述各個源代碼之間聯繫,並且如 何正確編譯的系統。在這樣的背景下,修訂控制系統(RCS)誕生了,並成為研發者對代碼修訂的必備工具之一。

還有另外一種組合:源代碼的編寫和編譯分 別在 不同的平台上實現,專業術語叫做軟件移植。

版權

如果按照源代碼類型區分軟 件,通常被分為兩類:自由軟件和非自由軟件。自由軟件一般是不僅可以免費得到,而且公開源代 碼;相對應地,非自由軟件則是不公開源代碼。所有一切通過非正常手段獲得非自由軟件源代碼的行為都將被視為非法。

代碼2.jpg

質量

對於計算機而言,並不存在真正意義上的"好"的源代碼;然而作為一個人,書寫習慣的好壞將決定源代碼的好壞。源代碼是否具有可讀性,是判斷其好壞的重要標準。軟件文檔則是表明可讀性的關鍵。

效率

雖然我們可以通過不同的語言來實現計算機的同一功能,但在執行效率上則存在不同。普遍規律是:越高級的語言,其執行效率越低。這也是為什麼匯編語言生成的文件比用VB語言生成文件普遍要小的原因。

開放源代碼

您購買或下載的大多數軟件只提供已編譯的可運行版本。"已編譯"意味着開發人員創建的實際程序代碼(稱為源代碼)已經由一個稱為編譯器的特殊程序進行過處理,該程序將源代碼轉換為計算機可以理解的格式(有關編譯器的詳細信息,請參見C語言入門教程)。修改大多數應用程序的已編譯版本都是極其困難的,人們幾乎不可能知道開發人員究竟是如何創建程序的各個部分的。大多數商業軟件製造商都將這一點視為有利條件,以防止其他公司複製自己的代碼並將其用在競爭產品中,同時可以控制其特定產品具有的質量和功能。

開放源代碼軟件恰恰相反。源代碼隨已編譯的版本一起提供,而且事實上鼓勵人們修改或定製。支持開放源代碼概念的軟件開發人員相信,通過允許感興趣的人修改源代碼,應用程序將會更加完善,並且在很長時間內不會出現錯誤。

軟件開發行業所定義的開放源代碼軟件必須滿足一定的條件:

代碼3.png

下面讓我們看一個開放源代碼軟件的真實例子。1991年,芬蘭赫爾辛基大學的學生李納斯·托沃茲(Linus Torvalds)基於Unix的衍生版本Minix開發了一個新的操作系統,並稱之為Linux。托沃茲使用GNU通用公共許可證(它為開放源代碼軟件提供了很好的法律定義)發布了0.02版本的Linux。全球各地的人下載並開始使用Linux。其中,許多用戶是獨立的程序員,他們對托沃茲提供的源代碼進行了修改。在接下來的3年中,托沃茲從其他程序員那裡收到了這些修改後的版本,並將許多改動結合到基礎版本中,於1994年發布了Linux的1.0版。

那些想要使用開放源代碼軟件的最終用戶的一個共同顧慮,是這些軟件缺乏質量擔保和技術支持。因為該軟件的許可證鼓勵修改和定製,所以幾乎無法提供支持。這正是1994年成立的Red Hat Software創建"Official Red Hat Linux"並銷售這一通常是"免費"的軟件的原因。Red Hat向軟件包添加的主要價值是質量擔保和技術支持。對於大多數企業而言,技術支持承諾成為促使其購買Linux而不是免費下載它的一個關鍵因素。除了Red Hat以外,還有其他幾家公司將Linux打包(通常帶有其他軟件)以進行轉售。

除了Linux以外,Mozilla(Netscape瀏覽器核心)、Apache(Web服務器)、PERL(Web腳本語言)和 PNG(圖形文件格式)都是非常受歡迎的基於開放源代碼的軟件。

WEB標準

代碼4.jpg

WEB標準化CSS+DIV代碼

CSS+DIV是網站標準(或稱"WEB標準")中常用的術語之一,通常為了說明與HTML(標準通用標記語言的一個應用)網頁設計語言中的表格(table)定位方式的區別,因為XHTML網站設計標準中,不再使用表格定位技術,而是採用css+div的方式實現各種定位。

層疊樣式表單(外語縮寫CSS)的,它是一種用來表現HTML(標準通用標記語言的一個應用)或XML(標準通用標記語言的一個子集)等文件式樣的計算機語言。

DIV元素是用來為HTML文檔內大塊(外語block-level)的內容提供結構和背景的元素。DIV的起始標籤和結束標籤之間的所有內容都是用來構成這個塊的,其中所包含元素的特性由DIV標籤的屬性來控制,或者是通過使用樣式表格式化這個塊來進行控制。

CSS+DIV網站設計的優勢和問題

XHTM是目前國際上倡導的網站標準設計語言,因為XHTML網站設計語言具有的基本特點,這種CSS+DIV模式的網站設計具有一定的優勢,不過目前在網站建設應用中CSS+DIV模式也存在一些問題。本文綜合網站技術和設計人員的體會,並從網絡營銷應用的角度,將CSS+DIV網站設計的優勢和問題歸納如下:

代碼5.jpg

CSS+DIV網站設計的優勢

首先,CSS的極大優勢表現在簡潔的代碼,對於一個大型網站來說,可以節省大量帶寬,而且眾所周知,搜索引擎喜歡清潔的代碼(其真正意義在於,增加了有效關鍵詞占網頁總代碼的比重),因此使用CSS+DIV的web標準製作的網站具有搜索引擎友好的一定優勢。

其次,CSS+DIV製作的網站使得網站改版相對簡單,很多問題只需要改變CSS而不需要改動程序,從而降低了網站改版的成本。

CSS+DIV網站設計的問題

儘管CSS+DIV具有一定的優勢,不過現階段CSS+DIV網站建設存在的問題也比較明顯,主要表現在:

第一,對於CSS的高度依賴使得網頁設計變得比較複雜。相對於HTML4.0中的表格布局(table),CSS+DIV儘管不是高不可及,但至少要比表格定位複雜的多,即使對於網站設計高手也很容易出現問題,更不要說初學者了,這在一定程度上影響了XHTML網站設計語言的普及應用。

第二,CSS文件異常將影響整個網站的正常瀏覽。CSS網站製作的設計元素通常放在幾個l外部文件中,這一個或幾個文件有可能相當複雜,甚至比較龐大,如果CSS文件調用出現異常,那麼整個網站將變得慘不忍睹。

第三,對於CSS網站設計的瀏覽器兼容性問題比較突出。基於HTML4.0的網頁設計在IE4.0之後的版本中幾乎不存在瀏覽器兼容性問題,但CSS+DIV設計的網站在IE瀏覽器裡面正常顯示的頁面,到火狐瀏覽器(FireFox )中卻可能面目全非(這也是為什麼建議網絡營銷人員使用火狐瀏覽器的原因所在 )。CSS+DIV還有待於各個瀏覽器廠商的進一步支持。

第四,CSS+DIV對搜索引擎優化與否取決於網頁設計的專業水平而不是CSS+DIV本身。CSS+DIV網頁設計並不能保證網頁對搜索引擎的優化,甚至不能保證一定比HTML網站有更簡潔的代碼設計,何況搜索引擎對於網頁的收錄和排序顯然不是以是否採用表格和CSS定位來衡量,這就是為什麼很多傳統表格布局製作的網站在搜索結果中的排序靠前,而很多使用CSS及web標準製作的網頁排名依然靠後的原因。因為對於搜索引擎而言,網站結構、內容、相關網站鏈接等因素始終是網站優化最重要的指標。

參考來源