walkonmars36 / card-game-challenge

0 stars 0 forks source link

Card Game Review #1

Open nologyRob opened 2 years ago

nologyRob commented 2 years ago

Halfway Challenge - Marking Scheme

Note

There is a chance of getting 120/100 due to adding and extending the project.

There is no penalty for not attempting stage 4a & 4b.

Brief Stages (50%)

Score Description
+10 Stage 1: They have created a Card & CardGame class with relevant fields, getters and setters. The CardGame should have a deckOfCards field that has 52 Cards.
+20 Stage 2: In the CardGame class they have implemented and have functioning the following methods dealCard(), sortDeckIntoSuits(), shuffleDeck() and sortDeckInNumberOrder().
+30 Stage 3: They have started creating the Snap class and it extends CardGame. It is not fully implemented but shows signs of how it would / could work.
+40 Stage 3: They have completed the Snap class and have it interacting with command line. A card should be drawn, if the suit matches the game should end.
+50 Stage 4a + 4b: These stage is an extension if they have implemented either they are a super star.

OOP (50%)

You should feel confident with their application of each pillar.

Total each OOP pillar they have demonstrated.

Score Description
+10 Abstraction: Classes should be well designed and only do one thing. The Controller can be the exception. Clear use of a constructors to populate fields.
+10 Encapsulation: Methods & fields should use appropriate access methods. Only public if being used by a client.
+10 Inheritance: Has been used correctly where it makes sense to use it.
+10 Polymorphism: They have demonstrated Overriding and Overloading methods in a class or sub class.
+10 Bonus: Using interfaces or Abstract classes where it is relevant.

Code Quality (20%)

Score Description
+0 Code is unreadable due to an extreme lack of care for indentation, casing, consistency etc.
+10 Some thought has been put into readability, but variables and functions are poorly named or there is commented development code through the project.
+15 Most variables and functions have meaningful names, there is good indentation, but there may be some minor inconsistencies across the code
+20 All variables and functions have meaningful names, there a no casing issues, there is clear separation between all sections of code, and complex conditions or logic are easily understood
nologyRob commented 2 years ago

Brief Stages - Stage 3 = 30 Points

OOP - Polymorphism(via Overriding), Encapsulation (mostly), Inheritance (via CardGame/Snap), 50/50 Abstraction = 35 Points

Code Quality 10-15 so will go with 12.5 (Lots of commented out code)

Overall 77.5%

walkonmars36 commented 2 years ago

Thanks Rob, very happy with that. Yes fair point about commented out code, I only left it as I thought we were presenting so it showed an alternative approach to the method that I'd be able to talk about. I went with IntelliJ's suggestions. Thanks again

walkonmars36 commented 2 years ago

Oh and yes,same for the main method too (commented out code)