Project Part 3 Feedback - lagecamp/CMPUT301W13T02 GitHub Wiki
Feedback
Code base of Prototype -- Good (2)
- About 1/2 requirement has been implemented. Not work on web yet.
- Suggestion: you can move M, V, C classes to different packages so that it will be easier to understand the purpose of each class.
- Are you using file to save the recipes? However, we usually use database like SQLite to store data locally. Many operations on database are optimized so that the add, update, search things will be easy to handle. Also, with more and more recipes, it becomes slow when you do searching by string comparison using a text file.
- The code follows some code conventions.
Tangible Demo -- Excellent (1)
- Demo is clear.
- Basic functions have been implemented.
Code Documentation -- Good (1)
- If you use packages to organize M, V, C classes, the document will be easier to understand.
- Clear description for each class, method, good.
Test Cases -- Good (2)
- In RecipeTest: You create a new Recipe object in each test case. Actually, you can use setUp() to do this since this is why we need this method. setUp() will set up the testing environment for each test case. By the way, tearDown() is used to clean up the testing environment after each test case.
- In RecipeModelTest: Why do you code 'model.getAllRecipes().removeAll(model.getAllRecipes());' in setUp() method? We do cleaning up in tearDown() method.
- In general, the testing is thorough and makes sense.
OOD -- Excellent (2)
- The diagram is simple but makes sense.
- Clearly labeled.
- M, V, C classes are clear in the diagram.