Hi everyone I'm a beginer at Java,

I'm currently designing a UML sketch for my Java program. The code should work like the following game: Road Trip FRVR (link: https://roadtrip.frvr.com/).

The information contained in each level will be obtained from a configuration (config) file. There will be a method in charge of parsing this configuration file - its name will be indicated at the time each level is created - and fill a 2D array that will store the information of each level. The format of this configuration file will be like:

# Level 1

# Rows and columns
4

# Difficulty
STARTER

# Board
F·~·
rlH·
R·Rl
·M·S

The file can contain comments in a line, that can be distinguished of data because each line starts with '#'.

The first number indicates the number of rows and columns that the board of the game has (i.e. 4x4). If the board of the game has a size less than 3 then an exception is thrown.

The second element makes reference to the difficulty and the following values can be assigned:
STARTER, JUNIOR, EXPERT, MASTER o WIZARD.

For the name of the configuration file, the size (#rows x #columns) and difficulty, there must be a way to consult the information, from anywhere, its values.

Given a certain level, either the size or difficulty and name of the file cannot be modified once initialized.

DISCUSSION UML SKETCH

Having the requirements described before, I'm thinking now about the UML sketch. I don't have a clear idea if I would have to define a class for the configuration file or not. For instance, I think I should define a class to describe a level and therefore have its corresponding constructor and this one should get the values from the method to parse the config file. Besides this, I also have in mind to create an enumeration for the difficulty levels.

At the same time, I'm thinking to create a class for the configuration file, however, it's not clear to me if it makes sense or not because it would imply more computing power and maybe lower the performance? (more code...)

Finally, having the requirements described above, it is not clear to me to what it refers with "
Estoy pensando en el diseño del diagrama UML para los requisitos definidos anteriormente y no tengo claro si debería definir una clase para el fichero de configuración o no. Por ejemplo, creo que debería definir una clase para el nivel/tablero con su correspondiente constructor y que este cogiera los valores a través del método de parseo. Además, también tengo pensado crear una enumeración para los niveles de dificultad.

Al mismo tiempo, se me ocurre definir otra clase para el fichero de configuración, sin embargo, no tengo claro si tiene sentido o no ya que implicaría más procesos de compilación y quizás empeorar el rendimiento.

Finalmente, entre estos requisitos, no tengo claro a qué se refiere con " For the name of the configuration file, the size (#rows x #columns) and difficulty, there must be a way to consult the information, from anywhere, its values."

Do you have any idea on how to design this UML? What do you think about mine, will it work?

Thanks in advance