在第一章中,我們對 Django Ninja 做了全方位的介紹,並且分析了它與 Django REST Framework 的主要區別。
相信你對 Django Ninja 已有了一定的了解。
接下來,我們將進入第二章:專案介紹與設定。
我們將透過一個 CRUD API 範例專案,幫助你在實踐中運用 Django Ninja 的概念。
本章將對專案概念進行介紹,包括模型設計與現實世界中的對應。(卷 4)
接著介紹專案使用的 Python 開發工具(卷 5)。最後會手把手帶你,安裝專案到本機並確保它正常運行(卷 6)。
其餘有關 API 的程式碼,將在第三章陸續介紹與實作。
為了讓你更好地理解 Django Ninja 並能夠進行實際操作,我們設計了一個範例專案——忍者論壇。
這是一個討論區,讓開發者交流 Django Ninja 使用心得(而不是如何成為忍者)。
這是專案的 GitHub 網址,你可以把它加到書籤,隨時參閱程式碼,加深學習印象。
這個專案將引導你如何使用 Django Ninja 來構建 API,展示其中的知識與實踐。
專案的主題是「忍者論壇」,它是一個基本的討論區系統,具備使用者發表文章和留言評論的核心功能。
這個設計既簡單又實用,讓你能專注於 Django Ninja 核心,而不會被過多的額外功能分散注意力。
論壇的兩大基本功能,也是我們實現 API 的重點所在:
透過這個專案,你將學會如何使用 Django Ninja 快速建立相關的 API。
我們會以「發文」為中心,逐步實現不同的 API。
作為一個「範例」專案,忍者論壇的設計目的,是為了讓你透過實際的操作,深入了解 Django Ninja 的基本概念與應用。
因此,我們會將專案內容嚴格控制在教學所需的範圍內,以確保學習上的專注,而不會被過多的細節所干擾。
簡言之,專案遵循以下三個設計原則。
所謂「最小化設計」,即盡可能確保所有實作都是教學所必須的。
我們甚至會重複使用同一個 API 作為範例,演示不同階段的功能實現。
這樣的設計可以讓教學內容保持簡潔,同時又能逐步深入 Django Ninja 的各種特性。
範例專案的程式碼結構應該是簡單明瞭的,讓讀者能快速了解各部分的邏輯與關聯。
相比於實際工作中的專案,範例專案更注重程式碼的清晰度與一望即知,避免不必要的複雜設計或抽象層次。
這意味著:
這樣的設計能讓你快速理解每個程式碼片段的作用,並輕鬆應用到自己的專案中。
範例專案需要一個簡單易用的環境,讓學習者可以立即運行專案並測試所學內容。
工作上的專案,會涉及到很多外部依賴,但範例專案的設計則側重於讓學習者能夠快速驗證所學到的概念。
這意味著:
我們緊扣著 API 教學本身,其餘外部環節,可能需要你自行實踐與補足。
了解了範例專案的設計後,接下來我們將進入開發環境介紹。
開發專案時,合適的工具能讓工作事半功倍,下一篇將介紹常用的 Python 開發工具,比如虛擬環境管理與程式碼格式化。
這些工具不僅能幫助你高效管理專案,還能大幅提升程式碼的品質與一致性。我相信,熟練掌握這些工具,是現代開發者的基本功。
本文同步發表於我的部落格——Code and Me