Book description
Handle every problem you come across in the world of Clojure programming with this expert collection of recipes
About This Book
Discover a wide variety of practical cases and real world techniques to enhance your productivity with Clojure.
Learn to resolve the everyday issues you face with a functional mindset using Clojure
You will learn to write highly efficient, more productive, and error-free programs without the risk of deadlocks and race-conditions
Who This Book Is For
This book is for Clojure developers who have some Clojure programming experience and are well aware of their shortcomings. If you want to learn to tackle common problems, become an expert, and develop a solid skill set, then this book is for you.
What You Will Learn
Manipulate, access, filter, and transform your data with Clojure
Write efficient parallelized code through Clojure abstractions
Tackle Complex Concurrency easily with Reactive Programming
Build on Haskell abstractions to write dynamic functional tests
Write AWS Lambda functions effortlessly
Put Clojure in use into your IoT devices
Use Clojure with Slack for instant monitoring
Scaling your Clojure application using Docker
Develop real-time system interactions using MQTT and websockets
In Detail
When it comes to learning and using a new language you need an effective guide to be by your side when things get rough. For Clojure developers, these recipes have everything you need to take on everything this language offers.
This book is divided into three high impact sections. The first section gives you an introduction to live programming and best practices. We show you how to interact with your connections by manipulating, transforming, and merging collections. You’ll learn how to work with macros, protocols, multi-methods, and transducers. We’ll also teach you how to work with languages such as Java, and Scala.
The next section deals with intermediate-level content and enhances your Clojure skills, here we’ll teach you concurrency programming with Clojure for high performance. We will provide you with advanced best practices, tips on Clojure programming, and show you how to work with Clojure while developing applications.
In the final section you will learn how to test, deploy and analyze websocket behavior when your app is deployed in the cloud. Finally, we will take you through DevOps. Developing with Clojure has never been easier with these recipes by your side!
Style and approach
This book takes a recipe-based approach by diving directly into helpful programming concepts. It will give you a foolproof approach to programming and teach you how to deal with problems that may arise while working with Clojure. The book is divided into three sections giving you the freedom skip to the section of your choice depending on the problem faced.
Table of contents
-
Clojure Programming Cookbook
- Clojure Programming Cookbook
- Credits
- About the Authors
- About the Reviewer
- www.PacktPub.com
- Preface
- 1. Live Programming with Clojure
- 2. Interacting with Collections
-
3. Clojure Next
- Introduction
- Using destructuring techniques
- Using functional programming style
- Using threading macros
- Defining simple macros
- Defining more advanced macros
- Using protocols
- Defining multimethods
- Transducers for dummies
- Logic programming in Clojure
-
4. File Access and the Network
- Introduction
- Manipulating files and directories
- Manipulating various formats of files - XML, JSON, YAML, and EDN
- Making use of Clojure HTTP client
- Using queues and topics in the RabbitMQ
- Using Kafka
- Using MQTT
- Streaming access to provide high performance
- Using Apache Camel to connect everything
-
5. Working with Other Languages
- Introduction
- Calling Java methods and accessing Java objects from Clojure
- Extending Java superclasses and implementing Java interfaces
- Calling Clojure from Java
- Calling Scala from Clojure
- ClojureCLR
- ClojureScript
-
6. Concurrency and Parallelism
- Introduction
- Solving concurrent problems using Clojure
- Distributed actor-based dev with Akka
- Using Spyglass and Couchbase to share state between JVMs
- Reactive programming with meltdown
- Bridging core.async
- On Quasar/Pulsar
- 7. Advanced Tips
-
8. Web Applications
- Introduction
- Clojure with Vaadin - easy web widgets
- Quickly create a REST API with Liberator
- Working with Immutant - reusing infrastructure
- Developing with om.next, the next-generation ClojureScript library
- 9. Testing
- 10. Deployment and DevOps
Product information
- Title: Clojure Programming Cookbook
- Author(s):
- Release date: October 2016
- Publisher(s): Packt Publishing
- ISBN: 9781785885037
You might also like
book
Clojure Programming
Clojure is a practical, general-purpose language that offers expressivity rivaling other dynamic languages like Ruby and …
book
Clojure Cookbook
With more than 150 detailed recipes, this cookbook shows experienced Clojure developers how to solve a …
book
Clojure Recipes
“There’s something for everyone here. . . . You can pick up and read this book …
book
Clojure: High Performance JVM Programming
Explore the world of lightning fast Clojure apps with asynchronous channels, logic, reactive programming, and more …