Skip to content

[CS2113-W11-2] WildWatch#5

Open
woodenclock wants to merge 774 commits into
nus-cs2113-AY2324S1:masterfrom
AY2324S1-CS2113T-W11-2:master
Open

[CS2113-W11-2] WildWatch#5
woodenclock wants to merge 774 commits into
nus-cs2113-AY2324S1:masterfrom
AY2324S1-CS2113T-W11-2:master

Conversation

@woodenclock

@woodenclock woodenclock commented Oct 4, 2023

Copy link
Copy Markdown

Created Team Repo for tp.
Wildwatch is a program for recording down individual wildlife in a wildlife reserve via the Command Line Interface (CLI).

Brian030601 pushed a commit to Brian030601/tp that referenced this pull request Oct 13, 2023

@Musfirahe0556596 Musfirahe0556596 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good but there are a few violation in code quality to consider!

Comment on lines +22 to +30
} else if (inputBuffer.equals("help")) { //User request "help"
Ui.printHorizontalLines();
Ui.helpRequestMessagePrinter();
Ui.printHorizontalLines();
HelpCommand.printHelpMessage();
} else {
Ui.printHorizontalLines();
ErrorHandler.handleError(inputBuffer);
Ui.printHorizontalLines();

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could be further abstracted to improve code quality.

Comment on lines +122 to +123
* Returns input of the user from the console.
* @return The user's input as a trimmed string.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Empty line between description and parameter section.

System.out.println("Creating new file...\nFile created successfully.");
}

public static void printEntry(int nthEntry) {

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do remember to include JavaDoc comments, along with other methods too!

*/
public static void findEntry(String inputBuffer) {
boolean hasMatch = false;
String matchingWord = inputBuffer.substring(inputBuffer.indexOf("find") + 5).trim();

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'Magic number' 5 - Could be placed as a named constant.

Comment on lines +102 to +104
* @param entry
* @return String
* @throws IOException when there is problem with formatting the task

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Punctuation behind each parameter description.

/**
* Checks if file exists. Opens file if the file exists.
*
* @return true if file exists; false if not

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Punctuation behind each parameter description.

Comment thread docs/DeveloperGuide.md
For the diagram below, the command `add D/02-03-23 S/Annam Leaf Turtle N/Ariel R/Injured left flipper` has been substituted by `input`.

![](diagrams/AddSequenceDiagram.svg)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AddCommand should be destroyed after being executed and returns a command result.

Comment thread docs/DeveloperGuide.md
@@ -1,38 +1,212 @@
# Developer Guide
# WildWatch Developer Guide 🦏

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall good job. The DG has more to be completed so I don't have much comments to make. No issues with structure and flow. Nice that you have a table of contents and an option to take reader back to top. Cute emojis as well :). Don't forget to include class diagrams as well. I am sure you guys have plans to add in individual commands, explaining the design considerations and implementations.

@spaceman03 spaceman03 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great job! I believe that you all will add more UML diagrams into the DG such as class diagrams and not just sequence diagrams.

Comment thread docs/DeveloperGuide.md

### System Architecture

![System Architecture](https://github.com/AY2324S1-CS2113T-W11-2/tp/assets/69474977/90309a3c-f784-4ffb-8eef-65735c05ec52)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

image Perhaps you could remove the class names below as it is already mentioned above.

Comment thread docs/DeveloperGuide.md
Comment on lines +47 to +58
### Legend

| Symbol | Meaning |
| -------------- |------------------------------------------------------------ |
| ❗ IMPORTANT | These are important instructions that you should follow. |
| ✏ Note | These are important details that you should take note of. |
| ⬆ Back to top | Click to scroll back up to the `Table of Contents`. |
| 🐵 🦊 🦁 | Animals indicate you have reached a new section. |

[⬆ Back to top](https://ay2324s1-cs2113t-w11-2.github.io/tp/DeveloperGuide.html#table-of-contents)

--------------------------------------------------------------------------------------------------------------------------------------

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like this session that shows the different legends used in the DG.

Comment thread docs/DeveloperGuide.md
Comment on lines +160 to +162

[⬆ Back to top](https://ay2324s1-cs2113t-w11-2.github.io/tp/DeveloperGuide.html#table-of-contents)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

image

Nice to see that you have a "back to top" button after each section.

Comment thread docs/DeveloperGuide.md Outdated
Comment on lines +33 to +45
### How to use the Developer Guide
- Are you new here?
No worries, head to the [Quick Start](https://ay2324s1-cs2113t-w11-2.github.io/tp/DeveloperGuide.html#quick-start-) page.
- Lost among the pages?
Head to the [Table of Contents](https://ay2324s1-cs2113t-w11-2.github.io/tp/DeveloperGuide.html#table-of-contents) to look for the right pages.
- Need help with the functionalities?
Head to the [Features](https://ay2324s1-cs2113t-w11-2.github.io/tp/DeveloperGuide.html#features-) page for detailed guidance.
- Do you have a question for us?
Head to the [FAQ](https://ay2324s1-cs2113t-w11-2.github.io/tp/DeveloperGuide.html#faq-) page.
- Do you want a concise summary of all functionalities?
Head to the [Command Summary](https://ay2324s1-cs2113t-w11-2.github.io/tp/DeveloperGuide.html#command-summary-) page for a summary of all commands.
- Not sure what that word meant?
Head to the [Glossary](https://ay2324s1-cs2113t-w11-2.github.io/tp/DeveloperGuide.html#glossary-) page for its meaning.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This section is great! It navigates the user to the respective section of the DG.

Comment thread docs/DeveloperGuide.md Outdated
- `FileHandler`: A class that saves and retrieves all the wildlife data from the local storage

{list here sources of all reused/adapted ideas, code, documentation, and third-party libraries -- include links to the original source as well}
![Architecture Sequence Diagram](https://github.com/AY2324S1-CS2113T-W11-2/tp/assets/69474977/6bea5165-aa78-4b3e-baf0-2e9ced109161)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there an additional return from command to execute or is command returning twice to execute?

Comment thread docs/DeveloperGuide.md

### Command component
![](images/AddSequenceDiagram.png)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yepp^ and what do the 'a's above return arrows represent?

Comment thread docs/DeveloperGuide.md Outdated
{Describe the design and implementation of the product. Use UML diagrams and short code snippets where applicable.}


### Parser component

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would be good to provide a sequence diagram for Parser too

Comment thread docs/DeveloperGuide.md Outdated
|v1.0|zoo clerk|add an animal entry|record the animals in the zoo, and refer to them afterwards|
|v1.0|zoo clerk|delete an animal entry|remove redundant or invalid animal entry|
|v1.0|zoo clerk|list all the entries|see what entries I have entered previously, and refer to them|
|v2.0|user|find a to-do item by name|locate a to-do without having to go through the entire list|

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How about other things like saving, editing, and summarising?

Comment thread docs/DeveloperGuide.md

[⬆ Back to top](https://ay2324s1-cs2113t-w11-2.github.io/tp/DeveloperGuide.html#table-of-contents)

--------------------------------------------------------------------------------------------------------------------------------------

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall DG is incomplete, well formatted and easy to understand but insufficient details and diagrams

@kaijie0102 kaijie0102 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall, UI is really neat and clear.

However, general sequence diagram has some common notation errors, but could be fix really easily

Comment thread docs/DeveloperGuide.md
# Developer Guide
# WildWatch Developer Guide 🦣

## Table of Contents

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I really like your table of content, it is something that I would like to have in my own DG

Comment thread docs/DeveloperGuide.md

### System Architecture

![System Architecture](https://github.com/AY2324S1-CS2113T-W11-2/tp/assets/69474977/90309a3c-f784-4ffb-8eef-65735c05ec52)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like that how clean and clear your architecture diagram is. Not only are the fonts just right, the choice of colours of arrows make the interaction really obvious

Comment thread docs/DeveloperGuide.md Outdated
![Architecture Sequence Diagram](https://github.com/AY2324S1-CS2113T-W11-2/tp/assets/69474977/6bea5165-aa78-4b3e-baf0-2e9ced109161)

## Design & implementation
The **_Generic Sequence Diagram_** above shows a shows how the components in the architecture interact with each other for a generic command input in WildWatch.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

image
Is activation bar too long?

See Common Notation Error in week 10 Sequence Diagram
image

Comment thread docs/DeveloperGuide.md Outdated
![Architecture Sequence Diagram](https://github.com/AY2324S1-CS2113T-W11-2/tp/assets/69474977/6bea5165-aa78-4b3e-baf0-2e9ced109161)

## Design & implementation
The **_Generic Sequence Diagram_** above shows a shows how the components in the architecture interact with each other for a generic command input in WildWatch.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you be missing an entry point to the sequence diagram? It seems like the entry point comes from the Execute class
image
but in the docs its said that main was the entry point
image

Comment thread docs/DeveloperGuide.md Outdated
![Architecture Sequence Diagram](https://github.com/AY2324S1-CS2113T-W11-2/tp/assets/69474977/6bea5165-aa78-4b3e-baf0-2e9ced109161)

## Design & implementation
The **_Generic Sequence Diagram_** above shows a shows how the components in the architecture interact with each other for a generic command input in WildWatch.

@kaijie0102 kaijie0102 Nov 3, 2023

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

image
Perhaps, It might be better to seperate error handling using checkError() method from the construction of a Parser object?

Comment thread docs/DeveloperGuide.md Outdated
![Architecture Sequence Diagram](https://github.com/AY2324S1-CS2113T-W11-2/tp/assets/69474977/6bea5165-aa78-4b3e-baf0-2e9ced109161)

## Design & implementation
The **_Generic Sequence Diagram_** above shows a shows how the components in the architecture interact with each other for a generic command input in WildWatch.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the activation bar broken?
image

image
See Common Notation Error in week 10 Sequence Diagram

Comment thread docs/DeveloperGuide.md Outdated
{Describe the design and implementation of the product. Use UML diagrams and short code snippets where applicable.}


### Parser component

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

perhaps "a" could be replaced with addCommand object or something that reflects "a" being a Command

image

Comment thread docs/DeveloperGuide.md Outdated
| ⬆ Back to top | Click to scroll back up to the `Table of Contents`. |
| 🐵 🦊 🦁 | Animals indicate you have reached a new section. |

[⬆ Back to top](https://ay2324s1-cs2113t-w11-2.github.io/tp/DeveloperGuide.html#table-of-contents)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I really like your back to top buttons! Will incorporate this

Brian030601 pushed a commit to Brian030601/tp that referenced this pull request Nov 6, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.