—恢復內容開始—
web應用開發週期
1. 前期準備
2. 編碼
3. 上線
4. 資料分析
5. 持續交付
6. 遺留系統
7. 回顧與新架構
重構的一般性因素
1. 系統難以維護
2. 系統技術棧難以符合業務需求
如何做技術選型
1. 根據選定技術棧,在此技術棧搭建的專案裡試著行業務擴充,在決定是否使用
如何搭建構建系統
1. 建立初始化程式碼
2. 選擇版本管理工具
3. 選擇整合工具
4. 選擇打包工具
5. 編寫自動化部署指令碼
web應用開發步驟
1. 編碼,拆解需求,對拆解對需求進行分級,進行code diff 2. 上線和資料分析,通過分析工具來監測使用者的行為,網站的訪問量,產品受歡迎程度,使用者及流量來源,轉換率,然後進行優化,常見流量來源:搜素引擎,外部連結,付費搜素等
—恢復內容結束—
## www基本概念
全球資訊網(World Wide Web)是將網際網路中的資訊以超文字形式展現的系統,也叫做web,可以顯示www資訊的客戶端叫做web瀏覽器
1. URI(Uniform Resource Identifier) 訪問資訊的手段與位置
2. HTML(HyperText Markup Language) 資訊的表現形式
3. HTTP(HyperText Transfer Protocol) 資訊轉發
URI
URI 是一種可用於www之外的高效的識別碼,被用於主頁地址,電子郵件,電話號碼等各種組合
url:
http://xxxx/x/x.xx
http://xxxx:80/x.xx
http://localhost:80/
URI不僅限於識別網路資源,他可以用於所有資源的識別碼
URI所表示的組合叫做scheme,在www中使用最多的scheme是http和https
http://主機名/路徑
http://主機名:埠/路徑
http://主機名:埠號/路徑?訪問內容#部分資訊
URI的主要方案
方案名 | 內容 |
---|---|
ftp | File Transfer Protocol |
http | HyperText Transfer Protocol |
file | Host-specific File Names |
https | Hypertext Transfer Protocol Security |
HTML
HTML可以人為是www的表示層,可以展示文字,影像,音訊,視訊,動畫,超連結
<!DOCTYPE html>
<html>
<head>
<title>文件的標題</title>
</head>
<body>
文件的內容......
</body>
</html>
HTTP
工作原理:客戶端向伺服器80埠建立一個TCP連線,然後在這個連線上進行資料包文的請求應答
1.http1.0中每一個命令和應答都會觸發一次TCP連線的建立和斷開
2.http1.1開始,允許在一個TCP連線上傳送多個命令和應答,大量減少了TCP連線的建立和斷開操作,從而提高了效率
HTTP的主要命令 | 作用 |
---|---|
OPTIONS | 設定選項 |
GET | 獲取指定URL的資料 |
HEAD | 僅獲取文件首部 |
POST | 請求伺服器接收URI指定文件作為可執行資訊 |
PUT | 請求伺服器儲存客戶端傳送的資料到URI指定文件 |
DELETE | 請求伺服器刪除URI指定頁面 |
TRACE | 請求訊息返回客戶端 |
資訊提供 | 作用 |
---|---|
100 | Continue |
101 | Switching Protocols |
肯定應答 | 作用 |
---|---|
200 | OK |
201 | Created |
202 | Accepted |
203 | Non-Authoritative Information |
204 | No Content |
205 | Rest Content |
206 | Partial Content |
重定向請求 | 作用 |
---|---|
300 | Multiple Choices |
301 | Moved Permanently |
302 | Found |
303 | See Other |
304 | Not Modified |
305 | Use Proxy |
客戶端請求出現的錯誤 | 作用 |
---|---|
400 | Bad Request |
401 | Unauthorized |
402 | Payment Required |
403 | Forbidden |
404 | Not Found |
405 | Method Not Allowed |
406 | Not Acceptable |
407 | Proxy Authentication Required |
408 | Request Time-out |
409 | Conflict |
410 | Gone |
411 | Length Required |
412 | Procondition Failed |
413 | Request Entity Too Large |
414 | Request-URI Too Large |
415 | Unsupported Media Type |
伺服器錯誤 | 作用 |
---|---|
500 | Internal Server Error |
501 | Not Implemented |
502 | Bad Gatway |
503 | Service Unavailable |
504 | Gateway Time-out |
505 | HTTP Version not supproted |
Javascript
js是一種嵌入在HTML中的程式語言
1. 利用ajax(Asynchronous Javascript and XML)伺服器可以不需要讀取整個頁面而是通過js操作DOM來實現更為生動的web頁面
CGI
CGI是web伺服器呼叫外部程式時所使用的一種服務端應用規範
python實現一個簡單CGI
1. 配置web伺服器CGI目錄
2. 修改web伺服器配置檔案
3. 編寫指令碼
#!/usr/bin/python3
print ("Content-type:text/html")
print () # 空行,告訴伺服器結束頭部
print (`<html>`)
print (`<head>`)
print (`<meta charset="utf-8">`)
print (`<title>Hello Word - 我的第一個 CGI 程式!</title>`)
print (`</head>`)
print (`<body>`)
print (`<h2>Hello Word! 我是來自菜鳥教程的第一CGI程式</h2>`)
print (`</body>`)
print (`</html>`)
nodejs不需要使用CGI
var http = require("http");
http.createServer(function(request, response) {
response.writeHead(200, {"Content-Type": "text/plain"});
response.write("Hello World");
response.end();
}).listen(8888);
Cookie
為來獲取使用者資訊使用一個Cookie機制,在客戶端使用Cookie來儲存使用者資訊,這樣就不必將資訊儲存到伺服器了
RSS
RSS是用來互動與web站點內容更新相關摘要資訊的一種資料格式
1.通過使用 RSS,您可以有選擇地瀏覽您感興趣的以及與您的工作相關的新聞。
2.通過使用 RSS,您可以把需要的資訊從不需要的資訊(兜售資訊,垃圾郵件等)中分離出來。
3.通過使用 RSS,您可以建立自己的新聞頻道,並將之釋出到因特網。