使用 Golang 打造 Web 應用程式
  • Introduction
  • Go 環境配置
    • Go 安裝
    • GOPATH 與工作空間
    • Go 命令
    • Go 開發工具
    • 小結
  • Go 語言基礎
    • 你好,Go
    • Go 基礎
    • 流程和函式
    • struct
    • 物件導向
    • interface
    • 併發
    • 小結
  • Web 基礎
    • web 工作方式
    • Go 建立一個簡單的 web 服務
    • Go 如何使得 web 工作
    • Go 的 http 套件詳解
    • 小結
  • 表單
    • 處理表單的輸入
    • 驗證表單的輸入
    • 預防跨站指令碼
    • 防止多次提交表單
    • 處理檔案上傳
    • 小結
  • 存取資料庫
    • database/sql 介面
    • 使用 MySQL 資料庫
    • 使用 SQLite 資料庫
    • 使用 PostgreSQL 資料庫
    • 使用 beedb 函式庫進行 ORM 開發
    • NoSQL 資料庫操作
    • 小結
  • session 和資料儲存
    • session 和 cookie
    • Go 如何使用 session
    • session 儲存
    • 預防 session 劫持
    • 小結
  • 文字檔案處理
    • XML 處理
    • JSON 處理
    • 正則處理
    • 範本處理
    • 檔案操作
    • 字串處理
    • 小結
  • Web 服務
    • Socket 程式設計
    • WebSocket
    • REST
    • RPC
    • 小結
  • 安全與加密
    • 預防 CSRF 攻擊
    • 確保輸入過濾
    • 避免 XSS 攻擊
    • 避免 SQL 注入
    • 儲存密碼
    • 加密和解密資料
    • 小結
  • 國際化和本地化
    • 設定預設地區
    • 本地化資源
    • 國際化站點
    • 小結
  • 錯誤處理,除錯和測試
    • 錯誤處理
    • 使用 GDB 除錯
    • Go 怎麼寫測試案例
    • 小結
  • 部署與維護
    • 應用日誌
    • 網站錯誤處理
    • 應用部署
    • 備份和還原
    • 小結
  • 如何設計一個 Web 框架
    • 專案規劃
    • 自訂路由器設計
    • controller 設計
    • 日誌和配置設計
    • 實現部落格的增刪改
    • 小結
  • 擴充套件 Web 框架
    • 靜態檔案支援
    • Session 支援
    • 表單支援
    • 使用者認證
    • 多語言支援
    • pprof 支援
    • 小結
  • 參考資料
Powered by GitBook
On this page
  • 目錄
  • links

Was this helpful?

如何設計一個 Web 框架

Previous小結Next專案規劃

Last updated 4 years ago

Was this helpful?

前面十二章介紹了如何透過 Go 來開發 Web 應用,介紹了很多基礎知識、開發工具和開發技巧,那麼我們這一章透過這些知識來實現一個簡易的 Web 框架。透過 Go 語言來實現一個完整的框架設計,這框架中主要內容有第一小節介紹的 Web 框架的結構規劃,例如採用 MVC 模式來進行開發,程式的執行流程設計等內容;第二小節介紹框架的第一個功能:路由,如何讓存取的 URL 對映到相應的處理邏輯;第三小節介紹處理邏輯,如何設計一個公共的 controller,物件繼承之後處理函式中如何處理 response 和 request;第四小節介紹框架的一些輔助功能,例如日誌處理、配置資訊等;第五小節介紹如何基於 Web 框架實現一個部落格,包括博文的發表、修改、刪除、顯示列表等操作。

透過這麼一個完整的專案例子,我期望能夠讓讀者了解如何開發 Web 應用,如何建立自己的目錄結構,如何實現路由,如何實現 MVC 模式等各方面的開發內容。在框架盛行的今天,MVC 也不再是神話。經常聽到很多程式設計師討論哪個框架好,哪個框架不好, 其實框架只是工具,沒有好與不好,只有適合與不適合,適合自己的就是最好的,所以教會大家自己動手寫框架,那麼不同的需求都可以用自己的思路去實現。

目錄

links

上一章:

下一節:

目錄
第十二章總結
專案規劃