Timeline for Rock, Paper, Scissors - Applying OOP Principles
Current License: CC BY-SA 4.0
21 events
when toggle format | what | by | license | comment | |
---|---|---|---|---|---|
May 13, 2021 at 22:56 | comment | added | the VBE - it's right for me | Well I don't need to embarrass myself trying a full review but can still go through and see if I notice anything he might have missed. | |
May 12, 2021 at 18:08 | answer | added | Greg Burghardt | timeline score: 3 | |
May 11, 2021 at 21:03 | comment | added | ImNotThatCSharp | @theVBE-it'srightforme That would really be appreciated! | |
May 11, 2021 at 10:42 | comment | added | the VBE - it's right for me | honestly on second thought I can probably be of at least some help trying to review it so will make attempt tomorrow | |
May 10, 2021 at 13:16 | history | edited | ImNotThatCSharp | CC BY-SA 4.0 |
added 566 characters in body
|
May 10, 2021 at 13:11 | history | edited | ImNotThatCSharp | CC BY-SA 4.0 |
added 566 characters in body
|
May 10, 2021 at 13:04 | history | edited | Peter Csala |
added relevant tag
|
|
May 10, 2021 at 13:00 | history | edited | ImNotThatCSharp | CC BY-SA 4.0 |
deleted 8 characters in body
|
May 10, 2021 at 11:35 | history | edited | ImNotThatCSharp | CC BY-SA 4.0 |
deleted 44 characters in body
|
May 10, 2021 at 0:00 | history | tweeted | twitter.com/StackCodeReview/status/1391543508239065097 | ||
May 9, 2021 at 16:09 | history | edited | ImNotThatCSharp | CC BY-SA 4.0 |
deleted 49 characters in body
|
May 9, 2021 at 15:48 | history | edited | ImNotThatCSharp | CC BY-SA 4.0 |
added 11324 characters in body
|
May 9, 2021 at 13:50 | comment | added | the VBE - it's right for me |
Naturally this means they can be used together; in your case just declare public interface IPlayer with same set of methods in Player , have Player : IPlayer , and change the references in the client classes from Player to IPlayer .
|
|
May 9, 2021 at 13:47 | comment | added | the VBE - it's right for me | Interface defines the set of methods/features/whatever that client code (eg GameManager and ScoreManager) can expect an object to conform to, so it more purely achieves the interchangeability aspect. In the conceptual framework of separating concerns, the concern of the interface would be to define what the object looks like externally, while the concern of the abstract base class would be to contain the common properties/functionality. | |
May 9, 2021 at 13:14 | comment | added | ImNotThatCSharp | @theVBE-it'srightforme Thanks for your comments. I used an abstract Player base class because I wanted derived classes to (1) have the same basic properites and behaviour and (2) be interchangeable in my GameManager and ScoreManager classes (since both you and the computer can play the game). Therefore, I'm not sure I fully understand the advantage of using a Player interface in this case. | |
May 9, 2021 at 12:42 | comment | added | the VBE - it's right for me |
I don't have expertise for a proper review but I am almost certain you should be using an interface for the Player subclasses rather than holding references to them using the base class. The point of abstract base class is to implement common functionality while interface is to represent object confirming to an expected set of functionality.
|
|
May 9, 2021 at 12:07 | history | edited | ImNotThatCSharp | CC BY-SA 4.0 |
added 46 characters in body; edited title
|
May 9, 2021 at 12:04 | history | undeleted | ImNotThatCSharp | ||
May 9, 2021 at 6:08 | history | deleted | ImNotThatCSharp | via Vote | |
May 8, 2021 at 17:13 | review | First posts | |||
May 8, 2021 at 17:52 | |||||
May 8, 2021 at 17:10 | history | asked | ImNotThatCSharp | CC BY-SA 4.0 |