目錄表

勞動部勞發署 產業人才投資方案 ~ 委辦職訓課程規劃草案

Python Django 基礎之資料庫、物件導向、互動式網站設計先修班

Python Django 基礎之 SQL 資料庫、JavaScript 動態網站、物件導向設計 先修班



課程大綱

🔸總時數: 36 小時 (6 天,每天 6 小時) 最終版

  • Day 1:Python 物件導向、進階特性、與非同步程式設計
    • 物件導向 OOP 核心概念與實作
      • 類別 Class 與物件 Object 的概念與實作體驗
      • 屬性、方法與特殊建構式 (init, str, repr)
      • 封裝 Encapsulation、繼承 Inheritance 與多型 Polymorphism 在實務上的應用
      • super() 函數與多重繼承概論
      • Python Module and Package 模組和套件
    • 函數進階與 Decorator 裝飾器
      • 一級函數 First-Class Functions 與閉包 Closures 的概念
      • Python Decorator:原理解析與自訂裝飾器實作
      • 帶參數的裝飾器與 functools.wraps 的應用
      • 裝飾器在 Web 框架中的常見情境(如:權限驗證、路由註冊預熱)
    • Python 非同步程式設計 Asynchronous Programming
      • 同步 Synchronous 與非同步 Asynchronous 的效能差異與應用場景
      • 深入理解 asyncio 模組與 Event Loop 事件迴圈
      • async 與 await 語法實戰:建立非同步任務與並行處理
      • 非同步設計在現代 I/O 密集型 Web 應用中的重要性
  • Day 2:關聯式資料庫基礎、進階 SQL 操作、與 Python SQL Client
    • 關聯式資料庫與 ERD 實體關聯設計
      • 關聯式資料庫 MariaDB 概念、與各款 DB Client 操作管理工具
      • 資料庫正規化 Normalization 原則
      • 實體關係圖 ERD / ER-Model 繪製與系統架構分析
      • SQL 基礎回顧與 DDL 資料定義語言 實作
    • 複雜資料查詢與操作 SQL DML & DQL
      • 多表關聯查詢:INNER JOIN, LEFT/RIGHT JOIN, FULL OUTER JOIN
      • 聚合函數 SUM, AVG, COUNT 與資料分組 GROUP BY, HAVING
      • 子查詢 Subqueries 與視圖 Views 的應用
    • Python SQL Client 實務
      • 使用 Python 擴充套件 mysqlclient / pymysql 連線 SQL 資料庫
      • 透過 Python 執行原生 SQL 語法 ~ 以 CRUD 操作為例
      • 資料指標 Data Cursor 的操作
      • 資料庫交易 DB Transaction 管理 ~ Commit 與 Rollback
      • 防範 SQL Injection 攻擊:參數化查詢 Parameterized Queries
  • Day 3:從 ERD 到 ORM 的典範轉移
    • Database Schema 設計與 ORM 映射思維
      • 物件關聯對映 ORM (Object-Relational Mapping) 簡介
      • 由 ERD 改為 ORM ~ 如何將「資料表 Tables」轉換為「類別 Classes」,將「紀錄 Rows」轉換為「物件 Objects」?
      • 關聯性映射設計:一對一 (1:1)、一對多 (1:N)、多對多 (N:M) 的邏輯轉換
      • ORM 的優缺點分析、與 1+N 查詢問題預警
    • Python Tortoise ORM 實作
      • 結合非同步 Asynchronous 架構的 ORM 體驗
      • 透過 Tortoise ORM 定義 Model 與 Schema
      • 使用 async/await 進行非同步的資料庫 CRUD 操作
      • 透過 Tortoise ORM 操作關聯性資料與聚合查詢
  • Day 4:現代前端版面配置與響應式設計、JavaScript 動態互動、與非同步資料獲取
    • 前端 DOM 結構與 CSS 排版核心
      • HTML5 語意化標籤與 DOM 樹狀結構解析
      • CSS3 核心:Box Model、Flexbox 彈性排版與 Grid 網格佈局
    • RWD 與 Bootstrap 應用
      • 響應式網頁設計 RWD (Responsive Web Design) 及 Media Queries 原理
      • 導入 Bootstrap 前端框架 簡介
      • Bootstrap 網格系統 Grid System 實作跨裝置自適應版面
      • 常用 Bootstrap 元件快速套用 ~ 導覽列、卡片、表單、互動式 Modal
    • JavaScript ES6+ 核心與 DOM 操控
      • 變數、箭頭函數、與解構賦值
      • 陣列的高階方法 ~ map, filter, reduce
      • JavaScript 事件監聽 Event Listeners 與 DOM 動態渲染
    • AJAX、Fetch API 與非同步請求
      • 前端的非同步思維:Callback, Promises 與 async/await
      • 實作 AJAX / Fetch API 向第三方開放資料發送 GET/POST 請求
      • 將獲取到的 JSON 資料動態渲染至 Bootstrap 卡片或表格中
  • Day 5:輕量級 Web 框架 Flask 基礎
    • Python Flask 框架簡介與路由
      • Web 框架的運作原理與 Flask 的微框架特性
      • 結合 Decorator 概念:理解 Flask 的 @app.route 路由註冊
      • Request 物件解析(GET 參數與 POST 表單資料)與 Response 物件
    • Flask 視圖與資料庫整合
      • Flask 結合 Tortoise ORM (或其他的 Python SQL Client 套件) 進行資料庫存取
      • 基礎模板渲染 (Jinja2) 概念簡介
      • 實作簡單的網頁版 CRUD 管理介面
  • Day 6:RESTful API 開發與前後端分離實戰
    • Flask RESTful API 設計與實作
      • 何謂 RESTful 架構風格?(HTTP Methods: GET, POST, PUT, DELETE 的正確語意)
      • 使用 Flask 打造 JSON 格式的 API 端點 (Endpoints)
      • API 狀態碼 (Status Codes) 管理與例外錯誤處理
      • 跨來源資源共用 (CORS) 概念與設定
    • 前後端整合演練與課程總結
      • 綜合實戰:前端使用 Bootstrap + JavaScript Fetch API,非同步呼叫後端自己開發的 Flask RESTful API,並透過 Tortoise ORM 存取資料庫。
      • 檢視實作成果:完成一個具備完整 CRUD 功能的單頁式/微型前後端分離應用。
      • 課程總結與展望:Django 實務班預告(從輕量級 Flask 邁向企業級 Django 架構的心態轉換)。



訓練班別計畫表

🔸 課程目標

 ※可用於行銷文宣,以求能精準吸引到目標群眾。


🔸 課程特色

 簡述課程概要:


 a. 知識:

 ※描述學員在學科理論面能獲得的知識。


 b. 技能:

 ※描述實際操作體驗能獲得的練習方式與內容。


 c. 成效:

 ※上完本課程後,學員在職涯上有什麼實際的效果與幫助。


🔸 能力專長

 ※填寫適合的關鍵字,讓學員可依照關鍵字搜尋到本課程。


🔸 學員資格


🔸 訓練費用編列說明


🔸 課程使用軟體(開發環境)


🔸 上課教室配置



課程大綱 (棄用)

🔸總時數: 36 小時 (6 天,每天 6 小時)

  • Day 1:Python 進階特性與資料庫塑模基礎
    • 上午 (AM) - 物件導向 (OOP) 核心與裝飾器 (Decorator)
      • 類別、物件、屬性與方法,以及繼承與多型在實務上的應用
      • super() 函數與多重繼承概論(為 Django 視圖繼承打底)
      • 一級函數與閉包 (Closures) 概念
      • Python Decorator (裝飾器):原理解析、自訂裝飾器實作,及其在 Web 框架中的應用情境。
    • 下午 (PM) - 非同步設計與 ERD 實體關聯設計
      • Python 非同步程式開發:asyncio 模組、Event Loop 與 async/await 語法實戰。
      • 關聯式資料庫 (MariaDB) 與資料庫正規化 (Normalization) 原則。
      • 針對 Database Schema 的應用設計:實體關係圖 (ERD / ER-Model) 繪製與系統架構分析。
  • Day 2:SQL 實戰與 ORM 典範轉移
    • 上午 (AM) - 進階 SQL 與 Python SQL Client
      • 多表關聯查詢 (JOIN) 與聚合函數 (GROUP BY)。
      • Python SQL Client 實務:使用第三方套件連線資料庫執行原生 SQL (CRUD 操作)。
      • 游標 (Cursor)、交易 (Transaction) 管理與防範 SQL Injection 攻擊。
    • 下午 (PM) - 從 ERD 到 ORM 的轉換思維
      • 什麼是物件關聯對映 (ORM)?
      • 由 ERD 改為 ORM:如何將「資料表」轉換為「類別」,將「紀錄」轉換為「物件」。
      • 關聯性映射設計:一對一 (1:1)、一對多 (1:N)、多對多 (N:M) 的邏輯轉換與 N+1 查詢問題預警。
  • Day 3:非同步 ORM 與現代前端佈局
    • 上午 (AM) - Python Tortoise ORM 實戰
      • 結合 async/await 的現代化非同步 ORM 體驗。
      • 透過 Tortoise ORM 定義 Model 與 Schema。
      • 實作非同步的資料庫 CRUD 操作與關聯性資料查詢。
    • 下午 (PM) - 前端骨架與 RWD 響應式設計
      • HTML5 語意化標籤、DOM 樹狀結構與 CSS3 排版核心 (Flexbox)。
      • RWD 與 Bootstrap 5 應用:Media Queries 原理與導入 Bootstrap 框架。
      • Bootstrap 網格系統 (Grid System) 實作跨裝置自適應版面,與常用元件快速套用。
  • Day 4:JavaScript 動態互動與非同步請求
    • 上午 (AM) - JavaScript ES6+ 核心與 DOM 操控
      • JS 變數宣告、箭頭函數、解構賦值與陣列高階方法。
      • JavaScript 事件監聽 (Event Listeners) 與 DOM 動態渲染。
    • 下午 (PM) - AJAX 與 Fetch API 應用實戰
      • 前端的非同步思維:Callback, Promises 與 async/await。
      • AJAX 與 Fetch API:JSON 資料格式解析。
      • 實作 Fetch API 向第三方開放資料發送請求,並將獲取到的 JSON 資料動態渲染至 Bootstrap 介面中。
  • Day 5:輕量 Web 框架 Flask 與資料庫整合
    • 上午 (AM) - Python Flask 框架簡介與路由
      • Web 框架運作原理與 Flask 的微框架特性。
      • 結合 Day 1 的 Decorator 概念:理解 Flask 的 @app.route 路由註冊。
      • Request 物件解析(GET 參數與 POST 表單資料)與 Response 物件。
    • 下午 (PM) - Flask 結合 Tortoise ORM
      • 建立 Flask 應用程式並妥善配置資料庫連線。
      • 透過 Tortoise ORM 在 Flask 視圖函數中進行資料的存取與運算。
      • 基礎的後端資料封裝與例外錯誤處理。
  • Day 6:RESTful API 開發與前後端分離總成
    • 上午 (AM) - Flask RESTful API 設計與實作
      • 何謂 RESTful 架構風格?(HTTP Methods: GET, POST, PUT, DELETE 的正確語意)。
      • 使用 Flask 打造 JSON 格式的 API 端點 (Endpoints)。
      • API 狀態碼 (Status Codes) 管理與跨來源資源共用 (CORS) 設定。
    • 下午 (PM) - 前後端分離整合演練與課程總結
      • 綜合實戰:前端使用 Bootstrap + JS Fetch API,非同步呼叫後端開發的 Flask RESTful API,並透過 Tortoise ORM 存取資料庫。
      • 檢視實作成果:完成一個具備完整 CRUD 功能的微型單頁式應用 (SPA)。
      • 課程總結:從 Flask 邁向企業級 Django 架構的心態轉換與實務班預告。


