Living Clojure - Helion
ISBN: 978-14-919-0928-7
stron: 242, Format: ebook
Data wydania: 2015-04-14
Księgarnia: Helion
Cena książki: 126,65 zł (poprzednio: 147,27 zł)
Oszczędzasz: 14% (-20,62 zł)
If you’re an experienced programmer who has not worked with Clojure before, this guide is the perfect thorough but gentle introduction for you. Author Carin Meier not only provides a practical overview of this JVM language and its functional programming concepts, but also includes a complete hands-on training course to help you learn Clojure in a structured way.
The first half of the book takes you through Clojure’s unique design and lets you try your hand at two Clojure projects, including a web app. The holistic course in second half provides you with critical tools and resources, including ways to plug into the Clojure community.
- Understand the basic structure of a Clojure expression
- Learn how to shape and control code in a functional way
- Discover how Clojure handles real-world state and concurrency
- Take advantage of Java classes and learn how Clojure handles polymorphism
- Manage and use libraries in a Clojure project
- Use the core.async library for asynchronous and concurrent communication
- Explore the power of macros in Clojure programming
- Learn how to think in Clojure by following the book’s seven-week training course
Osoby które kupowały "Living Clojure", wybierały także:
- Windows Media Center. Domowe centrum rozrywki 66,67 zł, (8,00 zł -88%)
- Ruby on Rails. Ćwiczenia 18,75 zł, (3,00 zł -84%)
- Przywództwo w świecie VUCA. Jak być skutecznym liderem w niepewnym środowisku 58,64 zł, (12,90 zł -78%)
- Scrum. O zwinnym zarządzaniu projektami. Wydanie II rozszerzone 58,64 zł, (12,90 zł -78%)
- Od hierarchii do turkusu, czyli jak zarządzać w XXI wieku 58,64 zł, (12,90 zł -78%)
Spis treści
Living Clojure eBook -- spis treści
- Preface
- Who This Book Is For
- How to Use This Book
- Do Try the Examples
- Dont Feel Overwhelmed
- Dont Worry About the Parens
- One More ThingHave Fun!
- What You Need to Use This Book
- Install Java
- Getting Your Clojure REPL Ready
- Conventions Used in This Book
- Using Code Examples
- Safari Books Online
- How to Contact Us
- Acknowledgments
- I. A Guided Tour of Clojure
- 1. The Structure of Clojure
- Baby Steps with Simple Values
- Put Your Clojure Data in Collections
- Using a List Collection
- What Can We Do with Lists?
- Using Vectors for Collecting Data by Index
- What Collections Have in Common
- Maps for Storing Key-Value Pairs of Data
- Using Sets for Unique Collections of Data
- Summary of Simple Value and Collections
- Lists Are the Heart of Clojure
- Symbols and the Art of Binding
- Creating Our Own Functions
- Keep Your Symbols Organized in Namespaces
- 2. Flow and Functional Transformations
- Controlling the Flow with Logic
- Logic Tests You Can Use on Collections
- Harnessing the Power of Flow Control
- Functions Creating Functions and Other Neat Expressions
- Destructuring
- The Power of Laziness
- Recursion
- The Functional Shape of Data Transformations
- Map the Ultimate
- Reduce the Ultimate
- Other Useful Data Shaping Expressions
- Controlling the Flow with Logic
- 3. State and Concurrency
- Handling Real-World State and Concurrency
- Using Atoms for Independent Items
- Using Refs for Coordinated Changes
- Using Agents to Manage Changes on Their Own
- Handling Real-World State and Concurrency
- 4. Java Interop and Polymorphism
- Handling Interop with Java
- Practical Polymorphism
- 5. How to Use Clojure Projects and Libraries
- Getting Set Up with a Clojure Editor
- Creating Our Project with Leiningen
- Dependency Management with Leiningen
- Using Libraries in Your Own Project
- 6. Communication with core.async
- Basics of core.async Channels
- Serving Tea at a core.async Tea Party
- Creating a Tea Party to Be Run from the Command Line
- Sharing Your Tea Party with Others by Creating an Uberjar
- 7. Creating Web Applications with Clojure
- Creating a Web Server with Compojure
- Using JSON with the Cheshire Library and Ring
- Using Clojure in Your Browser with ClojureScript
- Browser-Connected REPL
- Making HTTP Calls with ClojureScript and cljs-http
- DOM Control with ClojureScript and Enfocus
- Event Handling with Enfocus
- Summary of Our Clojure and ClojureScript Web Application
- Other Useful Web Development Libraries
- Using Hiccup for Templating
- Using Enlive for Templating from Static HTML Files
- Using Liberator for Content Negotiation and Other Good Things
- Using Transit for a Small, Fast JSON Alternative
- Using Om for Powerful Client-Side Applications
- Using Hoplon and Luminus for Inclusive, Bundled Libraries for Web Development
- Dealing with Databases
- 8. The Power of Macros
- Exploring Macros
- Creating Our Own Macros
- Using Templating to Create Macros
- II. Living Clojure Training Program
- 9. Joining the Clojure Community
- Clojure Documentation
- ClojureDocs
- Grimoire
- Going to the Source
- Which Libraries to Use
- Clojars
- CrossClj
- ClojureWerkz and the Clojure Toolbox
- Clojure News
- Finding Other Clojurists
- Chat
- Conferences
- Getting Help with Problems and Questions
- Building Things with Other Clojure Enthusiasts
- Summary
- Clojure Documentation
- 10. Weekly Living Clojure Training Plan
- How Do I Use This Training Plan?
- What If I Miss a Day or Two?
- What If I Dont Understand the Exercise?
- Week 1
- Week 2
- Week 3
- Week 4
- Week 5
- Week 6
- Week 7
- Congratulations
- 11. Further Adventures
- Get Ready for Transducers
- Further Reading
- Index