Skip to content

Commit e365e09

Browse files
committed
Update UserGuide and DevGuide based on feedback session
1 parent b8d7422 commit e365e09

File tree

2 files changed

+130
-112
lines changed

2 files changed

+130
-112
lines changed

docs/DeveloperGuide.md

Lines changed: 21 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,7 @@ In order to better contribute, you should:
5555
This app will not work with earlier versions of Java 8.
5656

5757
2. **Eclipse** IDE
58-
3. **e(fx)clipse** plugin for Eclipse (Do the steps 2 onwards given in
59-
[this page](http://www.eclipse.org/efxclipse/install.html#for-the-ambitious))
58+
3. **e(fx)clipse** plugin for Eclipse (Follow the instructions given in [this page](http://www.eclipse.org/efxclipse/install.html#for-the-ambitious) from Step 2 onwards.)
6059
4. **Buildship Gradle Integration** plugin from the Eclipse Marketplace
6160
5. **Checkstyle Plug-in** plugin from the Eclipse Marketplace or its [official website](http://eclipse-cs.sourceforge.net/#!/install)
6261

@@ -97,7 +96,7 @@ In order to better contribute, you should:
9796

9897
**Problem: Eclipse reports some required libraries missing**
9998
* Reason: Required libraries may not have been downloaded during the project import.
100-
* Solution: [Run tests using Gardle](UsingGradle.md) once (to refresh the libraries).
99+
* Solution: [Run tests using Gradle](UsingGradle.md) once (to refresh the libraries).
101100

102101
**[⬆ back to top](#user-content-table)**
103102

@@ -112,8 +111,8 @@ The **_Architecture Diagram_** given above explains the high-level design of the
112111
Given below is a quick overview of each component.
113112

114113
`Main` has only one class called [`MainApp`](../src/main/java/seedu/geekeep/MainApp.java). It is responsible for:
115-
* At app launch: initializing the components in the correct sequence, and connecting them up with each other.
116-
* At shut down: shutting down the components and invoking cleanup method where necessary.
114+
* App Launching: initialize the components in the correct sequence, and connect them up with each other.
115+
* Shutting Down: shut down the components and invoke cleanup method where necessary.
117116

118117
[**`Commons`**](#common-classes) represents a collection of classes used by multiple other components.
119118
Two of those classes play important roles at the architecture level.
@@ -132,9 +131,7 @@ Each of the four components:
132131
* Exposes its functionality using a `{Component Name}Manager` class.
133132

134133
For example, the `Logic` component (see the class diagram given below) defines its API in the `Logic.java`
135-
interface and exposes its functionality using the `LogicManager.java` class.<br>
136-
<img src="images/LogicClassDiagram.png" width="800"><br>
137-
_Figure 2.2 : Class Diagram of the Logic Component_
134+
interface and exposes its functionality using the `LogicManager.java` class.
138135

139136
**Events-Driven nature of the design**
140137

@@ -186,10 +183,20 @@ _Figure 2.5 : Class Diagram of the Logic Component_
186183

187184
**API** : [`Logic.java`](../src/main/java/seedu/geekeep/logic/Logic.java)
188185

189-
1. `Logic` uses the `Parser` class to parse the user command.
190-
2. This results in a `Command` object which is executed by the `LogicManager`.
191-
3. The command execution can affect the `Model` (e.g. adding a task) and/or raise events.
192-
4. The result of the command execution is encapsulated as a `CommandResult` object which is passed back to the `Ui`.
186+
The `Logic` component:
187+
188+
* Parses the user command using each command's respective `Parser`.
189+
* Executes a `Command` object based on the command and user input.
190+
* Encapsulates the result, a feedback `string` in a `CommandResult` object.
191+
192+
For example, the following is what happens when the API `execute("delete 1")` is called:
193+
194+
1. `LogicManager` parses the user command using the `Parser` class.
195+
1. `Parser` subsequently uses `DeleteCommandParser` to parse the argument `1`.
196+
1. This results in a `DeleteCommand` object which is returned to `LogicManager`.
197+
1. `LogicManager` executes the `DeleteCommand` object.
198+
1. The command execution can affect the `Model` (e.g. adding a task) and/or raise events.
199+
1. The result of the command execution is encapsulated as a `CommandResult` object which is passed back to the `Ui`.
193200

194201
Given below is the Sequence Diagram for interactions within the `Logic` component for the `execute("delete 1")`
195202
API call.<br>
@@ -248,7 +255,7 @@ and logging destinations.
248255
* `SEVERE` : Critical problem detected which may possibly cause the termination of the application.
249256
* `WARNING` : Can continue, but with caution.
250257
* `INFO` : Information showing the noteworthy actions by the App.
251-
* `FINE` : Details that is not usually noteworthy but may be useful in debugging
258+
* `FINE` : Details that are not noteworthy but may be useful in debugging
252259
e.g. print the actual list instead of just its size.
253260

254261
<h3 id="user-content-config">Configuration</h3>
@@ -363,7 +370,7 @@ Here are the steps to convert the project documentation files to PDF format:
363370
1. Make sure you have set up GitHub Pages as described in [UsingGithubPages.md](UsingGithubPages.md#setting-up).
364371
1. Using Chrome, go to the [GitHub Pages version](UsingGithubPages.md#viewing-the-project-site) of the
365372
documentation file. <br>
366-
e.g. For [UserGuide.md](UserGuide.md), the URL will be `https://<your-username-or-organization-name>.github.io/addressbook-level4/docs/UserGuide.html`.
373+
e.g. For [UserGuide.md](UserGuide.md), the URL will be `https://<your-username-or-organization-name>.github.io/geekeep/docs/UserGuide.html`.
367374
1. Click on the `Print` option in Chrome's menu.
368375
1. Set the destination to `Save as PDF`, then click `Save` to save a copy of the file in PDF format. <br>
369376
For best results, use the settings indicated in the screenshot below. <br>

0 commit comments

Comments
 (0)