Code and Me
Subscribe
Archives
BBC 6 Minute English:提升英文聽力的好夥伴
January 4, 2025
原文連結 眾所周知,學英文不僅是軟體工程師的常見需求,更是許多台灣人的長期課題。 我自然也不例外。 為了彌補自己在英文聽力和閱讀之間的落差,我最近開始重新練習英文聽力。而我使用的素材,如標題所言,正是 BBC 6 Minute English 節目——外加 AI。 為什麼開始練習聽力?...
我的 LeetCode 筆記:記錄刷題的簡單做法
December 24, 2024
原文連結 系列的前兩篇中,我們首先介紹了準備工作、學習資源和基本的刷題原則,這些內容特別適合初學者或希望減少刷題壓力的讀者。畢竟我也不喜歡刷題😂 接著,在第二篇裡,我們討論了如何使用 AI 工具(我設計的 GPTs)來提高刷題效率(或說提高「意願」),以及使用 AI 輔助刷題時的一些重點與注意事項。...
《給網站工程師的網路課》心得:Web 開發者的網路學習指南
December 21, 2024
原文連結 上星期日,我參加了小賴的《給網站工程師的網路課》,獲益良多,有必要寫一篇文章分享。 但本文並不是上課筆記,而是想談談我作為一個轉職軟體工程師,學習網路知識的不同階段歷程,以及這堂課如何彌補了過去的不足。 如果你對這堂課感興趣,但不知道自己適不適合,推薦參考下面兩篇文章:...
【文章電子報「誤刊」與道歉啟示】
December 13, 2024
今天下午 4 點多,大家應該收到了一封沒有標題的電子報,來自於網站新文章的 RSS Feed 內容。 由於我誤把 LeetCode 刷題筆記的內容放到 blog 的倉庫中,而下午 3 點是我同步「文章排行」的時間,會自動進行一次網站更新,就一併將此錯誤內容刊出。然後就被電子報服務偵測到並轉成 email。...
訂戶限定 10:去睡眠中心睡一晚 ×「數位斷捨離」真的好難
December 12, 2024
成為強者的最後一塊拼圖?
GPTs 介紹:AI 刷題助手與使用方式
December 1, 2024
原文連結 本來只打算寫兩篇,現在變成 4 篇了,大綱可參考「 系列概述與導讀 」。 上一篇,我們介紹了 LeetCode 刷題的準備與基本原則,本篇則要介紹我刷題時搭配的 AI 工具——自定義的 GPTs 。 不過有一點需要提醒:你得先訂閱 ChatGPT Plus ,才能直接使用他人建立的 GPTs。...
訂戶限定 09:古古的新書 × M4 Mac mini × ALPHA Camp 謝幕
November 21, 2024
大轉職時代的落幕?
去了兩個月健身房之後——我的「有氧運動」進化史
November 14, 2024
原文連結 by Sam Chivers 兩個多月前,我發表了〈 37,加入健身房,專注 Zone 2 〉,宣誓著我投入有氧運動的決心! 75 天過去,我仍持續嗎?還是已經半途而廢? 本文就來整理一下,這兩個月多的變化,以及我獲得的體驗與感悟。 以減脂為起點 8...
iThome 鐵人賽寫作攻略——新手必看指南
November 13, 2024
原文連結 除了「加碼」組別, 2024 iThome 鐵人賽 已圓滿落幕,而我也順利完賽。 在讀完〈 iThome 鐵人賽 - 得《優選》獎項的寫作心法 〉和〈 【Day 31】- 忙碌上班族如何在鐵人賽中堅持30天寫作?從靈感到策略:9個關鍵步驟 〉這兩篇大作後,我不禁見獵心喜、心癢難耐🤩...
39,10 月回顧——鐵人賽、演算法與 AI
November 1, 2024
原文連結 好段日子沒寫 Weekly Review 了! 十月剛過,正是一個不錯的時間點。 本篇就來整理一下「 待業的第 2 個月 」我都做了什麼。 iThome 鐵人賽 雙十連假 4 天我幾乎都在寫作,連假落幕時,也正是我的參賽系列劃下句點之時。 不過,正如〈 Django Ninja 30:系列回顧與完賽心得...
與 AI 共舞:我的 LeetCode 刷題之道(上)準備篇
October 24, 2024
原文連結  最近,我剛結束了 iThome 鐵人賽的寫作之旅——真是不輕鬆,但值得! 相關文章: Django Ninja 30:系列回顧與完賽心得 隨著比賽結束,我開始進入 求職準備 的第二階段——學習演算法(主要是...
訂戶限定 08:福隆 - 宜蘭一日遊 × 和獵頭們聊聊 × 轉職別學 Python
October 20, 2024
本週雜記與面試準備計畫
訂戶限定 07:鐵人賽尾聲 × 續論 AI 工具 × 我的滑鼠停產了!
October 13, 2024
沒放到國慶連假的我,補假中
Django Ninja 教學 30:系列回顧與完賽心得
October 12, 2024
原文連結 2024 iThome 鐵人賽 系列最終章,我們的「 Django Ninja 探險 」將暫時告一段落。 這當然不是結束,畢竟 Django Ninja 還只是一個 相對新的專案 ——我對它的未來充滿期待。 本文將分為兩個部分: 回顧整個系列,檢視我們在各章中學到的概念與技術——盡可能只提重點。...
Django Ninja 教學 29:單元測試——使用 Test Client 與 pytest 測試 API
October 11, 2024
原文連結 2024 iThome 鐵人賽 「你們的專案有單元測試嗎?」 面試中如果你提出這個問題,可能會讓面試官面有難色。 測試的重要性,大部分開發者都心知肚明。只是願意認真對待的人未必很多。 但如果真心想提高程式碼品質、減少 bug,讓專案更容易維護,那單元測試依舊是 不可或缺 的工具。...
Django Ninja 教學 28:身分認證——Session 認證與全域設定
October 10, 2024
原文連結 2024 iThome 鐵人賽 歡迎來到第七章!本章總共有兩篇內容: 卷 28:身分認證——Session 認證與全域設定 卷 29:單元測試——使用 Test Client 與 pytest 測試 API 這些主題的核心功能, 並非由 Django Ninja 實作 ,但框架仍提供了 一定程度的整合...
Django Ninja 教學 27:資料查詢與過濾(下)FilterSchema 多欄位查詢
October 9, 2024
原文連結 2024 iThome 鐵人賽 上篇中,我們學習了 Django ORM 的 Q 物件和 Django Ninja 的 FilterSchema,但後者感覺只學了一半。 討論比較多的是,view 函式中使用 FilterSchema 的 參數定義方式 ——這確實很重要,但這只是 FilterSchema...
Django Ninja 教學 26:資料查詢與過濾(上)FilterSchema 介紹
October 8, 2024
原文連結 2024 iThome 鐵人賽 「 查詢 」是 API 中常見的附加需求,本質上是 對資料的過濾(filtering)與篩選 。 無論是篩選文章、商品,還是查詢用戶, 根據不同條件來過濾資料並獲得結果 ,可說是大部分專案的必備功能。 在 view 函式中,實作查詢 最簡單 的方式,就是使用 Django...
Django Ninja 教學 25:分頁(下)自定義分頁類別
October 7, 2024
原文連結 2024 iThome 鐵人賽 上一篇我們介紹了 Django Ninja 的內建分頁器,並用它實作了簡單的分頁功能。 雖然內建的 PageNumberPagination 確實方便,但在很多時候,我們仍需要一些 客製化 功能。 為了實現這個目的,你需要 自定義一個分頁類別 。 不過別擔心,這種自定義,...
訂戶限定 06:待業週記(二)失眠症與 AI 輔助思考
October 6, 2024
今晚,你想來點什麼 AI?
Django Ninja 教學 24:分頁(上)Django Ninja 的內建分頁器
October 6, 2024
原文連結 2024 iThome 鐵人賽 分頁( pagination )功能,就算在資料量較少的小型專案,也具有相當的重要性。 沒分頁,API 照樣能運作——只是效能會受到影響,特別是在資料量大的情況下。 當 API 一次回傳大量資料時,不僅會增加伺服器負擔,還可能導致客戶端處理緩慢,甚至出現 超時 或...
Django Ninja 教學 23:檔案上傳
October 5, 2024
原文連結 2024 iThome 鐵人賽 在現代 Web 服務中, 檔案上傳 是一個常見的情境。 無論是使用者上傳照片、夾帶附件,檔案上傳都是不可或缺的功能。 本文介紹如何在 Django Ninja 中實現 圖片上傳 功能,以使用者「上傳大頭貼」(以下都稱為 avatar,因為大頭貼感覺太可愛🥹)API...
Django Ninja 教學 22:錯誤處理(下)全域錯誤處理——使用 Exception Handlers
October 4, 2024
原文連結 2024 iThome 鐵人賽 上一篇文章,我們學習了如何操作 HttpError ,並建議你 只在 view 函式中使用它。 但光是這樣,專案 API 的錯誤處理,還遠遠 不夠完善 ,至少有 3 個常見問題待解: Schema 中的驗證方法 ,如果不要 raise HttpError...
Django Ninja 教學 21:錯誤處理(上)自定義錯誤與 HTTP 回應
October 3, 2024
原文連結 2024 iThome 鐵人賽 在軟體開發中, 錯誤處理 是一個不容忽視——但 常常被忽視 ——的環節。 不誇張地說,錯誤處理是一個「 做得好沒人誇,做不好系統就慘兮兮 」的議題。 沒關係,我們還是 盡可能把自己做好 。 Django Ninja 使用 Pydantic...
Django Ninja 教學 20:資料驗證(下)跨欄位驗證
October 2, 2024
原文連結 2024 iThome 鐵人賽 上一篇我們講完了單一欄位的自定義驗證,這篇則要來討論 跨欄位 之間的驗證。 跨欄位驗證同樣是 API 開發中十分常見的需求,例如註冊帳號時,要保證「密碼」與「確認密碼」兩個欄位內容相同;選擇 日期期間 時,開始日期不能晚於結束日期等。 這些驗證場景 無法...
Django Ninja 教學 19:資料驗證(上)單一欄位的自定義驗證
October 1, 2024
原文連結 2024 iThome 鐵人賽 資料驗證 是 API 開發中的關鍵需求之一,它負責確保從客戶端提交的資料是 符合預期 的,從而避免潛在的錯誤和安全問題。 有效的資料驗證可以在 API 接收到錯誤資料時,給出 即時且友善 的回應,提升系統的穩定性和 使用者體驗 。 Django Ninja...
Django Ninja 教學 18:API 文件(下)用 Pydantic Field 設定範例與預設值
September 30, 2024
原文連結 2024 iThome 鐵人賽 上一篇文章中,我們探討了 Django Ninja 影響 API 文件 呈現 的一些重要設定。它們是 自動化 API 文件 的基本功,不容忽視。 但這樣 還不夠 !我們想要讓這份文件更加 生動 ,讀起來清晰易懂。 其中的關鍵在於 API 文件上的 資料範例...
訂戶限定 05:本月回顧——我的極限是一週 25 小時
September 30, 2024
回顧 2024 年 9 月份重要事記
Django Ninja 教學 17:API 文件(上)Django Ninja 實踐重點
September 29, 2024
原文連結 2024 iThome 鐵人賽 「 依程式碼自動產生 API 文件 」是 Django Ninja 的一大賣點。 事實上, API 文件的自動化 ,正是我在工作上的專案從 Django REST framework 轉向 Django Ninja 的 首要考量 ——也是我開始學習 Django...
Django Ninja 教學 16:回應(四)Resolver 方法——欄位資料格式化
September 28, 2024
原文連結 2024 iThome 鐵人賽 上一篇提到,API 回應常常是對 Django Model 物件內容的篩選與加工——然後 JSON 序列化。 其中「 加工 」部分,用更專業的說法,大概是「 資料格式化 」——依照一定的規則,對輸出資料進行 某種轉換或重新組織 ,以符合 特定的輸出格式 。...
Django Ninja 教學 15:回應(三)為何不用 ModelSchema?——相比 DRF,我更偏愛 Django Ninja 的理由
September 27, 2024
原文連結 2024 iThome 鐵人賽 Django API 回應,常常是對 Model 物件(即 db 資料)內容進行一定的篩選與加工。 比如「取得單一文章資訊」API,實際上就是從 Post 物件挑選欄位,再進行序列化。 這個過程中,我們需要考慮如何將 模型物件 轉換為 API...
Django Ninja 教學 14:回應(二)巢狀結構回應
September 26, 2024
原文連結 2024 iThome 鐵人賽 在 API 開發中,我們經常會遇到 關聯模型 之間的資料需要 同時返回 的情況。 特別是在處理「一對一」或「一對多」關聯時, 多層結構 往往是常態。 我們希望以 巢狀結構 ( Nested Objects )的方式返回資料,這樣可以讓 API 的使用者 一次取得必要資訊...
Django Ninja 教學 13:回應(一)Django Ninja 處理回應概論
September 25, 2024
原文連結 2024 iThome 鐵人賽 這一篇要正式進入「 HTTP 回應 」環節,也就是第三小節。 本節將透過 4 篇文章,介紹 Django Ninja 如何處理 HTTP 回應 : 卷 13:回應(一)Django Ninja 處理回應概論 卷 14:回應(二)Nested Response 卷...
Django Ninja 教學 12:請求(四)Request Body 與 Schema 介紹
September 24, 2024
原文連結 2024 iThome 鐵人賽 經過前幾篇的介紹,我們已經學習了如何處理路徑與查詢參數。但在現實世界中,我們往往還需要處理 更複雜的請求資料 。 比如用戶提交的表單、上傳的檔案等等。對於 API 而言,最常見的就是 JSON 格式的 request body 。 這一篇將探討 Django Ninja...
Django Ninja 教學 11:請求(三)查詢參數(Query Parameters)
September 23, 2024
原文連結 2024 iThome 鐵人賽 上一篇我們討論了,請求 URL 中關於 路徑參數 的處理方式。 本文將介紹 查詢參數(query parameters) ,這是 RESTful API 中用來傳遞 過濾條件 等 額外資訊 的重要部分。 處理查詢參數在 Django Ninja...
訂戶限定 04:待業週記(一)Cake 職涯博覽會
September 22, 2024
平凡的日子與充實的生活,還有寫作地獄
Django Ninja 教學 10:請求(二)路徑參數(Path Parameters)
September 22, 2024
原文連結 2024 iThome 鐵人賽 上一篇文章中,我們介紹了 Django Ninja 如何處理 HTTP 請求,並強調了它與 Python type hints 之間的緊密結合。 本篇將探討 Django Ninja 中, 路徑參數( path parameters ) 的應用與細節,這在處理 HTTP...
Django Ninja 教學 09:Django Ninja 處理請求概論(兼論 FBVs)
September 21, 2024
原文連結 2024 iThome 鐵人賽 歡迎來到第三章第二節! 作為 API 的核心邏輯實現, view 函式 無疑是 Django Ninja API 的靈魂所在。 Django Ninja 和 FastAPI、Flask 一樣,都是以 Function-Based Views( 以下簡稱 FBVs...
Django Ninja 教學 08:路由(下)Django Ninja 路由
September 20, 2024
原文連結 2024 iThome 鐵人賽 上一篇文章中,我們介紹了 Django 傳統的路由設定方式。 如前所述,雖然有一個「路由清單」確實不錯。但隨著專案規模的擴大, 不斷來回切換 urls.py 和 views.py 將大幅增加開發者的認知負擔——不僅增加開發時間,還容易導致錯誤。 Django Ninja...
Django Ninja 教學 07:路由(上)傳統 Django 路由做法(兼章節概論)
September 19, 2024
原文連結 2024 iThome 鐵人賽 第三章是全系列的重頭戲,因為我們要介紹 Django Ninja 的 核心部分——API 。 我把本章分成了三個小節: 第一節:路由。 第二節:請求。 第三節:回應。 第三章也是 唯一 有區分小節的篇章。 現在我們進入第一節—— 路由 。讓我們先了解一下本節的學習重點。...
Django Ninja 教學 06:環境設定 × 如何使用本專案
September 18, 2024
原文連結 2024 iThome 鐵人賽 前一篇我們了解了整個專案所使用的 Python 開發工具。 本文將帶領你一步步完成,有關範例專案的環境設定: 從安裝 Python、Poetry、clone 專案至本地、建立 Python 虛擬環境,到成功啟動 Django 。...
Django Ninja 教學 05:Python 現代開發工具介紹
September 17, 2024
原文連結 2024 iThome 鐵人賽 在現代軟體開發中,工具不僅能 提高開發效率 ,還能 改善程式碼品質 ,讓專案的管理與維護變得更加輕鬆。 本文將介紹幾個重要的 Python 開發工具,討論它們在專案中的應用,讓讀者 快速了解它們的定位與價值 。...
Django Ninja 教學 04:範例專案介紹
September 16, 2024
原文連結 2024 iThome 鐵人賽 在第一章中,我們對 Django Ninja 做了全方位的介紹,並且分析了它與 Django REST Framework 的主要區別。 相信你對 Django Ninja 已有了一定的了解。 接下來,我們將進入第二章: 專案介紹與設定 。 本章重點 我們將透過一個...
Django Ninja 教學 03:Django Ninja 介紹——與 Django REST Framework 主要區別
September 15, 2024
原文連結 2024 iThome 鐵人賽 選擇任何工具之前,我們通常會先了解 它能解決的問題 ,以及 是否符合與自己的需求 。 本文將介紹 Django Ninja 這個現代化的 API 框架,探討它的起源和主要特點,並重點比較它與 Django REST Framework...
訂戶限定 03:推薦作家劉揚銘的「離職三部曲」
September 14, 2024
分享我非常喜歡的作家——劉揚銘
Django Ninja 教學 02:架構 × 章節導覽
September 14, 2024
原文連結 2024 iThome 鐵人賽 上一篇中,我們講述了系列的整體方向。現在,我將進一步深入,為你詳細介紹 系列的架構與各個章節安排。 可以說,本文就是整個系列的 藍圖。 一般而言,架構介紹通常會直接放在第一篇的後半段(如果有的話),但我決定 獨立成一篇。 原因無他,...
Django Ninja 教學 01:系列導讀 × 目標讀者
September 13, 2024
原文連結 2024 iThome 鐵人賽 在這個 30 天的系列文章中,我們將詳細探討 Django Ninja 的 基礎實作 ,透過 文字教學 與 範例專案 的程式碼,帶你一步一步熟悉這個強大而靈活的 Django API 開發框架。 作為 Django 生態系統中的新星(誕生於 2020 年),Django...
2024 iThome 鐵人賽參賽思路:主題選擇、命名與標題策略
September 12, 2024
原文連結 by Sam Chivers 明天——13 號星期五——就是我參加今年 iThome 鐵人賽的正式開賽日。 開賽前夕,我想用本文介紹一下我的參賽主題與相關花絮。 不會提及太多技術,主要以一些個人思考及感受為主。 不過在開始前,歡迎在鐵人賽網站上 訂閱 我的「 Django 忍法帖——Django...
38,Kyo 待業中!細數我過去的待業時光(上)
September 9, 2024
原文連結 如標題所言,我又又待業了! 上一份工作做到 8 月 31 日止,從本月開始,我的職涯再度進入「無業遊民」階段。 這也是為什麼 9 月起我有更多時間準備鐵人賽XD 我在〈 Day 4:4 年 8 個月 〉中曾說到: 4 年 8 個月,這是我在大學畢業、當兵退伍後,作為「無業遊民」的總時長!...
訂戶限定 02:鐵人賽準備近況與一些感想
September 8, 2024
這期內容探討了我全心準備鐵人賽的過程和寫作挑戰。
Newer archives
Older archives
GitHub
Threads
X
Facebook