"For every minute spend in organizing, an hour is earned"
-Benjamin Franklin
This application will be the ultimate to-do list to meet the users' everyday needs whether the user is a working adult, student in university, or an entrepreneur running their own business. The minimalistic design of this application will allow the user to focus on the important things in life while still offering all the components that are essential to a productive day. These include the simple ability to add/delete tasks, and mark them as complete/incomplete. In essence, this application will help de-clutter the mind and allow for users to reach their goals.
This project is of interest to me because I often find myself in a state of chaos whenever I have to think about all the things I have to do for the day. I have multiple different applications running to organize my thoughts, and I always end up more disorganized and overwhelmed than before. The goal of this application is to provide the ultimate to-do list so that all tasks can be organized in one location.
- As a user, I want to be able to add a task to my to-do list
- As a user, I want to be able to view the tasks on my to-do list
- As a user, I want to be able to delete a task off my to-do list
- As a user, I want to be able to mark a task as complete on my to-do list
- As a user, I want to be able to mark a task as incomplete on my to-do list
- As a user, I want to be able to save my to-do list to file
- As a user, I want to be able to load my to-do list from file
Tue Nov 23 12:09:42 PST 2021 A task was added to the to-do list
Tue Nov 23 12:09:56 PST 2021 A task was added to the to-do list
Tue Nov 23 12:10:02 PST 2021 A task was added to the to-do list
Tue Nov 23 12:10:05 PST 2021 A task was marked as complete
Tue Nov 23 12:10:07 PST 2021 The to-do list was loaded from file
Tue Nov 23 12:10:07 PST 2021 The to-do list was saved to file
Some refactoring to improve the design of this application:
- I would refactor my code to make it more robust, so it can throw exceptions if an error were to occur. This will be beneficial if the user somehow inputs data that is not valid and still be able to recover from it.
- There is some redundancy in my code, especially in my GUI class that can be refactored to make the code easier to change in the future in case there are bugs or if I want to add additional functionality.
- I may also want to move some method and classes around in my GUI class as it is a pretty long public class that can be split up to make it easier to work with.