-
Notifications
You must be signed in to change notification settings - Fork 484
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
[mamayuan] ip #534
base: master
Are you sure you want to change the base?
[mamayuan] ip #534
Conversation
…evel-7 # Conflicts: # src/main/java/duke/io/Loader.java # src/main/java/duke/io/Saver.java
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.
Looks good to me, although there may be some style errors. Perhaps adding javadoc and header comments for public methods will make your code more clear and easier to understand. Also, according to the Git conventions, you should use "Add", "Settle", "Finalise" instead of "Adds", "Settles", and "Finalises". Overall, well done! 👍
src/main/java/duke/Duke.java
Outdated
package duke; | ||
|
||
import duke.exceptions.FileIoException; | ||
import duke.tasks.*; |
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.
Should the classes imported be explicitly listed out?
src/main/java/duke/Duke.java
Outdated
import duke.exceptions.UnknownCommandException; | ||
|
||
|
||
import java.util.ArrayList; |
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.
I think import java.*
should be before import duke.*
, according to the checkStyle function.
src/main/java/duke/Duke.java
Outdated
import duke.exceptions.EmptyDescriptionException; | ||
import duke.exceptions.UnknownCommandException; | ||
|
||
|
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.
Perhaps one blank line is enough?
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.
Good job!
src/main/java/duke/Duke.java
Outdated
System.out.println("Got it. I've added this task:"); | ||
System.out.println(" " + tasks.getTask(tasks.getNumberOfTasks() - 1)); | ||
System.out.println("Now you have " + tasks.getNumberOfTasks() + " task(s) in the list."); |
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.
Should Ui class do the printing part?
public enum TaskType { | ||
TODO, EVENT, DEADLINE | ||
} |
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.
I like your implementation of the enum class for task types.
@@ -0,0 +1,31 @@ | |||
package duke.exceptions; | |||
|
|||
public class ErrorMessages { |
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.
Great implementation on ErrorMessage class.
src/main/java/duke/io/Storage.java
Outdated
import java.io.File; | ||
import java.io.FileNotFoundException; | ||
import java.io.IOException; | ||
import java.nio.file.Path; | ||
import java.nio.file.Paths; | ||
import java.nio.file.Files; | ||
import java.util.ArrayList; | ||
import java.util.List; | ||
import java.util.Scanner; | ||
|
||
import duke.tasks.Task; | ||
import duke.tasks.Todo; | ||
import duke.tasks.Event; | ||
import duke.tasks.Deadline; | ||
import duke.tasks.TaskList; | ||
import duke.exceptions.UnknownCommandException; | ||
import duke.exceptions.FileIoException; | ||
import duke.exceptions.ErrorMessages; |
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.
I enjoy your clean separation and ordering of the import statements.
The Duke application lacks a user interface and a main entry point for users to interact with. To make the Duke application user-friendly and navigable, we need a proper user interface and an entry point to launch the application. Implement the MainWindow class to act as the controller for the main application window. Add the DialogBox custom control to display dialogues for the user and Duke with associated images. Introduce the Launcher class as the application's entry point. Using JavaFX, we can ensure a consistent and efficient user interface. The DialogBox custom control allows us to encapsulate dialogue functionalities, ensuring code reusability and organization. The Launcher acts as a clear entry point for the application, keeping the initialization process straightforward. Added Javadoc comments to the newly created classes for better documentation and clarity.
DukePro - Task Manager 📖
DaDaYuan frees your mind of having to remember things you need to do. It's:
complexeasy to learnAll you need to do is:
And it is
expensiveFREE! 🎉Features:
If you're a
Java
programmer, you can use it to practice Java too. Here's the main method: