Sim Choon Hong Dexter's Project Portfolio Page
Project: TaskBook
TaskBook is a desktop address book and task assignment application for NUS students to efficiently manage their contacts and tasks.
Given below are my contributions to the project.
- New Feature: Added feature of mark and unmark tasks (#148).
- What it does:
task mark
allows the user to mark a task in the TaskBook as complete andtask unmark
allows the user to unmark a previously marked task. - Justification: This feature is core to the product. A fundamental feature of a task management software is to allow the user to be able to organize their tasks by marking and unmarking tasks.
- Highlights: The feature is written with an immutable field to prevent any potential regression that may arise from adding new features such as undo, redo and edit. This is opposed to implementing it with a mutable field, similar to the one implemented in our individual projects, which could cause other commands, storage or GUI to misbehave.
- Credits: Some implementation ideas were taken from Jin Wei’s task edit implementation in TaskBook.
- What it does:
- New Feature: Added feature of todo, deadline and event tasks (#138).
- What it does:
task todo
,task deadline
andtask event
allow the user to add different types of task in the TaskBook. - Justification: This feature is a step-up to the product. The user can use different types of task that contains different fields that best suit the situation. For example, the deadline type contains an additional date field that allows the user to track the deadline of the task.
- Highlights: The feature is written with each task type extending from an abstract class
Task
. This improves maintainability of the code. It also allows for ease of future extension if new task types were to be added in the future. - Credits: Some implementation ideas were taken from the task implementation in my individual project.
- What it does:
-
Code contributed: RepoSense link
- Enhancements to existing features:
- Documentation:
- User Guide:
- Developer Guide:
- Community: