Является ли "файл" также участвовать в открытом закрытом принципе?
Я знаю в соответствии с принципом открытого закрытого типа, что-то вроде класса, интерфейса, кода... должно быть неизменным при добавлении новых функций или содержимого, но является ли файл в этом случае?
Я разрабатывал игру, в ней есть информация о монстрах, и игра (на стороне клиента) может загружать или заменять некоторые файлы, если есть новые монстры для добавления или обновления.
Я беспокоился о том, каким должен быть формат информации о монстре: 1 файл со всей информацией о монстре или у каждого монстра есть отдельный файл?
1.Сохраните всю информацию о монстрах в одном файле (например, monsterlist.json), каждый раз, добавляя нового монстра, он заменяет файл, например:
{
"monsterList":[
{
"id":1,
"hp":100,
"attack":230,
},
{
"id":2
"hp":500
"attack":980
}
]
}
2.Каждый монстр имеет отдельный файл, каждый раз, когда добавляется новый монстр, также добавляется новый монстр json:
monster1.json
{
"id":1,
"hp":100,
"attack":230,
}
monster2.json
{
"id":2,
"hp":500,
"attack":980,
}
В начале я думаю, что случай 1 наиболее удобен, потому что когда я добавляю или обновляю монстров, мне нужно только заменить monsterlist.json, но для случая 2 мне нужно знать, какой json новый (может потребоваться дополнительная строка для хранения статуса обновления). в базе данных сервера).
Но внезапно я вспоминаю принцип "открыто-закрыто", добавление чего-то нового не должно изменять текущий контент, кажется нецелесообразным заменять файл при добавлении нового монстра.
Выше приведен только пример того, почему я думаю, что "файл" включает в себя принцип открытого закрытого типа, а не спрашивает, какой формат лучше. Основной вопрос, который я хочу спросить, не в том, какой формат файла лучше, а в определении открытого закрытого принципа, потому что я не могу найти какое-либо определение, в котором упоминается "файл", после его подтверждения я могу определить, какой формат файла следует использовать.