Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Crystal Programming

You're reading from   Crystal Programming A project-based introduction to building efficient, safe, and readable web and CLI applications

Arrow left icon
Product type Paperback
Published in May 2022
Publisher Packt
ISBN-13 9781801818674
Length 356 pages
Edition 1st Edition
Languages
Arrow right icon
Authors (2):
Arrow left icon
George Dietrich George Dietrich
Author Profile Icon George Dietrich
George Dietrich
Guilherme Bernal Guilherme Bernal
Author Profile Icon Guilherme Bernal
Guilherme Bernal
Arrow right icon
View More author details
Toc

Table of Contents (26) Chapters Close

Preface 1. Part 1: Getting Started
2. Chapter 1: An Introduction to Crystal FREE CHAPTER 3. Chapter 2: Basic Semantics and Features of Crystal 4. Chapter 3: Object-Oriented Programming 5. Part 2: Learning by Doing – CLI
6. Chapter 4: Exploring Crystal via Writing a Command-Line Interface 7. Chapter 5: Input/Output Operations 8. Chapter 6: Concurrency 9. Chapter 7: C Interoperability 10. Part 3: Learn by Doing – Web Application
11. Chapter 8: Using External Libraries 12. Chapter 9: Creating a Web Application with Athena 13. Part 4: Metaprogramming
14. Chapter 10: Working with Macros 15. Chapter 11: Introducing Annotations 16. Chapter 12: Leveraging Compile-Time Type Introspection 17. Chapter 13: Advanced Macro Usages 18. Part 5: Supporting Tools
19. Chapter 14: Testing 20. Chapter 15: Documenting Code 21. Chapter 16: Deploying Code 22. Chapter 17: Automation 23. Other Books You May Enjoy Appendix A: Tooling Setup 1. Appendix B: The Future of Crystal

What this book covers

Chapter 1, An Introduction to Crystal, provides a brief introduction to Crystal, including its history, key concepts, and goals. This chapter will also include information about setting up Crystal as well as information on the conventions that'll be used throughout the book.

Chapter 2, Basics Semantics and Features of Crystal, introduces you to writing Crystal code, starting from the very basics and advancing to the most common techniques. It also explores common types and operations from the standard library.

Chapter 3, Object-Oriented Programming, goes deeper into using the object-oriented features of the language by teaching you about creating new types with custom functionality, the basic tool of every non-trivial program.

Chapter 4, Exploring Crystal via Writing a Command-Line Interface, explores setting up a CLI project and walking through the initial implementation.

Chapter 5, Input/Output Operations, builds on the previous chapter by introducing I/O operations as a means of handling input and output instead of hard-coded strings.

Chapter 6, Concurrency, starts off by going over Crystal's concurrency features and later uses what was learned earlier to make the CLI program concurrent.

Chapter 7, C Interoperability, demonstrates how C libraries can be leveraged within a Crystal program by binding libnotify to make the CLI program notification aware.

Chapter 8, Using External Libraries, introduces the shards command and how to find it.

Chapter 9, Creating a Web Application with Athena, walks through creating a simple blog web application using Athena Framework, making use of many of its features.

Chapter 10, Working with Macros, provides an introduction to the world of metaprogramming by exploring Crystal macros.

Chapter 11, Introducing Annotations, talks about how to define, include data within, and read annotations.

Chapter 12, Leveraging Compile-Time Type Introspection, demonstrates how to iterate instance variables, types, and methods at compile time.

Chapter 13, Advanced Macro Usages, shows off some of the powerful things that can be created using macros and annotations, along with a little bit of creativity.

Chapter 14, Testing, introduces the Spec module and walks you through unit and integration testing in the context of CLI and web applications.

Chapter 15, Documenting Code, shows off how best to document, generate, host, and version Crystal code documentation.

Chapter 16, Deploying Code, talks about how to release new versions of a shard as well as how best to build and distribute the production version of an application.

Chapter 17, Automation, provides example workflows and commentary on enabling continuous integration for Crystal projects.

Appendix A, Tooling Setup, provides a hands-on explanation of how to set up Visual Studio Code for Crystal programming using the official plugin.

Appendix B, The Future of Crystal, gives a short overview of the work currently being done behind the scenes for the future of the language and shows you how to participate and contribute.

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image