編碼與程式碼的區別
聽說過“碼農”嗎?他們是計算機程式設計從業者的稱呼,有人就有疑問,碼農的主要工作是打程式碼還是打編碼?下面小編告訴你編碼和程式碼的區別。
一、
程式碼是由英文+數字+特殊符號組成的,編碼就是用程式碼來編寫原始碼的過程!其實從字面意思應該可以大概的瞭解的。
下面小編舉一個例子來講一下。程式碼代表汽車零件,編碼代表生產汽車。這樣就能較好地理解了。
二、編碼的基本介紹
編碼是資訊從一種形式或格式轉換為另一種形式的過程也稱為計算機程式語言的程式碼簡稱編碼。用預先規定的方法將文字、數字或其它物件編成數碼,或將資訊、資料轉換成規定的電脈衝訊號。編碼在電子計算機、電視、遙控和通訊等方面廣泛使用。編碼是資訊從一種形式或格式轉換為另一種形式的過程。
在計算機硬體中,編碼***coding***是在一個主題或單元上為資料儲存,管理和分析的目的而轉換資訊為編碼值***典型地如數字***的過程。在軟體中,編碼意味著邏輯地使用一個特定的語言如C或C++來執行一個程式。在密碼學中,編碼是指在編碼或密碼中寫的行為。將資料轉換為程式碼或編碼字元,並能譯為原資料形式。是計算機書寫指令的過程,程式設計中的一部分。在地圖自動製圖中,按一定規則用數字與字母表示地圖內容的過程,通過編碼,使計算機能識別地圖的各地理要素。
三、程式碼的基本介紹
程式碼就是程式設計師用開發工具所支援的語言寫出來的原始檔,是一組由字元、符號或訊號碼元以離散形式表示資訊的明確的規則體系。程式碼設計的原則包括唯一確定性、標準化和通用性、可擴充性與穩定性、便於識別與記憶、力求短小與格式統一以及容易修改等。 原始碼是程式碼的分支,某種意義上來說,原始碼相當於程式碼。現代程式語言中,原始碼可以書籍或磁帶形式出現,但最為常用格式是文字檔案,這種典型格式的目的是為了編譯出計算機程式。
原始碼是相對目的碼和可執行程式碼而言的。 原始碼就是用匯編語言和高階語言寫出來的地程式碼。目的碼是指原始碼經過編譯程式產生的能被cpu直接識別二進位制程式碼。可執行程式碼就是將目的碼連線後形成的可執行檔案,當然也是二進位制的。在現代程式語言中,原始碼可以是以書籍或者磁帶的形式出現,但最為常用的格式是文字檔案,這種典型格式的目的是為了編譯出計算機程式。計算機原始碼的最終目的是將人類可讀的文字翻譯成為計算機可以執行的二進位制指令,這種過程叫做編譯,通過編譯器完成。
四、開發原始碼
你也許可以在計算機從業者口中聽到開發原始碼這句話,但是你卻不知道到底是什麼意思?下面小編告訴你什麼叫開放原始碼。
大部分人購買或下載的大多數軟體只提供已編譯的可執行版本。"已編譯"意味著開發人員建立的實際程式程式碼***稱為原始碼***已經由一個稱為編譯器的特殊程式進行過處理,該程式將原始碼轉換為計算機可以理解的格式***有關編譯器的詳細資訊,請參見C語言入門教程***。修改大多數應用程式的已編譯版本都是極其困難的,人們幾乎不可能知道開發人員究竟是如何建立程式的各個部分的。大多數商業軟體製造商都將這一點視為有利條件,以防止其他公司複製自己的程式碼並將其用在競爭產品中,同時可以控制其特定產品具有的質量和功能。
開放原始碼軟體恰恰相反。原始碼隨已編譯的版本一起提供,而且事實上鼓勵人們修改或定製。支援開放原始碼概念的軟體開發人員相信,通過允許感興趣的人修改原始碼,應用程式將會更加完善,並且在很長時間內不會出現錯誤。
軟體開發行業所定義的開放原始碼軟體必須滿足一定的條件:
下面讓我們看一個開放原始碼軟體的真例項子。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***圖形檔案格式***都是非常受歡迎的基於開放原始碼的軟體。
五、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標準制作的網頁排名依然靠後的原因。因為對於搜尋引擎而言,網站結構、內容、相關網站連結等因素始終是網站優化最重要的指標。