Introduction
Grid-Based Game Programming introduces a hands-on approach to developing computational thinking (CT) through grid-based games (GBGs). This part outlines the book’s approach by integrating key paradigms and applying APIs practically. Through Game-Based Learning (GBL), it examines how Object-Oriented Programming (OOP) and Functional Programming (FP) complement each other, offering hands-on experience with the p5.js framework and the p5.quadrille.js library. This part also emphasizes the importance of community engagement, highlighting the role of workshops to enhance the learning experience.
The part is structured as follows:
- Intended Audience – Defines the primary readership, including university students, educators, researchers, digital board game developers, and self-learners. It highlights how the book caters to different levels of experience, from those learning OOP and FP fundamentals to readers looking to deepen their knowledge.
- Game-Based Learning – Introduces GBL, focusing on game design as a teaching strategy and serious games for domain-specific concepts. Presents the p5.quadrille.js library and its structured development methodology, enabling the digital implementation of board games to teach OOP, FP, and game mechanics. Encourages community-driven learning through game jams, workshops, and tool development.
- Grid-Based Games – Defines GBGs as the discrete foundation of this approach. Explains how interaction, logic, and visualization emerge from cell-based structures and why grids provide an ideal medium for combining programming and design. Outlines the main GBG categories, their shared principles, and their relevance for teaching computational thinking.
- APIs and Programmer Roles – Discusses the importance of Application Programming Interfaces (APIs) and the two main roles developers play:
- Designers & Developers, who create APIs.
- Users, who integrate them into applications.
Introduces p5.quadrille.js for API practice and handpan for API design exploration.
This part provides a well-rounded introduction to the book’s learning framework—linking theory, practice, and community. It establishes how creative coding, grid-based reasoning, and game design come together to develop computational thinking through progressive, visual, and interactive exploration.