🔸總時數: 48 小時 (8 天,每天 6 小時)

  • Day 1:Python 物件導向與進階特性
    • 上午 (AM) - 物件導向 (OOP) 核心與實作
      • 類別 (Class) 與物件 (Object) 的深入探討與記憶體配置概念
      • 屬性、方法與特殊建構式 (init, str, repr)
      • 封裝、繼承與多型 (Polymorphism) 在實務上的應用
      • super() 函數與多重繼承概論(為理解 Django 複雜的視圖繼承打底)
    • 下午 (PM) - 函數進階與裝飾器 (Decorator)
      • 一級函數 (First-Class Functions) 與閉包 (Closures) 的概念
      • [新增] Python Decorator (裝飾器):原理解析與自訂裝飾器實作
      • 帶參數的裝飾器與 functools.wraps 的應用
      • 裝飾器在 Web 框架中的常見情境(如:權限驗證、路由註冊預熱)
  • Day 2:非同步程式設計與關聯式資料庫基礎
    • 上午 (AM) - Python 非同步程式開發 (Asynchronous Programming)
      • 同步 (Synchronous) 與非同步 (Asynchronous) 的效能差異與應用場景
      • 深入理解 asyncio 模組與 Event Loop (事件迴圈)
      • async 與 await 語法實戰:建立非同步任務與並行處理
      • 非同步設計在現代 I/O 密集型 Web 應用中的重要性
    • 下午 (PM) - 關聯式資料庫與 ERD 實體關聯設計
      • 關聯式資料庫 (MariaDB) 概念與圖形化工具 (DBeaver/VS Code SQL) 操作
      • 資料庫正規化 (Normalization) 原則
      • 實體關係圖 (ERD / ER-Model) 繪製與系統架構分析
      • SQL 基礎回顧與 DDL (資料定義語言) 實作
  • Day 3:進階 SQL 操作與 Python SQL Client
    • 上午 (AM) - 複雜資料查詢與操作 (SQL DML & DQL)
      • 多表關聯查詢:INNER JOIN, LEFT/RIGHT JOIN, FULL OUTER JOIN
      • 聚合函數 (SUM, AVG, COUNT) 與資料分組 (GROUP BY, HAVING)
      • 子查詢 (Subqueries) 與視圖 (Views) 應用
    • 下午 (PM) - [新增] Python SQL Client 實務
      • 使用 Python 第三方套件 (如 mariadb 或 pymysql) 連線資料庫
      • 透過 Python 執行原生 SQL 語法 (CRUD 操作)
      • 游標 (Cursor) 的操作與 Transaction (交易) 管理:Commit 與 Rollback
      • 防範 SQL Injection 攻擊:參數化查詢 (Parameterized Queries)
  • Day 4:從 ERD 到 ORM 的典範轉移
    • 上午 (AM) - [新增] Database Schema 設計與 ORM 映射思維
      • 什麼是物件關聯對映 (Object-Relational Mapping, ORM)?
      • 由 ERD 改為 ORM:如何將「資料表 (Tables)」轉換為「類別 (Classes)」,將「紀錄 (Rows)」轉換為「物件 (Instances)」
      • 關聯性映射設計:一對一 (One-to-One)、一對多 (One-to-Many)、多對多 (Many-to-Many) 的 ORM 邏輯轉換
      • ORM 的優缺點分析與 N+1 查詢問題預警
    • 下午 (PM) - [新增] Python Tortoise ORM 實戰
      • 為什麼選擇 Tortoise ORM?(結合非同步架構的現代 ORM 體驗)
      • 透過 Tortoise ORM 定義 Model 與 Schema
      • 使用 async/await 進行非同步的資料庫 CRUD 操作
      • 透過 Tortoise ORM 操作關聯性資料與聚合查詢
  • Day 5:現代前端版面配置與響應式設計
    • 上午 (AM) - 前端 DOM 結構與 CSS 排版核心
      • HTML5 語意化標籤與 DOM 樹狀結構解析
      • CSS3 核心:Box Model、Flexbox 彈性排版與 Grid 網格佈局
    • 下午 (PM) - [新增] RWD 與 Bootstrap 5 應用
      • 什麼是響應式網頁設計 (Responsive Web Design, RWD)?Media Queries 原理
      • 導入 Bootstrap 5 前端框架
      • Bootstrap 網格系統 (Grid System) 實作跨裝置自適應版面
      • 常用 Bootstrap 元件快速套用(導覽列、卡片、表單、互動式 Modal)
  • Day 6:JavaScript 動態互動與非同步資料獲取
    • 上午 (AM) - JavaScript ES6+ 核心與 DOM 操控
      • JS 變數 (let, const)、箭頭函數與解構賦值
      • 陣列的高階方法 (map, filter, reduce)
      • JavaScript 事件監聽 (Event Listeners) 與 DOM 動態渲染
    • 下午 (PM) - [新增] AJAX、Fetch API 與非同步請求
      • 前端的非同步思維:Callback, Promises 與 async/await(呼應 Day 2 的 Python 經驗)
      • 什麼是 AJAX?JSON 資料格式解析
      • 實作 Fetch API 向第三方開放資料發送 GET/POST 請求
      • 將獲取到的 JSON 資料動態渲染至 Bootstrap 卡片或表格中
  • Day 7:輕量級 Web 框架 Flask 基礎
    • 上午 (AM) - [新增] Python Flask 框架簡介與路由
      • Web 框架的運作原理與 Flask 的微框架特性
      • 結合 Day 1 的 Decorator 概念:理解 Flask 的 @app.route 路由註冊
      • Request 物件解析(GET 參數與 POST 表單資料)與 Response 物件
    • 下午 (PM) - Flask 視圖與資料庫整合
      • Flask 結合 Tortoise ORM (或 Python SQL Client) 進行資料庫存取
      • 基礎模板渲染 (Jinja2) 概念簡介(將重心保留給後續的 API 開發)
      • 實作簡單的網頁版 CRUD 管理介面
  • Day 8:RESTful API 開發與前後端分離實戰
    • 上午 (AM) - [新增] Flask RESTful API 設計與實作
      • 何謂 RESTful 架構風格?(HTTP Methods: GET, POST, PUT, DELETE 的正確語意)
      • 使用 Flask 打造 JSON 格式的 API 端點 (Endpoints)
      • API 狀態碼 (Status Codes) 管理與例外錯誤處理
      • 跨來源資源共用 (CORS) 概念與設定
    • 下午 (PM) - 前後端整合演練與課程總結
      • 綜合實戰:前端使用 Bootstrap + JS Fetch API,非同步呼叫後端自己開發的 Flask RESTful API,並透過 Tortoise ORM 存取資料庫。
      • 檢視實作成果:完成一個具備完整 CRUD 功能的單頁式/微型前後端分離應用。
      • 課程總結與展望:Django 實務班預告(從輕量級 Flask 邁向企業級 Django 架構的心態轉換)。