Are you an experienced Clojure developer ready to take their skills to the next level? Then this course might be right for you! Learn to use Clojure's core function library to build up elegant programs.
Learn how to:
- Create elegant programs from the building blocks provided by Clojure's core function library.
- Utilise existing Java APIs from your Clojure programs
- Write programs that use multiple threads without the risk of dreadlocks and race-conditions
1. Prismatic Schema
- Introduction - why we recommend schemas as ’data firewalls’
- Writing and composing schemas
2. Application structure with the Stuart Sierra Component library
- Intro to the Component library - what and why
- Project skeleton
- The system
- Adding custom functions in the dev namespace
- Schema integration to protect integrity
- Dos and Don'ts – Use functions, Don’t put (too much) code in records
- Testing – Testing with component – Testing without component - testing individual functions
- Basic transducers: composing map, filter & mapcat
- Channels, sequences & eductions
- Stateful transducers
- channels and go-blocks
- »! or >! or put!
- mult / tap
- pub / sub
- using transducers
- Dos and Don’ts
5. HTTP services
- Building HTTP services with yada
- Swagger API documentation
- Asynchronous processing of inbound and outbound bodies
- Parameter coercion
- Security (authentication and authorization)
6. ClojureScript with Om Next (basics)
- Building an application in Om Next
- Integrating HTTP requests and Server-Sent Events
7. File processing
- Techniques for dealing with large files (jackson, clojure.data.xml, etc.)
Are you a developer who already has some working knowledge and experience with Clojure? Are you ready to take your skills to the next level? This course is for you!
Some working knowledge and experience working with Clojure.
Bring your own hardware
To participate in this Advanced Clojure course you are required to bring your own laptop so you can develop with your own tools and languages.