Ich bin Universitätsstudent und lerne Programmieren. Zum Üben schreibe ich ein Blackjack-Programm. Ich verwende C++ und verfolge dabei einen objektorientierten Ansatz.
Ich habe eine Deck-Klasse entworfen, die im Grunde baut und mischt ein Kartenspiel. Das erzeugte Deck besteht aus einem Array von 52 Objekten der Klasse Card. Das ist, was ich bis jetzt habe.
Mein Plan ist es, ein Geber-Objekt, das ein Deck von 52 Karten hat, eine Karte an ein zweites Spieler-Objekt und dann an die eigene Hand des Gebers zu geben.
Meine erste Frage ist: Ist es eine schlechte Praxis, das Array der Kartenobjekte in der Deck-Klasse öffentlich zu machen?
Ich frage dies, weil ich das Array als Attribut betrachte und mir beigebracht wurde, dass die meisten Attribute privat gemacht werden sollten. Ich möchte nicht anfangen, schlechte oder faule Praktiken in meinen Projekten zu verwenden und möchte es richtig machen.
Eine andere Frage: Wie werden Objekte, wie z. B. das in meinem Blackjack-Programm verwendete Kartenobjekt, im Allgemeinen von einem Objekt - wie dem Dealer - zu einem zweiten Objekt - wie einem Spieler - bewegt?