expense-tally
This application will aim to reconcilate the past transaction history against my expense tracker application
The command line version of the application needs to be provided 2 information before it is able to execute. They are:
Option | Description |
---|---|
database-filepath | The absolute or relative path to a database file which stores the transaction of the Expense Manager |
csv-filepath | The absolute or relative path to a comma-separated value file which stores the bank transactions |
The application accepts the parameters in 3 different formats:
- option=XXXX
- option = XXXX
- option XXXX
Any other format of input is not accepted, and will result in system error.
Note
- The javadocs in this project are inspired by the guidelines in Liferay Portal Advanced Javadoc Guidelines.
- The package naming convention adopts the Stack Exchange answer:
Use plural for packages with homogeneous contents and singular for packages with heterogeneous contents.
For example, a package named
com.myproject.task
does not mean that each contained class is an instance of atask
. There might be aTaskHandler
, aTaskFactory
and etc. However, a package namedcom.myproject.tasks
would contain different types that are all tasks:TakeOutGarbageTask
,DoTheDishesTask
and etc.
- For code comment, double forward slashes ("//") is preferred over multiple lined comment block. This is because it is easier to commented in block and there will not be issue due to nested comments.
- For unit test, the convention is to write the method name under test, followed by the testing purpose separated with an underscore character ("_"). For example, isPaymentCardValid_incorrectLengthFail.
- There will not be be any JavaDocs documentation for getter and setter methods.
- All assertJ method calls are statically imported.
Short form
Short form | Long form |
---|---|
csv | comma separated values |
err | error |
msg | message |
app | application |