Thesis (Selection of subject)Thesis (Selection of subject)(version: 290)
Assignment details
   Login via CAS
An IDE for C# Script Development
Thesis title in Czech: Vývojové prostředí pro vývoj skriptů v jazyce C#
Thesis title in English: An IDE for C# Script Development
Key words: vývojové prostředí, C#, skripty, NRefactory
English key words: IDE, C#, scripting, NRefactory
Academic year of topic announcement: 2012/2013
Type of assignment: diploma thesis
Thesis language: angličtina
Department: Department of Distributed and Dependable Systems (32-KDSS)
Supervisor: Mgr. Pavel Ježek, Ph.D.
Author: hidden - assigned and confirmed by the Study Dept.
Date of registration: 12.08.2013
Date of assignment: 12.08.2013
Confirmed by Study dept. on: 29.08.2013
Date and time of defence: 15.06.2015 12:00
Date of electronic submission:06.05.2015
Date of submission of printed version:07.05.2015
Date of proceeded defence: 15.06.2015
Reviewers: RNDr. David Bednárek, Ph.D.
 
 
 
Guidelines
Even though the available tools for C# development are otherwise rich, they are not very well suited for one domain. This domain is the usage of the C# language for quick and easy solving of small, usually one-time temporary tasks that arise during the work on larger projects. Because of the nature of the programs that are written to solve these tasks, we will call them scripts. A variety of tasks fall into this category, from API experiments, microbenchmarks, one-time testing, to prototyping, shell-like scripting and small tools created specifically to solve a single particular task.

The goal of this thesis is to create a simple integrated development environment (IDE) for quick and easy authoring of scripts in the C# language. In contrast to classic large IDEs, it will be a minimalist tool, but even so it should offer sufficient features to allow easy authoring and debugging of programs consisting primarily of a single source file.

The work should include:
* Analysis of existing tools that enable using the C# language as a scripting platform.
* General, easily extensible framework of the IDE.
* Build system for compilation and running of the created scripts.
* Debugger allowing basic debugging of the created scripts (breakpoints, stepping, console).
* Features that make code authoring easier and friendlier (as much as possible from the following: syntax highlighting, error highlighting, code completion, method parameter hints, basic refactoring, quick code navigation, etc.)
References
* Holm, Kruger, Spuida: Dissecting a C# Application: Inside SharpDevelop, Wrox Press 2003
* C# Language Specification 5.0, http://www.microsoft.com/en-us/download/details.aspx?id=7029
* Using AvalonEdit (WPF Text Editor), http://www.codeproject.com/Articles/42490/Using-AvalonEdit-WPF-Text-Editor
* Using NRefactory for analyzing C# code, http://www.codeproject.com/Articles/408663/Using-NRefactory-for-analyzing-Csharp-code
 
Charles University | Information system of Charles University | http://www.cuni.cz/UKEN-329.html