Software Engineering based computer game development - API DESIGN GUIDELINES.pptx
rajalakd1
0 views
13 slides
Oct 06, 2025
Slide 1 of 13
1
2
3
4
5
6
7
8
9
10
11
12
13
About This Presentation
API DESIGN GUIDELINES
Size: 1.79 MB
Language: en
Added: Oct 06, 2025
Slides: 13 pages
Slide Content
API DESIGN GUIDELINES
2
Principles of API Design Consistency and simplicity Predictable behavior Usability and developer experience 3
API DESIGN GUIDELINES Usability and Structured Simplicity: usability and simplicity facilitate the creation of effective CS1/2 materials accessible to students and faculty with no background in graphics or gaming. Discoverability and Learnability: our end users must be able to build simple applications quickly with minimum familiarity of the APIs but also have the opportunity to gradually explore advanced functionality at their own pace 4
API DESIGN GUIDELINES 5 Expressiveness and Productivity: while the final products built by the students may resemble casual games, the APIs primarily support the building of effective teaching materials as vehicles for educational content delivery Encapsulation and Modularity: The goals are to tightly encapsulate the complex graphics and gaming functionality while strategically exposing selected concepts for teaching purposes.
API Definition and refinement process 6 finalize the game prototype, define and refine the API while completing the game implementation build tutorials and teaching materials based on the API. In our process, the API refinement spans from the stabilization of the prototype game until the team finishes tutorials and teaching materials.
Games and CS 1/2 Classes Integrating Casual Games into Computer Science Education Importance of video games in teaching CS Engagement and learning outcomes The role of the GTCS project 7
Approaches to Using Games in CS1/2 8 Learning through playing (custom games) Assignment-based game development Extensive game development with engines and environments
Faculty Challenges & Student Needs Faculty concerns: preparation time, curriculum integration Student feedback: desire for complexity and engagement Bridging the gap with game-themed APIs 9
The Two Games - Space Smasher & Corrupted Space Smasher: Focuses on conditionals and loops Corrupted: Uses 1D & 2D arrays for gameplay mechanics 10
THE SPACE SMASHER API The MySpaceSmasherGame class is a subclass of the API defined SpaceSmasher superclass. The entire game is then defined by the two protected overridden methods: inintialize () update() 11
THE SPACE SMASHER API 12 The initialize() method creates five lives, a paddle, and uses a “for” loop to generate the two rows of various blocks. The update() method show cases the simple and chained conditional statements to parse user input and the corresponding responses with the simple “for” loops. The Corrupted API
API Design for Games in CS1/2 Simplifies development by exposing only essential concepts Supports structured programming learning Hides complex graphics and game rules 13