概念
1、從字面意義上來講,源檔案是指一個檔案,指原始碼的集合。原始碼則是一組具有特定意義的,可以實現特定功能的字元(程式開發代碼)。
2、“原始碼”在大多數時候等於“源檔案”
3、網站的源碼可以構建成一個網頁、也能構成一個網站。
4、最簡單的理解就是網站的源程式。
“比如在這個網頁上右鍵滑鼠,選擇查看源檔案,出來一個記事本,裡面的內容就是此網頁的原始碼。”這句話就體現了他們的關係,此處的源檔案是指網頁的原始碼,而原始碼就是源檔案的內容,所以又可以稱做網頁的原始碼。
原始碼是指原始代碼,可以是任何語言代碼。
彙編碼是指原始碼編譯後的代碼,通常為二進制檔案,比如DLL、EXE、.NET中間代碼、JAVA中間代碼等。
高級語言通常指C/C++、BASIC、C#、JAVA、PASCAL等等 彙編語言就是ASM,只有這個,比這個更低級的就是機器語言了。
分類
網站源碼也分為兩種,一種是動態源碼如:ASP,PHP,JSP,.NET,CGI等,一種是靜態源碼如:HTML等。
動態源碼
在伺服器端運行的程式、網頁、組件,屬於動態網頁,它們會隨不同客戶、不同時間,返回不同的網頁,例如ASP、PHP、JSP、NET、CGI等。
最大的特點就是能夠和用戶之間互動。比如說網易的信箱,張三登入的時候,會看到歡迎光臨張三,李四又登入了,李四又看到歡迎光臨李四,其實他們兩個人登入的是一個頁面,這個就是動態源碼的好處,如果要是用靜態源碼,好像網易有幾百萬的信箱用戶,每個人做一個頁面那要多少頁啊? 動態源碼不單單只有這么一點用處,比如說我們常見的一些論壇、留言本、計數器、聊天室等,都是由動態源碼開發的。動態源碼最大的特點就是有資料庫,比如ACCESS,SQL,MYSQL,等!此類網站源碼的特點就是擁有後台管理,此類網站源碼相對靜態源碼來說不容易被搜尋引擎收錄!
靜態源碼
運行於客戶端的程式、網頁、外掛程式、組件,屬於靜態網頁,例如html頁、Flash、JavaScript、VBScript等等,它們是永遠不變的。
比如說我們當前看到的這個網頁他就是靜態的源碼,靜態源碼無法實現以上的那些功能。沒有後台,但容易被搜尋引擎收錄。
有不少源碼下載站,下載的源碼基本上檔案都不齊全,只能做為參考學習使用,如果想使用此類源碼,必須要專業的編程人員加以修改才能使用,如果您是一位網站開發者可以到淘寶上購買源碼,這種源碼一般情況都是比較齊全的,當然也有不齊全的,但只需稍加修改就可以建立自己的網站。
靜態與動態
程式是否在伺服器端運行,分辨靜態網頁與動態的重要標誌。
靜態網頁和動態網頁各有特點,網站採用動態網頁還是靜態網頁主要取決於網站的功能需求和網站內容的多少,如果網站功能比較簡單,內容更新量不是很大,採用純靜態網頁的方式會更簡單,反之一般要採用動態網頁技術來實現。
靜態網頁是網站建設的基礎,靜態網頁和動態網頁之間也並不矛盾,為了網站適應搜尋引擎檢索的需要,即使採用動態網站技術,也可以將網頁內容轉化為靜態網頁發布。
動態網站也可以採用靜動結合的原則,適合採用動態網頁的地方用動態網頁,如果必要使用靜態網頁,則可以考慮用靜態網頁的方法來實現,在同一個網站上,動態網頁內容和靜態網頁內容同時存在也是很常見的事情。
作用
網站源碼主要作用
生成目標代碼,即計算機可以識別的代碼。
對軟體進行說明,即對軟體的編寫進行說明。為數不少的初學者,甚至少數有經驗的程式設計師都忽視軟體說明的編寫,因為這部分雖然不會在生成的程式中直接顯示,也不參與編譯。但是說明對軟體的學習、分享、維護和軟體復用都有巨大的好處。因此,書寫軟體說明在業界被認為是能創造優秀程式的良好習慣,一些公司也硬性規定必須書寫。
需要指出的是,原始碼的修改不能改變已經生成的目標代碼。如果需要目標代碼做出相應的修改,必須重新編譯。
程式使用
網站程式一般就是可以用記事本打開的好多行英文的,用程式語言寫好的軟體
源程式經過編譯成目標程式,才能運行。一般目標程式不能再修改了。
我們電腦上安裝的軟體都是目標程式。源程式不可能直接運行的。
提倡軟體開源的人士認為應該提供源程式給用戶,讓用戶自己修改,有利於軟體行業的發展。反對的人覺得這樣不利於保護著作權。
源碼組合
網站源碼作為軟體的特殊部分,可能被包含在一個或多個檔案中。一個程式不必用同一種格式的原始碼書寫。例如,一個程式如果有C語言庫的支持,那么就可以用C語言;而另一部分為了達到比較高的運行效率,則可以用彙編語言編寫。
較為複雜的軟體,一般需要數十種甚至上百種的原始碼的參與。為了降低種複雜度,必須引入一種可以描述各個原始碼之間聯繫,並且如何正確編譯的系統。在這樣的背景下,修訂控制系統(RCS)誕生了,並成為研發者對代碼修訂的必備工具之一。
還有另外一種組合:原始碼的編寫和編譯分別在不同的平台上實現,專業術語叫做軟體移植。
著作權分類
按照原始碼類型區分軟體,通常被分為兩類:自由軟體和非自由軟體。
自由軟體一般是不僅可以免費得到,而且公開原始碼;相對應地,非自由軟體則是不公開原始碼。所有一切通過非正常手段獲得非自由軟體原始碼的行為都將被視為非法。
質量標準
對於計算機而言,並不存在真正意義上的“好”的原始碼;然而作為一個人,好的書寫習慣將決定原始碼的好壞。原始碼是否具有可讀性,成為好壞的重要標準。軟體文檔則是表明可讀性的關鍵。
執行效率
雖然我們可以通過不同的語言來實現計算機的同一功能,但在執行效率上則存在不同。普遍規律是:越高級的語言,其執行效率越低,這也是為什麼彙編語言生成的檔案比用VB語言生成檔案普遍要小的原因;
原始碼就是用彙編語言和高級語言寫出來的代碼,主要對象是面向開發者;
我們平常使用的應用程式都是經過源碼編譯打包以後發布的,呈現的最後結果是面向使用者,最終客戶的。