Является ли "файл" также участвовать в открытом закрытом принципе?

Я знаю в соответствии с принципом открытого закрытого типа, что-то вроде класса, интерфейса, кода... должно быть неизменным при добавлении новых функций или содержимого, но является ли файл в этом случае?

Я разрабатывал игру, в ней есть информация о монстрах, и игра (на стороне клиента) может загружать или заменять некоторые файлы, если есть новые монстры для добавления или обновления.

Я беспокоился о том, каким должен быть формат информации о монстре: 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 новый (может потребоваться дополнительная строка для хранения статуса обновления). в базе данных сервера).

Но внезапно я вспоминаю принцип "открыто-закрыто", добавление чего-то нового не должно изменять текущий контент, кажется нецелесообразным заменять файл при добавлении нового монстра.

Выше приведен только пример того, почему я думаю, что "файл" включает в себя принцип открытого закрытого типа, а не спрашивает, какой формат лучше. Основной вопрос, который я хочу спросить, не в том, какой формат файла лучше, а в определении открытого закрытого принципа, потому что я не могу найти какое-либо определение, в котором упоминается "файл", после его подтверждения я могу определить, какой формат файла следует использовать.

0 ответов

Другие вопросы по тегам