Etd

Abstractions for Third-Party Extensibility of Educational Programming Environments

Public Deposited

Downloadable Content

open in viewer

While many companies and organizations have built applications which use collaborative features to help teach computer science in classrooms, they have traditionally provided very limited support for third-party developers to build on top of their platforms to add new features and interfaces. Using our own educational programming environment Necode, we develop a set of APIs and abstractions to enable third-party developers to integrate programming languages, design in-class activities, and implement algorithms (policies) for automatically generating peer-to-peer networks for real-time communication between students. To prove the viability of our APIs, we translated all of Necode's built-in modules (consisting of languages, activities, and policies) to use these APIs, as well as developing new brand modules on top of them. We then demonstrated that these modules could be statically unlinked from the Necode build and packaged into a plugin for dynamic hot installation without requiring a re-compile of Necode or any downtime.

Creator
Contributors
Degree
Unit
Publisher
Identifier
  • etd-104311
Keyword
Advisor
Defense date
Year
  • 2023
Date created
  • 2023-04-21
Resource type
Source
  • etd-104311
Rights statement
License
Last modified
  • 2023-06-07

Relations

In Collection:

Items

Items

Permanent link to this page: https://digital.wpi.edu/show/8623j227w