Encapsulation is a programming technique that helps developers keeping code readable and maintainable. However, encapsulation in modern object-oriented languages often causes significant runtime overhead. Developers must choose between clean encapsulated code or fast code. In the application domain of computer games, speed of execution is of utmost importance, which means that the choice between clean and fast usually is decided in favor of the latter. In this paper we discuss how encapsulation is embedded in the Casanova 2 game development language, and show how Casanova 2 allows developers to write encapsulated game code, which thanks to extensive optimization achieves at the same time high levels of performance. Furthermore, we show that the abstractions provided by Casanova so far cover no more than the tip of the iceberg: we document a further extension in the traditionally challenging domain of networking and show how the language can provide significant improvement in productivity.
|Titolo:||High performance encapsulation and networking in Casanova 2|
|Data di pubblicazione:||2017|
|Appare nelle tipologie:||2.1 Articolo su rivista |
File in questo prodotto:
|High performance encapsulation and networking in Casanova 2.pdf||Documento in Pre-print||Accesso libero (no vincoli)||Open Access Visualizza/Apri|