/COMP354

Primary LanguageJava

COMP 354 Pokemon Go Back

Announcement

Always keep the new announcement in the top

  • the master branch has been locked, we are working on the dev branch now;
  • UML text format files add to the project under directory 'document/uml';
  • wiki page will be updated regularly;
  • use case is ongoing in the google doc, link;
  • here is something I think maybe useful for our project, anyone can add material into this README.md file. ---by Eric

Team Information

Name Email address GitHub UserName
Frederic Desgreniers FredericDesgreniers@gmail.com FredericDesgreniers
Haotao(Eric) Lai haotao.lai@gmail.com laihaotao
Kawsara Munkalls Kawsara25@yahoo.com kawsara25
Martin Tseng Martin.Tseng1988@gmail.com martintseng
Prashanth Reddy prashanth.abc369@gmail.com prashanth369
Ruoshi wu ruoshiwu1006@gmail.com oliviawu
Xiaoyi Li Li.xiaoyi2121@gmail.com

ps: the order here only follow by the first character of the first name.

Some Useful Link

For documenters, we plan writre documentation in markdown's syntax. In case you are not familiar with markdown, here is a link to a quick guide of markdown.

For coder, we plan to use Maven for dependencies management. Also in case you didn't use it before, here is a link to the Maven user center, it is super easy to learn. By the way, in the project root directory you can find a file name pom.xml, this file is related to Maven.

For testing which is an important part to our project, we plan to use a famous testing framework called "JUnit". Here is a link to JUnit website getting start part. I already added this framework(dependency) into the pom.xml file (Maven).

For buging tracking, we can just simply use the system provided by Github which called "issue". Here is a link to a quick guide about it. I strongerly suggest all teams member should read it, since it is really significant.

This is the pokemon rulebook if you want to check it.

ps: If anyone who has difficulty in setup the environment please make a post in the Facebook group or contact others member who know how to do it.

Code Management and Coding Style

Code Management

The whole project will use Git as version control system and all the code will be put in the Github as remote repository.

In order to achieve well management, we should make good use of branch, for good understand how it work we can see this article.

The basic idea is that everyone work in his own branch, when they finish their jobs we can merge them togerther. But before we merge, we need to make sure the code is "good".

In all the source code file, we should put the following information in the very begining of the file:

/*
 * description:  brief introduction of the class function
 * author(s):    who wrote the code in this file
 * reviewer(s):  who review the code this file
 * date:         the date of create this file
 */

As we saw above, each file should be reviewed by other team member before it is merged into the main branch.

When the tester or reviewer find a bug in the code, please use the issue system to figure it out. In order to reproduce the bug, the person who make a new issure should provide as much possible as information for the author(s) to reproduce the error and using "@+author's Github username" to tell the author to deal with this issue (in Github '@' named mention).

Code Style

In order to make the code clean, clear and easy to read, the whole team should follow only one code style. I suggest that we can use the Google Java Code Style.

ps:strongerly suggest you guys use the most intelligent IDE which is Intellij instead of Eclipse, trust me you will love it when you begin to use it!

Log4j Instruction

For some reason, we are using log4j as a log tool. Here we provide some instruction for how to use it.

First all of, all the log need to meet the following requirement:

  • the specific log for debug purpose must be labeled as debug;
  • the information for tracing the system can be labeled as info;
  • the error message should be labeled as err;

How to get the specific log

There are two ways to do it:

  1. modify the log4j2.xml file, using a regex replace the .* in this line: <RegexFilter regex=".*" onMatch="ACCEPT" onMismatch="DENY"/>;
  2. using a console tool to filter the output, there is a tool named Grep in both eclipse and Intellij;