Clojure: High Performance JVM Programming
暫譯: Clojure:高效能JVM程式設計
Eduardo Diaz, Shantanu Kumar, Akhil Wali
- 出版商: Packt Publishing
- 出版日期: 2017-01-31
- 售價: $3,070
- 貴賓價: 9.5 折 $2,917
- 語言: 英文
- 頁數: 580
- 裝訂: Paperback
- ISBN: 1787129594
- ISBN-13: 9781787129597
-
相關分類:
JVM 語言
海外代購書籍(需單獨結帳)
商品描述
Explore the world of lightning fast Clojure apps with asynchronous channels, logic, reactive programming, and more
About This Book
- Discover Clojure's features and advantages and use them in your existing projects
- Explore lesser-known and more advanced features, constructs, and methodologies such as asynchronous channels, actors, logic programming, and reactive programming
- Measure and monitor performance, and understand optimization techniques
Who This Book Is For
If you're looking to learn more about its core libraries and delve into the Clojure language in detail, then this book is ideal for you. Prior knowledge of the Clojure language is required.
What You Will Learn
- Understand tools for the Clojure world and how they relate to Java tools and standards (such as Maven)
- Write simple multicore programs using Clojure's core concepts, such as atoms, agents, and refs
- Get to grips with Clojure's concurrency and state-management primitives in depth
- Analyze latency using the Criterium library
- Avoid reflection and boxing with type hints
- Maximize the impact of parallelization, functional composition, and process transformation by composing reducers and transducers
- Modify and add features to the Clojure language using macros
- Test your code with unit tests, specs, and type checks to write testable code
- Troubleshoot and style your Clojure code to make it more maintainable
In Detail
Clojure is a general-purpose language from the Lisp family with an emphasis on functional programming. It has some interesting concepts and features such as immutability, gradual typing, thread-safe concurrency primitives, and macro-based metaprogramming, which makes it a great choice to create modern, performant, and scalable applications.
This learning path aims at unleashing the true potential of the Clojure language so you can use it in your projects. It begins with installing and setting up the Clojure environment before moving on to explore the language in depth. You'll get acquainted with its various features such as functional programming, concurrency, reducers, transducers, core.async and core.logic, and so on with a great level of detail.
Moving on, you'll also learn how to enhance performance using Java interoperability and JVM-specific features from Clojure; you'll even master language features such as asynchronous channels, actors, logic programming, reactive programming, metaprogramming, and so on.
This learning path combines some of the best that Packt has to offer in one complete, curated package. It includes content from the following Packt products:
- Clojure for Java Developers by Eduardo Diaz
- Clojure High Performance Programming, Second Edition by Shantanu Kumar
- Mastering Clojure by Akhil Wali
Style and approach
This is an easy-to-follow, step-by-step guide to start writing Clojure programs, making use of all of its varied features and advantages.
商品描述(中文翻譯)
探索快速的 Clojure 應用程式世界,包含非同步通道、邏輯、反應式程式設計等
關於本書
- 發現 Clojure 的特性和優勢,並在現有專案中使用它們
- 探索不太為人知的進階特性、結構和方法論,例如非同步通道、演員、邏輯程式設計和反應式程式設計
- 測量和監控效能,並了解優化技術
本書適合誰
如果您希望深入了解其核心函式庫並詳細探討 Clojure 語言,那麼這本書非常適合您。需要具備 Clojure 語言的先前知識。
您將學到什麼
- 了解 Clojure 世界的工具及其與 Java 工具和標準(如 Maven)的關係
- 使用 Clojure 的核心概念(如 atoms、agents 和 refs)撰寫簡單的多核心程式
- 深入掌握 Clojure 的併發和狀態管理原語
- 使用 Criterium 函式庫分析延遲
- 使用類型提示避免反射和包裝
- 通過組合 reducers 和 transducers 最大化平行化、函式組合和過程轉換的影響
- 使用巨集修改和新增 Clojure 語言的特性
- 使用單元測試、規範和類型檢查測試您的程式碼,以撰寫可測試的程式碼
- 故障排除並美化您的 Clojure 程式碼,使其更具可維護性
詳細內容
Clojure 是一種來自 Lisp 家族的通用語言,強調函式程式設計。它具有一些有趣的概念和特性,例如不可變性、漸進式類型、線程安全的併發原語和基於巨集的元程式設計,使其成為創建現代、高效能和可擴展應用程式的絕佳選擇。
這條學習路徑旨在釋放 Clojure 語言的真正潛力,以便您可以在專案中使用它。它從安裝和設置 Clojure 環境開始,然後深入探索語言。您將熟悉其各種特性,例如函式程式設計、併發、reducers、transducers、core.async 和 core.logic 等,並深入了解。
接下來,您還將學習如何利用 Java 互操作性和 Clojure 的 JVM 特定功能來提升效能;您甚至會掌握語言特性,例如非同步通道、演員、邏輯程式設計、反應式程式設計、元程式設計等。
這條學習路徑結合了 Packt 提供的一些最佳內容,形成一個完整的策劃包。它包括以下 Packt 產品的內容:
- 《Clojure for Java Developers》 by Eduardo Diaz
- 《Clojure High Performance Programming, Second Edition》 by Shantanu Kumar
- 《Mastering Clojure》 by Akhil Wali
風格與方法
這是一本易於遵循的逐步指南,幫助您開始撰寫 Clojure 程式,充分利用其各種特性和優勢。