一、CS架構和BS架構
(1)CS架構
C = Client, S = Server。C/S 架構即“客戶端-服務器” 架構。這里的“客戶端”可以是有 GUI (圖形用戶界面)的定制軟件,也可以是瀏覽器,甚至可以是通過 SSH 訪問服務器的命令行腳本。只要是客戶端通過訪問服務器調取計算或者存儲資源的,統統都是 C/S 架構。
C/S架構軟件(即客戶機/服務器模式)分為客戶機和服務器兩層:第一層是在客戶機系統上結合了表示與業務邏輯,第二層是通過網絡結合了數據庫服務器。簡單的說就是第一層是用戶表示層,第二層是數據庫層。
(2)BS架構
B = Browser,S = Server.。B/S架構即“瀏覽器-服務器”架構。它是C/S架構的一種改進,可以說屬於三層C/S架構。主要是利用了不斷成熟的WWW瀏覽器技術,用通用瀏覽器就實現了原來需要復雜專用軟件才能實現的強大功能,並節約了開發成本,是一種全新的軟件系統構造技術。
所謂的 Browser-Server 架構其實是 C/S 架構的一種特殊的實現形式,而不是其對立面。
二、API與SDK
(1)API (Application Programming Interface),即應用程序編程接口
API就是可以輕松實現和其他軟件的交互。通過一套套的要求,用來管理應用程序之間的溝通。目的是提供應用程序與開發人員基於某軟件或硬件得以訪問一組例程的能力,而又無需訪問原碼,或理解內部工作機制的細節。
一個API相當於你跟它說要求,它會為你完成任務。而且你不需要知道它是如何做到的,你只需要問你想要的東西。
(2)SDK (Software Development Kit),即軟件開發工具包
通俗來講就是第三方服務商提供的實現產品軟件某項功能的工具包,可用於開發面向特定平台的軟件應用程序的工具包。
舉個例子,如果你想組裝一個模型車或飛機。在構建這個模型時,需要一整套物品去組裝。SDK相當於組裝它們所需的工具,包括裝配說明等等。
(3)API、SDK比較
API和SDK最終實現的功能都是一樣的,至於采用哪一種,需要結合對接平台的需求(保密程度,特殊需求、開發成本等等)。
API特點:
優勢:API開發成本低,對接比較簡單,可以快速驗證商業模式和用戶體驗。
劣勢:API會經過對接平台,廠商可以獲取對接平台相關數據信息。
SDK特點:
優勢:SDK對接后的功能比較穩定,響應速度快,而且對接平台相關數據不會被獲取。
劣勢:需要開發的環節較多,開發工作量大,對接周期略長。
三、DOM結構
DOM即DOM: Document Object Module, 文檔對象模型。我們通過JavaScript操作頁面的元素,進行添加、移動、改變或移除的方法和屬性, 都是DOM提供的。
它被分為 3 個不同的部分:
- 核心 DOM - 針對任何結構化文檔的標准模型
- XML DOM - 針對 XML 文檔的標准模型
- HTML DOM - 針對 HTML 文檔的標准模型
