KD's Tech Blog

Hi, 我是 KD Chang 張凱迪,我在這書寫我的軟體開發/程式設計技術筆記 | KD 技術部落格

JavaScript 可選鏈接運算符(Optional Chaining)介紹與入門教學 | 學習筆記


前言在 JavaScript 中,處理深層嵌套結構時,我們經常會遇到 null 或 undefined 的問題。例如,當我們需要訪問一個對象的屬性,而該屬性本身可能不存在時,傳統的做法會導致錯誤,這樣的情況會非常繁瑣。為了解決這個問題,JavaScript 引入了 可選鏈接運算符(Optional Chaining),簡化了屬性訪問過程,並防止了因為屬性為 null 或 undefined ......

React Context API 入門教學 | 學習筆記


前言React Context API 是 React 提供的一種方式,讓我們能夠在組件樹中傳遞資料,而不需要一層層地使用 props。Context API 可以解決多層嵌套組件的傳遞問題,讓我們在深層組件中輕鬆訪問到全局狀態。本文將介紹如何使用 React Context API,並提供一個簡單的範例來展示其實際應用。 什麼是 React Context APIReact Context......

React useMemo 與 useCallback 差異介紹與入門教學 | 學習筆記


前言在使用 React hooks 進行開發時,useMemo 和 useCallback 是兩個常被提及的性能優化工具。它們都屬於 記憶化(memoization) 技術,用來避免不必要的重算與重渲染。然而,很多初學者在理解這兩者的用途與差異時常感到困惑。這篇文章將從概念出發,並搭配實際範例,幫助你掌握 useMemo 與 useCallback 的核心用途與實作方式。 一、共通點:記憶......

JavaScript 模組系統:CommonJS 與 AMD 入門教學 | 學習筆記


前言在 JavaScript 早期,所有程式碼通常寫在單一文件中,這樣的方式在小型專案中或許可行,但當應用程式變得更大、更複雜時,這種結構會導致管理困難。因此,模組化的概念被引入,允許開發者將程式碼拆分成可重複使用的獨立部分,提高可維護性與擴展性。 在 ES6 標準推出之前,JavaScript 主要依賴 CommonJS(CJS) 和 Asynchronous Module Defin......

JavaScript 模組(Module)入門教學筆記 | 學習筆記


1. 什麼是 JavaScript 模組?JavaScript 模組(Module)是一種將程式碼拆分成多個獨立文件,並在不同文件間共享和管理程式碼的方式。透過模組化的設計,可以讓程式碼更具結構性、可讀性與可維護性。 在 ES6(ECMAScript 2015)之前,JavaScript 主要透過 IIFE(立即執行函式)、CommonJS 或 AMD 來模組化程式碼。而 ES6 之後,Ja......

Node.js Express.js 入門教學筆記 | 學習筆記


1. 簡介Express.js 是一個基於 Node.js 的 Web 應用框架,提供簡潔且靈活的 API,適用於建立伺服器端應用程式。它可以用來開發 RESTful API、Web 應用或後端服務。 為什麼選擇 Express.js? 輕量且易於學習 擴展性高 內建強大的中介軟體(Middleware)系統 支援各種範本引擎(例如:EJS, Pug) 2. 安裝與專案初始化安裝 Node......

Cookie 入門教學筆記 | 學習筆記


前言Cookie 是一種儲存在使用者瀏覽器上的小型文字檔案,用於保存使用者的狀態或資訊。常見用途包含: 紀錄登入狀態:讓使用者在網站上保持登入,不需每次重新輸入帳號。使用者偏好設定:保存使用者選擇的語言、主題等個人化設定。追蹤使用者行為:例如分析網站流量、廣告投放追蹤等。 重點摘要Cookie 依據不同的分類方式,可以分為以下幾種常見種類: 一、依用途分類: 功能性 Cookie(Funct......

Alpine.js 入門教學筆記 | 學習筆記


1. 什麼是 Alpine.js?Alpine.js 是一個輕量級的 JavaScript 框架,專為增強 HTML 標記而設計。它的語法靈感來自 Vue.js,但更加簡潔,適用於需要簡單互動的網頁。 它的主要特點包括: 使用 HTML 屬性直接定義行為 不需要額外的構建工具 易於學習和使用 與其他框架(如 Vue、React)兼容 2. 安裝與引入使用 Alpine.js 最簡單的方法......

HTTP/2 介紹與入門教學筆記 | 學習筆記


1. HTTP/2 簡介HTTP/2 是 HTTP/1.1 的後繼版本,由 IETF HTTP 工作小組開發,並於 2015 年 5 月成為正式標準(RFC 7540)。HTTP/2 的主要目標是提高 Web 的性能,減少延遲,並優化資源的傳輸方式。 2. HTTP/2 的核心特性2.1 二進制分幀層(Binary Framing Layer......

Django 入門教學筆記 | 學習筆記


前言Django 是一個由 Python 編寫的高階 Web 框架,強調快速開發與簡潔設計。它提供完整的功能模組如 ORM、Admin 介面、Form 處理、URL 路由與認證系統,讓開發者能專注於商業邏輯而非重複造輪子。本文將帶你一步一步建立一個基本的 Django 應用程式,並說明其核心概念。 一、環境安裝首先,請確保你已安裝好 Python(建議 3.8+)與 pip。以下是建立虛擬環......