Home Page Icon
Home Page
Table of Contents for
Chapter 9: Web Frameworks and the Shard Ecosystem
Close
Chapter 9: Web Frameworks and the Shard Ecosystem
by Simon St. Laurent, Ivo Balbaert
Programming Crystal
 Preface
Who This Book Is For
What’s in This Book
How to Read This Book
Conventions Used in This Book
Web Resources and Feedback
Downloading Sample Code
Acknowledgments
Part I. Getting Started
1. Diving into Crystal
A Programming Language for Humans and Computers
Slick As Ruby, But Way Faster
Almost As Fast As C
Speeding Up the Web
Talking to Databases
More Safety Through Types
No to the Billion-Dollar Mistake
Batteries Included
Putting Crystal to Good Use
A Company’s Story Crystallized: Red Panthers
Wrapping Up
2. Crystal Foundations
Using Basic Variables and Types
Variable Operations
Structuring Data with Container Types
Controlling the Flow
Using Methods
Organizing Code in Classes and Modules
Executing Code Concurrently Through Fibers
A Company’s Story Crystallized: Dev Demand
Wrapping Up
Part II. Building Blocks
3. Typing Variables and Controlling the Flow
Converting Data Between Types
Getting Input
Putting It Together—Converting Currencies 1
Exception Handling for Faulty Input
Chaining Methods
Getting Input from Command-Line Arguments
Using String Methods
Using Symbols as Identifiers
Using Enums
Using Regular Expressions
Putting It Together—Converting Currencies 2
Beyond Hashes and Arrays: More Composite Types
Nilable Types
Controlling the Flow and Types
A Company’s Story Crystallized: Linkfeed
Wrapping Up
4. Organizing Code in Methods and Procs
Passing Arguments
Returning Values
Working with Yield, Procs, and Blocks
Overloading and Multiple Dispatch
Using a Shorter Syntax for Exception Handling
Using Recursive Methods
A Company’s Story Crystallized: Duo Design
Wrapping Up
5. Using Classes and Structs
Converting a Ruby Class to Crystal
Structuring a Class
Applying Inheritance
Controlling Visibility
Working with Structs
Viewing the Type Hierarchy
Some Nice Tricks
A Company’s Story Crystallized: LI-COR Biosciences
Wrapping Up
6. Working with Modules
Combining Files with Require
Using Modules as Namespaces
Letting Modules Extend Themselves
Mixing in Modules
How the Compiler Finds Methods
Applying Built-In Modules
A Company’s Story Crystallized: Diploid
Wrapping Up
7. Managing Projects
Creating a Shard
Formatting Code
Documenting a Project
Writing Tests with Spec
Using External Libraries
Benchmarking Your Code
Deploying a Crystal App
A Company’s Story Crystallized: Diploid—Part 2
Wrapping Up
Part III. Advanced Crystal
8. Advanced Features
DRY Your Code with Macros
Low-Level Programming and C Bindings
Creating Concurrent Code
Accessing Databases
A Company’s Story Crystallized: NeuraLegion
Wrapping Up
9. Using Web Frameworks and Shards
Build Web Applications with the Kemal and Amber Frameworks
A Brief Tour of the Shard Ecosystem
A Company’s Story Crystallized: Kemal in Production
Wrapping Up and Afterword
Part IV. Appendices
A1. Setting Up a Crystal Environment
Working with Crystal Online
Installing Crystal on Your Machine
Compiling Code
Using Editors and IDEs
Working with Crystal Playground
Using Crystal Documentation
Wrapping Up
A2. Porting Ruby Code to Crystal
Ruby Extensions in Crystal
A3. Your Turn Answers
Chapter 2: Crystal Foundations
Chapter 3: Typing Variables and Controlling the Flow
Chapter 4: Organizing Code in Methods and Procs
Chapter 5: Using Classes and Structs
Chapter 6: Working with Modules
Chapter 7: Managing Projects
Chapter 8: Advanced Features
Chapter 9: Web Frameworks and the Shard Ecosystem
Appendix 1: Setting Up a Crystal Environment
Search in book...
Toggle Font Controls
Playlists
Add To
Create new playlist
Name your new playlist
Playlist description (optional)
Cancel
Create playlist
Sign In
Email address
Password
Forgot Password?
Create account
Login
or
Continue with Facebook
Continue with Google
Sign Up
Full Name
Email address
Confirm Email Address
Password
Login
Create account
or
Continue with Facebook
Continue with Google
Prev
Previous Chapter
Chapter 8: Advanced Features
Next
Next Chapter
Appendix 1: Setting Up a Crystal Environment
Chapter 9: Web Frameworks and the Shard Ecosystem
Your Turn 1
a.
time_server.cr
b.
index_server.cr
Add Highlight
No Comment
..................Content has been hidden....................
You can't read the all page of ebook, please click
here
login for view all page.
Day Mode
Cloud Mode
Night Mode
Reset