Ir al contenido (pulsa Retorno)

Universitat Politècnica de Catalunya

    • Català
    • Castellano
    • English
    • LoginRegisterLog in (no UPC users)
  • mailContact Us
  • world English 
    • Català
    • Castellano
    • English
  • userLogin   
      LoginRegisterLog in (no UPC users)

UPCommons. Global access to UPC knowledge

Banner header
75.864 UPC academic works
You are here:
View Item 
  •   DSpace Home
  • Treballs acadèmics
  • Facultat d'Informàtica de Barcelona
  • Grau en Enginyeria Informàtica (Pla 2010)
  • View Item
  •   DSpace Home
  • Treballs acadèmics
  • Facultat d'Informàtica de Barcelona
  • Grau en Enginyeria Informàtica (Pla 2010)
  • View Item
JavaScript is disabled for your browser. Some features of this site may not work without it.

C++ simulation in the browser

Thumbnail
View/Open
122226.pdf (555,8Kb)
  View UPCommons Usage Statistics
  LA Referencia / Recolecta stats
Includes usage data since 2022
Cita com:
hdl:2117/100273

Show full item record
Gascons Gascon, Ricard
Tutor / directorPetit Silvestre, JordiMés informacióMés informacióMés informació
Document typeBachelor thesis
Date2017-01
Rights accessOpen Access
All rights reserved. This work is protected by the corresponding intellectual and industrial property rights. Without prejudice to any existing legal exemptions, reproduction, distribution, public communication or transformation of this work are prohibited without permission of the copyright holder
Abstract
The aim of this thesis is to design, develop and evaluate an open source tool to edit, run and debug C++ code inside a webpage without requiring a remote server to compile and execute the programs. C++ is widely used in education and industry, but to date no tools that run C++ code natively in the browser have been found. For this reason, it is been decided to develop an interpreter for a small subset of C++ that runs in a simple web interface. We call this tool C−−. This thesis parts from an older project able to interpret a small subset of C++ in the browser, and then designs and implements several features such as a debugger, non-blocking input/output operations, and a public API. In a second stage a web interface is built to allow users running and debugging code in a simple manner. After the first implementation of the web interface, feedback from testers is received and several adaptations for the improvement of the user experience are undertaken. Moreover, several efficiency tests have been performed to compare C−− execution times to other existing tools, such as GCC, JavaScript or Python. Finally, the tool is deployed to cmm.jutge.org where anyone can use it.
 
L’objectiu d’aquest projecte final de carrera és dissenyar, desenvolupar i evaluar una eina de codi obert capaç d’editar, executar i debugar codi C++ dins una pàgina web sense que es necessiti un servidor remot per compilar i executar els programes. C++ és molt popular en el mon educatiu i a la indústria, però a data d’avuí no s’ha trobat una eina que sigui capaç d’executar codi en C++ de forma nativa dins el navegador. Per aquesta raó s’ha decidit desenvolupar un intèrpret per un petit subconjunt de C++ que s’executi dins una interfície web. Aquesta eina l’hem anomenat C−−. Aquest projecte de final de carrera prové d’un projecte anterior capaç d’interpretar un petit subconjunt de C++ en el navegador, que posteriorment s’ha ampliat per donar suport a noves carecterístiques com un debugger, operacions d’entrada/sortida no bloquejants i una API pública. En la segona fase del projecte s’ha desenvolupat una interfície web per a què els usuaris puguin executar i debugar codi d’una forma molt senzilla. Després de la primera implementació de la interfície web, s’han realitzat proves amb usuaris on s’ha recollit el seu feedback i s’han fet les modicacions pertinents per tal de millorar l’experiència d’usuari. A més, s’han realitzat diversos testos d’eficiència on es mesura el temps d’execució de programes en C−− i es comparen els resultats amb altres eines existents, com GCC, JavaScript o Python. Finalment, l’eina és desplegada a cmm.jutge.org on qualsevol persona hi pot accedir.
SubjectsApplication software, Computational grids (Computer systems), Programari d'aplicació, Computació distribuïda
DegreeGRAU EN ENGINYERIA INFORMÀTICA (Pla 2010)
URIhttp://hdl.handle.net/2117/100273
Collections
  • Facultat d'Informàtica de Barcelona - Grau en Enginyeria Informàtica (Pla 2010) [2.901]
  View UPCommons Usage Statistics

Show full item record

FilesDescriptionSizeFormatView
122226.pdf555,8KbPDFView/Open

Browse

This CollectionBy Issue DateAuthorsOther contributionsTitlesSubjectsThis repositoryCommunities & CollectionsBy Issue DateAuthorsOther contributionsTitlesSubjects

© UPC Obrir en finestra nova . Servei de Biblioteques, Publicacions i Arxius

info.biblioteques@upc.edu

  • About This Repository
  • Metadata under:Metadata under CC0
  • Contact Us
  • Send Feedback
  • Privacy Settings
  • Inici de la pàgina