Contents
降低軟體的複雜性
消除物件導向設計不可避免的複雜性。通過使訪問和操作資料變得更簡單,創新的資料導向的程式設計( DOP, Data-Oriented Programming )範式讓你的系統變得不那麼複雜。
“Reach the next level of enlightenment…Reduce accidental complexity and raise the level of abstraction.” – Michael T. Nygard, author of Release It!: Design and Deploy Production-Ready Software
“If you have to deal with data in your code, you should know about DOP!” – Michael Aydinbas, Exxeta
“After I saw the examples, I couldn’t unsee it. I didn’t need a new language; I needed to approach programming differently!” – Ryan Singer, author of Shape Up: Stop Running in Circles and Ship Work that Matters
在資料導向的程式設計中,你將學習如何:
- 將代碼與資料分離
- 以通用的資料結構來表示資料
- 使用通用功能操作資料
- 在不改變資料的情況下管理狀態
- 在高度可擴展的系統中控制併發( concurrency )
- 編寫資料導向的單元測試
- 指定資料的形狀
- 受益於沒有物件的多態性
- 在沒有除錯器的情況下調試程式
Data-Oriented Programming 是一本獨一無二的指南,介紹了資料導向的範式。 這種開創性的方法表示具有通用不可變資料結構的數據。 它簡化了狀態管理,簡化了併發,並消除了在物件導向程式碼中會發現的常見問題。 本書通過對話( conversations )、程式碼片段( code snippets )和圖表( diagrams )展示了強大的新想法,幫助你快速了解 DOP 的優點。 最重要的是,該範式與語言無關——你將學習編寫可以用 JavaScript、Ruby、Python、Clojure 以及 Java 或 C# 等傳統 OO 語言實現的 DOP 程式碼。
關於技術
結合了行為和資料的程式碼,在物件導向的設計中很常見,可以為狀態管理引入幾乎無法管理的複雜性。 資料導向的程式設計 (DOP) 範式通過將應用程式資料保存在不可變的通用資料結構中,然後使用非可變通用函數執行計算來簡化狀態管理。 你的應用程式沒有與狀態相關的錯誤,且你的程式碼將更易於理解和維護。
關於本書
Data-Oriented Programming 教你使用開創性的面向數據的範式設計軟體。 你將把 DOP 付諸行動,為業務實體設計資料模型,並實現一個程式庫( library )管理系統,在沒有資料變異的情況下管理狀態。 大量的圖表、直觀的思維導圖和獨特的對話方式都可以幫助你了解這些令人興奮的新想法。 每一章都有一個閃亮的時刻,它將改變你對程式的看法。
涵蓋內容
- 將程式碼與資料分離
- 用通用資料結構表示數據
- 在不改變資料的情況下管理狀態
- 在高度可擴展的系統中控制並發
- 編寫資料導向的單元測試
- 指定你的資料的形狀
讀者要求
適用於具有 JavaScript、Java、Python、C#、Clojure 或 Ruby 等高階程式語言經驗的程式設計師。
有關作者
Yehonathan Sharvit 擁有超過 20 年的軟體工程師經驗。 他在世界各地撰寫部落格、在會議上發表演講並領導資料導向的程式研討會。

也許你會有興趣
- Soft & Share 特價優惠與學習地圖資訊
- 軟體架構相關課程與書籍
- ★英語學習地圖 – 練好英文是最大的學習槓桿
- 如何找工作學習地圖 – 找工作不要靠運氣!
- 追蹤這個 Telegram ,得到 Soft & Share 特價課程訊息
發表迴響