There should be several use cases in a process:
User Logon
View Current card friends
Join a board
Exit
In the process of playing cards, there are mainly the following:
Determine the banker
Licensing
Reserve bottom
Sequential licensing (this section of logic requires good encapsulation)
Scoring to determine the outcome
Others:
User-related chat and communication
In this process, the following classes mentioned by bigeagle are basically summarized:
A hall (in fact, the hall should contain many versions of tables) users can view the status of each table and select the table they want to add.
Table (or desk) tables can be understood as a Bureau Administrator (or, tables only display), and a class is used to manage the board. This does not seem to have such a manager in our general card playing process, because some work is done by ourselves (such as card issuing and scoring)
Poker itself is a type. There must be an overall concept of cards. It determines the total number of cards and the licensing process.
Cards and users are basically these concepts.
The hall is a service concept and requires a daemon process. In addition, it can be considered as a "list" mode.