-
Notifications
You must be signed in to change notification settings - Fork 434
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
sarjinius iP #474
base: master
Are you sure you want to change the base?
sarjinius iP #474
Conversation
Let's tweak the docs/README.md (which is used as the user guide) to fit Duke better. Specifically, 1. mention product name in the title 2. mention adding a product screenshot and a product intro 3. tweak the flow to describe feature-by-feature
… add task to list
…nd Event constructors.
…modifies control flow
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall , I Like the code logic , needs improvement in Code structuring
src/main/java/Duke.java
Outdated
import java.util.ArrayList; | ||
import java.util.Objects; | ||
import java.util.Scanner; | ||
|
||
public class Duke { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Different Classes can be placed in a separate file for better readability?
e.g Creating Task.java to store the Class Task
src/main/java/Duke.java
Outdated
// Checks if the last input is todo. | ||
private boolean isCommandTodo(String command) { | ||
String firstWord = getFirstWord(command); | ||
return Objects.equals(firstWord, "todo"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
reductant use of Object.equals
method can be checked using String
equality
src/main/java/Duke.java
Outdated
} | ||
|
||
// Takes inputs from user until bye has been input. | ||
private void takeInputsUntilBye() { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
method name although is intuitive , but it can be made a bit more general e.g userInput
* branch-Level-7: Writes task list into file after list is modified. Initializes task list from hard drive when chatbot starts up.
* branch-Level-8: Adds ability for chatbot to understand dates and times.
* add-gradle-support: Bump gradle and lib version Add Gradle support docs/README.md: Tweak document template
* branch-Level-9: Adds a find method that can filter the task list by a keyword.
* branch-A-JavaDoc: JavaDoc modified to follow coding standard Added JavaDoc to most classes and methods # Conflicts: # src/main/java/virtue/VirtueTask.java # src/main/java/virtue/VirtueTaskList.java
* branch-A-CodingStandard: Code modified to follow the coding standard # Conflicts: # src/main/java/virtue/Ui.java # src/main/java/virtue/Virtue.java # src/main/java/virtue/VirtueTaskList.java
* branch-A-CheckStyle: Finds coding style violations and resolves them
* branch-Level-10: Incorporates a GUI into the chatbot.
The sandwich and indent features are obsolete due to the new GUI. The applyCommand method is better not without a String output because it is public. Let's * remove the sandwich and indent methods in Virtue class * remove its usages * create a resultMessage field in Command class * make the applyCommand method set the Command resultMessage
Adds assert checks to the code
* master: Adds assert checks to the code # Conflicts: # src/main/java/virtue/Virtue.java # src/main/java/virtue/VirtueTaskList.java
Refactors the code to improve code quality.
* 'master' of https://github.com/sarjinius/ip: Refactors the code to improve code quality.
The mark, unmark, and delete commands can be applied to several tasks. Adding this features makes it more convenient for the user. Let's, * update the getIndex method to accept multiple indices * update the markTasksAsDone, markTasksAsNotDone, and deleteTasks methods to accept an array of indices
* branch-C-MassOps: Provide a way to perform commands on multiple tasks
Several lines in the getIndices method were taken and modified from several websites. Let's, * add comments citing the sources for the code
A good product screenshot showcases the product in its full glory. Let's, * produce a sample run with realistic data * take a screenshot of the sample run * add the screenshot to the docs folder
A user guide is needed for users to understand how to use the chatbot's commands. Let's add the command details and examples, together with the Ui.png image, to the user guide.
When a user inputs an empty description or index, or an index out of range, the user must be alerted. Let's, * check if a description is not entirely whitespace * check if all indices are in the appropriate range * alert the user if the conditions are not satisfied
Virtue
Virtue frees your mind from having to remember things you need to do. It's,
FASTSUPER FAST to useAll you need to use is,
And it is FREE!
Features:
If you are a Java programmer, you can use it to practice Java too. Here's the
main
method: