Graphical Interpreter created using WinForms with C# and an external library.
| BOOSEexamplePrograms | ||
| doc | ||
| main | ||
| test | ||
| .gitignore | ||
| BOOSE.dll | ||
| README.md | ||
BOOSE Interpreter
Graphical Interpreter created using WinForms with C# and an external library.
The external library contains an interpreter with restrictions in place for various parts.
Objective is to replace as much of the library as posssible, removing the limitations while doing so.
Checkpoint
1 Version Control (1) 5 marks
DONE
At least two documented commits to provided on GitHub Classroom BEFORE 12pm 7th October.
At least 5 documented commits.
Readme.md file filled in correctly.
2 Unit Tests for basic drawing commands above (1) 5 marks
DONE
Unit Test for moveto command (variables storing pen position are correct)
Unit Test for drawTo command (variables storing pen position are correct)
Unit Test for a multiline program.
3 XML Comments/documentation produced (1) 5 marks*
PART DONE
Fully documented with XML comments and Documentation web site produced
4 Exception Handling (1) 5 marks*
DONE
5 Library (DLL) installed and working with reasonable user interface (2) 10 marks
DONE
Form interface with program window, output window and run button
BOOSE DLL library installed
call about method and display returned information in output/debug window
you can use System.Diagnostics to output to the debug window
6 Basic drawing commands of the library are implemented (2) 10 marks
DONE
Moveto, circle, rect, pencolour, write.
Unrestricted drawing programs can be run (1unrestrictedDrawing.boose)
Final Submission
1 Further Version Control (1) 5 marks
DONE
You must continue to use VC to a professional standard with frequent and clear commits
Your Readme.md must be up to date
2 Use of Interfaces (1) 5 marks
Interfaces to be used for all classes where appropriate
3 Further Unit Testing (1) 5 marks
DONE
Tests for full program all of the facilities completed in 5,6 and 7 below
It is up to you how design your tests (i.e. one test per facility or one test testing many but they must be clearly documented with XML comments)
4 Design Patterns (1) 5 marks
Use of factory Design Pattern for command creation
Demonstrate the use of another design pattern of your choice
(for 5,6 and 7 you can click the links to see the example BOOSE programs that must be run, these are in your Portfolio. You must run the unrestricted programs and replace the image already there with an image of your BOOSE Interpreter running the BOOSE programs. You may show further programs in your portfolio.)
5 Replaced variables (2)
DONE
Int 4 marks
Real 4 marks
Array 5 marks
6 Replaced if, while, for (2)
DONE
While 5 marks
For 6 marks
If else 6 marks