Closed jordynbx closed 3 years ago
@jordynbx and @hmkurth One thing to add to this, there are some sneaky System.out.printlns/stacktraces out there. Don't you love it when instructor-provided code has built-in standards "violations"? :(
Thanks so much @jordynbx, this is great feedback and i have already started implementing some of the changes you suggested!
Design/Code Review 1
Project:
Developer: Heather Kurth
Reviewer: Jordyn Barbiaux
2. Is professional and free of typos, slang, etc.
3. Thoroughly explains the problem and the solution.
4. Is understandable by the average person.
2. The order in which values are displayed are logical and easy to understand/use
3. The order in which the form fields entered are logical and easy to understand/use
4. All data discussed/documented (problem statement, flow, db design, etc.) is represented on the screens.
5. Project plan and time log are up-to-date.
2. There are at least two 1-to-many relationships.
3. The model represents good database design.
Is the website column in food_resources and resource_owners referring to the same website? If so, you might not need it in both columns.
Some of your columns might be bigger than necessary for the data you're storing which can slow down your application (for example - service_area at 1000)
There is a description field in resource_types and food_resources, but if resource_types is meant to categorize different types of resources you likely don't need the description column there because it will be covered in the individual resource descriptions. Another option would be to shorten it to 50-100 character with a brief description of that type of resource, if that data will be present somewhere in your app.
It looks like you have an id column for food_resources in the resource_types tables. I'd actually recommend doing the opposite, since you want to have each food resource categorized by a specific type from the resource_types table. The way it's laid out right now you will only be able to identify one food resource of each type, when I think your intention was to have all resources be one of the types listed. You do have a column for resource types in the food_resources table but it's not linked to the resource_types table. I'd recommend removing the resource_type column from the food_resources table and replace it with a resource_types_id foreign key column that corresponds to one of the types in the resource_types table, and then removing the food_resource_id column from resource_types so that multiple food resources can be associated with a type.
* In the resource_owners table you have types_offered which is plural. Assuming a resource owner will offer more than one type of resource, you might consider breaking that out into a new table where resource_owners are mapped to resource_types by id of each (i think this would be many to many) so that you don't have duplicative info in the resource_owners table if a resource owner offers multiple types (this is only relevant if a resource owner will provide multiple types).
2. a .gitignore file for IntelliJ Java projects has been implemented.
3. There is not any redundant or copy/paste code in the JSPs or classes.
4. Classes are appropriately-sized (no monster classes).
Property files are used appropriately: no hard-coded values.
5. Logging statements are used rather than System.out.println and printStackTrace (be sure to use a search to look for these!).
6. There are appropriate unit tests/code coverage.