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|
|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.|
|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.)
|* 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