Buy New
-
To see product details, add this item to your cart.
Ships from: Amazon.com Sold by: Amazon.com
Used - Very Good
-
To see product details, add this item to your cart.
Ships from: Mark Twain Library - Redding, CT Sold by: Mark Twain Library - Redding, CT
Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.
Read instantly on your browser with Kindle for Web.
Using your mobile phone camera - scan the code below and download the Kindle app.
Follow the authors
OK
Crystal Programming: A project-based introduction to building efficient, safe, and readable web and CLI applications
Purchase options and add-ons
The ultimate guide to Crystal programming covering all its fundamental concepts such as OOP and concurrent programming to help you write readable and safe code and build fast applications
Key Features
- The book uses an example-based approach for a better demonstration of the underlying concepts
- Develop a thorough appreciation of the roles of the macro API and annotations
- Leverage supportive tools – spec, documentation, deployment, and automation
Book Description
Crystal is a programming language with a concise and user-friendly syntax, along with a seamless system and a performant core, reaching C-like speed. This book will help you gain a deep understanding of the fundamental concepts of Crystal and show you how to apply them to create various types of applications.
This book comes packed with step-by-step explanations of essential concepts and practical examples. You'll learn how to use Crystal's features to create complex and organized projects relying on OOP and its most common design patterns. As you progress, you'll gain a solid understanding of both the basic and advanced features of Crystal. This will enable you to build any application, including command-line interface (CLI) programs and web applications using IOs, concurrency and C bindings, HTTP servers, and the JSON API.
By the end of this programming book, you'll be equipped with the skills you need to use Crystal programming for building and understanding any application you come across.
What you will learn
- Explore how Crystal combines the merits of other languages
- Understand how to leverage existing C libraries without writing any C
- Focus on zero-cost abstractions with compile-time macros
- Use an example-based approach to demonstrate language features
- Develop a variety of Crystal applications, such as web and CLI apps
- Gain an understanding of the macro API and annotations
Who this book is for
Developers who want to learn Crystal programming or anyone looking to improve their ability to solve real-world problems using the language will find this book helpful. Experience in application development using any other programming language is expected. However, prior knowledge of Crystal is not required.
Table of Contents
- An Introduction to Crystal
- Basics Semantics and Features of Crystal
- Object-Oriented Programming
- Exploring Crystal via Writing a Command-Line Interface
- Input/Output Operations
- Concurrency
- C Interoperability
- Using External Libraries
- Creating a Web Application with Athena
- Working with Macros
- Introducing Annotations
- Leveraging Compile-Time Type Introspection
- Advanced Macro Usages
- Testing
- Documenting Code
- Deploying Code
- Automation
- Tooling Setup
- The Future of Crystal
- ISBN-101801818673
- ISBN-13978-1801818674
- PublisherPackt Publishing
- Publication dateMay 27, 2022
- LanguageEnglish
- Dimensions7.5 x 0.81 x 9.25 inches
- Print length356 pages
Similar items that deliver to you quickly
- Hands-On Software Engineering with Python: Move beyond basic programming to design, maintain, and deploy extensible Python systemsPaperbackFREE Shipping by AmazonGet it as soon as Friday, Sep 25
- Hands-On Software Engineering with Python: Move beyond basic programming and construct reliable and efficient software with complex codePaperbackFREE Shipping by AmazonGet it as soon as Friday, Sep 25
- Hands-On Software Engineering with Golang: Move beyond basic programming to design and build reliable software with clean codePaperbackFREE Shipping by AmazonGet it as soon as Friday, Sep 25
- Rust Essentials: A quick guide to writing fast, safe, and concurrent systems and applications, 2nd EditionPaperbackFREE Shipping by AmazonGet it as soon as Friday, Sep 25
- The Ruby Workshop: Develop powerful applications by writing clean, expressive code with Ruby and Ruby on RailsPaperbackFREE Shipping by AmazonGet it as soon as Friday, Sep 25
Editorial Reviews
About the Author
George Dietrich is a software engineer, open-source aficionado, and Crystal community moderator. He holds a Master of Science degree in internet information systems and a Bachelor of Science degree in information sciences.
Guilherme Bernal is the chief technology officer at Cubos Tecnologia. He holds a bachelor's degree in TI management. Guilherme co-founded a software development company and several tech start-ups, including one that focused on teaching programming skills to a new generation of developers. He is also a two-time world finalist in the coding competition, ACM ICPC.
Product details
- Publisher : Packt Publishing
- Publication date : May 27, 2022
- Language : English
- Print length : 356 pages
- ISBN-10 : 1801818673
- ISBN-13 : 978-1801818674
- Item Weight : 1.35 pounds
- Dimensions : 7.5 x 0.81 x 9.25 inches
- Best Sellers Rank: #4,183,270 in Books (See Top 100 in Books)
- #440 in Object-Oriented Design
- #655 in Object-Oriented Software Design
- #1,102 in Introductory & Beginning Programming
- Customer Reviews:
About the authors

George Dietrich is a software engineer, open-source aficionado, and Crystal community moderator. He holds a Master of Science degree in internet information systems and a Bachelor of Science degree in information sciences.

Guilherme Bernal co-founded a software development company and several tech start-ups, including one that focused on teaching programming skills to a new generation of developers. He holds a bachelor's degree in TI management and is also a two-time world finalist in the coding competition, ACM ICPC.











