《3D程式設計模式》寫書-第1天記錄

楊元超發表於2023-03-31

大家好,我現在開始寫書了,書名為:《3D程式設計模式》

我會在本系列博文中記錄寫書的整個過程,感謝大家支援!

這裡是所有的的寫書記錄:
《3D程式設計模式》寫書記錄

為什麼寫書

去年我突發奇想,第一次釋出了一個3D程式設計模式:依賴隔離模式。釋出該文章後,陸續有兩個編輯與我聯絡寫書,不過我都暫時擱置了。過了大概一年後,我又突然開了“3D程式設計模式”的線上課程。為了備課,我就一口氣提煉出了幾個新的3D程式設計模式,完成了相關的程式碼和UML。然後我想幹脆出書算了,於是我就與之前聯絡我的編輯溝通了一下,很順利地就立項了,於是就開始了本書正式的寫作。

鑑於之前寫書的經驗,我刻意控制了該書的篇幅,保持精簡。反正後面可以透過再版的形式增加內容。

本書介紹

本書羅列了我從自己的實戰專案中提煉出來的關於3D程式設計(主要包括“3D引擎/遊戲引擎”、“編輯器”開發)的各種程式設計模式

我有什麼積累

我已經在Web3D領域有1萬小時的開發經驗,主要工作包括Web3D引擎開發、編輯器開發

我的代表作為:

我為4家公司提供了3D引擎和編輯器的技術顧問、諮詢的服務

更多關於我的成果請詳見:如何做知識沉澱?我有什麼知識沉澱?

同型別的書

本書跟下面幾本書類似:

相比之下,本書的特點是提出了新的程式設計模式,適用於3D引擎、遊戲引擎、編輯器開發

目前進度

我已經發布了第一個模式的樣稿:
依賴隔離模式

我已經完成了第一輪的寫作,完成了所有模式的程式碼、UML

技術棧

  • 使用Typescript和Rescript作為程式語言(以Typescript為主)
  • 使用WebGL作為3D圖形API

特色

  • 使用函數語言程式設計正規化
  • 每個模式相互獨立,使用者可以選擇性的閱讀,從而降低學習成本
  • 模式是從實際開發經驗中提煉而來,實戰性強

目標讀者

  • 3D引擎、遊戲引擎開發者
  • 編輯器開發者
  • Web3D開發者
  • 函數語言程式設計的愛好者

能給讀者帶來什麼收益?

  • 學習適用於函數語言程式設計的設計原則
  • 學習3D引擎和編輯器的程式設計模式
  • 可以直接應用案例程式碼到專案中

目錄

第一部分:再看設計原則

結合專案的實戰應用案例,回顧經典的設計原則

  • 單一職責原則(SRP)
  • 依賴倒置原則(DIP)
  • 介面隔離原則(ISP)
  • 迪米特法則(LoD)
  • 開閉原則(OCP)

第二部分:提出新的設計原則

根據自己專案經驗,提出新的適用於3D程式設計領域的設計原則

  • 資料優先原則
  • 純組合原則

第三部分:程式設計模式

根據自己專案經驗,提出新的程式設計模式

  • 依賴隔離模式
  • 積木模式
  • 管道模式
  • ECS模式
  • 多執行緒模式
  • 撤銷重做模式
  • 拼接模式

與我交流

歡迎大家加我的QQ群交流:
image

相關文章