Web探索之旅 | 第二部分第二課:服務器語言

做者 謝恩銘,公衆號「程序員聯盟」(微信號:coderhub)。 轉載請註明出處。 原文:www.jianshu.com/p/30428e658…php


《Web探索之旅》全系列html

內容簡介


  1. 服務器端語言
  2. 總結
  3. 第二部分第三課預告

1. 服務器端語言


上一課 Web探索之旅 | 第二部分第一課:客戶端語言 介紹了 Web 的客戶端,這一課來談談 Web 的服務器端吧。程序員

既然客戶端有客戶端的編程語言(HTML,CSS 和 JavaScript),那麼服務器端豈能遜色呢,對吧。數據庫

服務器端也有很多種編程語言。這些編程語言寫成的程序會在服務器端的電腦上被執行。編程

若是說客戶端的語言編寫的程序決定了咱們的網頁的外觀,那麼服務器端的語言編寫的程序決定了網頁的功能及如何與用戶交互。小程序

你也許會問:「既然咱們能夠用 HTML,CSS 和 JavaScript 直接寫出客戶端的 Web 網站,那爲何還要畫蛇添足用服務器端的語言來編寫網站呢?」瀏覽器

好問題!安全

首先,咱們來學習兩個概念:服務器

靜態網頁和動態網頁


這兩種網頁的類別之區分不在於一個會動,一個是靜止的。微信

靜態網頁(摘自百度百科):

Static Webpage:在網站設計中,純粹 HTML 格式的網頁一般被稱爲「靜態網頁」,靜態網頁是標準的 HTML 文件,它的文件擴展名通常是 .htm、.html,能夠包含文本、圖像、聲音、FLASH 動畫、客戶端腳本和 ActiveX 控件及 Java 小程序等。靜態網頁是網站建設的基礎,早期的網站通常都是由靜態網頁製做的。靜態網頁是相對於動態網頁而言,是指沒有後臺數據庫、不含程序和不可交互的網頁。靜態網頁相對更新起來比較麻煩,適用於通常更新較少的展現型網站。容易誤解的是靜態頁面都是 .htm 這類頁面,實際上靜態也不是徹底靜態,它也能夠出現各類動態的效果,如 GIF 格式的動畫、FLASH、滾動字幕等。

動態網頁(摘自百度百科):

Dynamic Webpage:動態網站並非指具備動畫功能的網站,而是指網站內容可根據不一樣狀況動態變動的網站,通常狀況下動態網站經過數據庫進行架構。 動態網站除了要設計網頁外,還要經過數據庫和編程來使網站具備更多自動的和高級的功能。動態網站體的網頁通常是以 asp,jsp,php,aspx 等結束,而靜態網頁通常是 .html 或 .htm 結尾。動態網站服務器空間配置要比靜態的網頁要求高,費用也相應的高,不過動態網頁利於網站內容的更新,適合企業建站。動態是相對於靜態網站而言。

如今咱們較少看到一些靜態網頁了,通常的網站都是動態,能夠和用戶交互的。

靜態網頁,你一旦用 HTML 和 CSS 寫好,上傳到服務器空間,之後每一個用戶訪問你的網址看到的網頁都是同樣的。

動態網頁展現給每一個用戶通常是不同的,例如能夠註冊用戶的那些網站,確定是動態網頁。由於你登陸後就看到本身的信息,其餘人登陸則看到他們本身的信息。

以後的課程咱們會介紹數據庫,到時候就理解得更透徹了,如今有點小暈是正常的。

與客戶端不一樣的是,服務器端沒有一種語言是必須使用的。對於客戶端來講,HTML 語言是必須的。對於服務器端,咱們能夠選擇適合本身的編程語言來開發。

常見的服務器端編程語言有:

  1. PHP
  2. Java
  3. Python
  4. Ruby
  5. C#
  6. Go

除了這 6 種比較經常使用的,其餘還有一些服務器端語言。固然了,以前的課程也說過,JavaScript 雖然是主流的 Web 客戶端語言,但如今 JavaScript 也可被用於 Web 服務器端的開發,如 Node.js(一個 JavaScript 運行環境(runtime))。

咱們不能說這 6 種編程語言裏哪種語言更好更優越,只要你用着習慣,能夠用它來實現你想要的功能,那就足夠了。不必定非要 AK47,一把瑞士軍刀也可讓你決勝千里以外,沒必要「送你離開」了,不是嗎?

客戶端的瀏覽器是不能讀取服務器端語言寫的程序的,它「看不懂」 Java,PHP 等寫成的程序。

客戶端請求網頁,服務器端的編程語言寫成的程序生成 HTML 網頁,而後返回給客戶,每一個客戶獲得的結果不盡相同。以下圖所示:

就如咱們上述所說,服務器端的語言沒有誰好誰很差,只要你用着順手,均可以。不過,咱們也能夠來看看一些大公司都喜歡用什麼服務器端語言:

  1. Google:谷歌公司,主要使用 Java,Python 和 Go。

  2. Wikipedia:維基百科,主要使用 PHP。

  3. Facebook:臉書,主要使用 PHP。知道一點 Facebook 歷史的朋友應該記得馬克.扎克伯格在哈佛大學使用 PHP 開發了往後 Facebook 的雛形(固然,一開始極爲簡單)。

  4. Microsoft:微軟公司,主要使用 C#。由於微軟要爲自家的 C# 語言作推廣麼。

  5. 銀行、金融和政府組織的網站:主要使用 Java。由於 Java 仍是比較健壯穩定的(第一個登錄火星的火星車「勇氣號」的應用程序代碼主要是用 Java 寫的),這些機構須要功能強大且安全的代碼。固然不是說其餘服務器語言不安全,你也能夠用 PHP 爲銀行開發網站。只是用 Java 開發網站貌似已經成爲這些機構的慣例。

  6. 硅谷的新興創業公司:主要使用 Python 和 Ruby。雖然這兩門編程語言不是很年輕,可是近幾年確實很火(不過目前 Ruby 這門語言已經呈現衰落的趨勢)。用 Python 和 Ruby 來開發網站很是快捷方便,這兩門語言入門相對簡單,也很靈活。最近幾年,Google 公司發佈的 Go 語言也很是熱門。

固然了,看了上面的列表,不要太被影響。咱們通常開發網站,只要選擇你最喜歡和最順手的服務器語言就好。

2. 總結


PHP,Python,Java,Ruby,C#,Go 等服務器端編程語言,決定了網站的功能。

你能夠在它們之間選擇一種你本身喜歡的來使用。

3. 第二部分第三課預告


今天的課就到這裏,一塊兒加油吧!

下一課:Web探索之旅 | 第二部分第三課:框架和內容管理系統


我是 謝恩銘,公衆號「程序員聯盟」(微信號:coderhub)運營者,慕課網精英講師 Oscar 老師,終生學習者。 熱愛生活,喜歡游泳,略懂烹飪。 人生格言:「向着標杆直跑」

相關文章
相關標籤/搜索