Closed johnding1996 closed 7 years ago
@thomaszhouan What's the controller team's idea on the package names for all parts of the project?
The proposed hierarchy is as follows:
dieting-chatbot/src
main
: source files for applicationtest
: source files for unit testmain
and test
, the files are organized under 4 packages
controller
: for controller
, parser
and formatter
; interact with LINE API and dispatch event to other modulesdatabase
: wrapper classes for databaseagent
: modules for interaction logic of the chatbot agent, e.g. give recommendation given a menumisc
: for features under issue #13 The commit 369f1e2f060e6b5aaf5ab68f810f671da4c3fabd still contains legacy code from the kitchensink
sample. It will be integrated into the new controller
.
@thomaszhouan Thanks for the great work. I completely agree with the proposal.
The hierarchy proposed has been included in the wiki.
It seems that the GitHub integration of Slack cannot show wiki update events. Any suggestions?
A proposal on the project hierarchy: add a new package named utility
for the reuse of some common functions needed by multiple modules, such as checking whether input string is int
, split a sentence into words. @johnding1996
@thomaszhouan but could this be inside the agent package?
The following package may need these utilities: controller
, agent
, misc
. The reason why controller
also needs such functions is it has to process user input directly sometimes (say Idle
state), in order to decide which task user wants to perform (recommendation/feedback/initial input).
@thomaszhouan ok, then do so, we can do refactoring after m2 anyway. But, I suggest you close the current controller branch and do this change to develop by opening another feature branch.