|
1 | | - |
2 | 1 | # Руководство по написанию документации |
3 | 2 |
|
4 | | -Этот документ описывает правила и стандарты для создания и ведения документации по скриптам в проекте. Соблюдение этих правил обеспечит единообразие и высокое качество документации. |
| 3 | +Этот документ описывает правила и стандарты для создания и ведения документации по скриптам в проекте. Соблюдение этих |
| 4 | +правил обеспечит единообразие и высокое качество документации. |
5 | 5 |
|
6 | 6 | ## 1. Общие принципы |
7 | 7 |
|
8 | 8 | - **Язык**: Вся документация должна быть написана на **русском языке**. |
9 | | -- **Цель**: Документация должна быть понятной, краткой и полезной. Ее главная задача — быстро объяснить, **зачем нужен тот или иной модуль и как он упрощает разработку**. |
| 9 | +- **Цель**: Документация должна быть понятной, краткой и полезной. Ее главная задача — быстро объяснить, **зачем нужен |
| 10 | + тот или иной модуль и как он упрощает разработку**. |
10 | 11 | - **Стиль**: Пишите интересно и по делу, избегая излишней детализации, но не упуская важные моменты. |
11 | 12 |
|
12 | 13 | ## 2. Структура и организация файлов |
13 | 14 |
|
14 | 15 | Вся документация по скриптам находится в папке `Assets/Neoxider/Docs`. |
15 | 16 |
|
16 | | -- **Простые модули**: Для каждого самостоятельного модуля (например, `Audio`, `Bonus`), который находится в своей папке в `Assets/Neoxider/Scripts`, создается один `.md` файл. |
17 | | - - *Пример*: `Assets/Neoxider/Scripts/Bonus` -> `Assets/Neoxider/Docs/Bonus.md` |
| 17 | +- **Простые модули**: Для каждого самостоятельного модуля (например, `Audio`, `Bonus`), который находится в своей папке |
| 18 | + в `Assets/Neoxider/Scripts`, создается один `.md` файл. |
| 19 | + - *Пример*: `Assets/Neoxider/Scripts/Bonus` -> `Assets/Neoxider/Docs/Bonus.md` |
18 | 20 |
|
19 | | -- **Сложные модули**: Для модулей, содержащих множество скриптов и/или подпапок (например, `Extensions`, `Tools`), в `Docs` создается отдельная **папка** с тем же именем. |
20 | | - - Внутри этой папки создается: |
21 | | - 1. `README.md` с кратким описанием всего раздела и ссылками на документацию по каждому скрипту. Если модуль содержит подпапки, `README.md` также должен содержать оглавление со ссылками на разделы этих подмодулей для быстрой навигации. |
22 | | - 2. Отдельный `.md` файл для **каждого** скрипта в модуле. |
23 | | - - *Пример*: `Assets/Neoxider/Scripts/Extensions` -> `Assets/Neoxider/Docs/Extensions/` |
| 21 | +- **Сложные модули**: Для модулей, содержащих множество скриптов и/или подпапок (например, `Extensions`, `Tools`), в |
| 22 | + `Docs` создается отдельная **папка** с тем же именем. |
| 23 | + - Внутри этой папки создается: |
| 24 | + 1. `README.md` с кратким описанием всего раздела и ссылками на документацию по каждому скрипту. Если модуль |
| 25 | + содержит подпапки, `README.md` также должен содержать оглавление со ссылками на разделы этих подмодулей для |
| 26 | + быстрой навигации. |
| 27 | + 2. Отдельный `.md` файл для **каждого** скрипта в модуле. |
| 28 | + - *Пример*: `Assets/Neoxider/Scripts/Extensions` -> `Assets/Neoxider/Docs/Extensions/` |
24 | 29 |
|
25 | 30 | ## 3. Содержание файла документации |
26 | 31 |
|
27 | 32 | Каждый файл документации (`.md`) должен иметь следующую структуру: |
28 | 33 |
|
29 | 34 | ### 3.1. Введение |
30 | | -- Начните с краткого и интересного вступления. Расскажите, какую проблему решает этот модуль и какие преимущества дает его использование. |
| 35 | + |
| 36 | +- Начните с краткого и интересного вступления. Расскажите, какую проблему решает этот модуль и какие преимущества дает |
| 37 | + его использование. |
31 | 38 |
|
32 | 39 | ### 3.2. Описание классов |
| 40 | + |
33 | 41 | Для каждого ключевого класса в модуле необходимо предоставить следующую информацию: |
34 | 42 |
|
35 | | -1. **Название класса** (в формате заголовка, например, `### КлассНазвание`). |
36 | | -2. **Пространство имен (Namespace)** и **Путь к файлу**. |
37 | | -3. **Краткое описание**: 1-2 предложения о назначении класса. |
38 | | -4. **Ключевые особенности (опционально)**: Список основных возможностей. |
39 | | -5. **Публичные свойства и поля (Public Properties and Fields)**: Список всех публичных свойств и полей с кратким описанием их назначения и типа данных. |
40 | | -6. **Публичные методы (Public Methods)**: Список публичных методов с кратким описанием. **Обязательно** указывайте, какой тип данных возвращает метод и что означает возвращаемое значение (например, `Spend(float count)` возвращает `bool` — `true` при успехе). |
41 | | -7. **Unity Events**: **Обязательно** опишите все публичные `UnityEvent`. Укажите, когда вызывается событие и какие параметры (если есть) оно передает. |
| 43 | +1. **Название класса** (в формате заголовка, например, `### КлассНазвание`). |
| 44 | +2. **Пространство имен (Namespace)** и **Путь к файлу**. |
| 45 | +3. **Краткое описание**: 1-2 предложения о назначении класса. |
| 46 | +4. **Ключевые особенности (опционально)**: Список основных возможностей. |
| 47 | +5. **Публичные свойства и поля (Public Properties and Fields)**: Список всех публичных свойств и полей с кратким |
| 48 | + описанием их назначения и типа данных. |
| 49 | +6. **Публичные методы (Public Methods)**: Список публичных методов с кратким описанием. **Обязательно** указывайте, |
| 50 | + какой тип данных возвращает метод и что означает возвращаемое значение (например, `Spend(float count)` возвращает |
| 51 | + `bool` — `true` при успехе). |
| 52 | +7. **Unity Events**: **Обязательно** опишите все публичные `UnityEvent`. Укажите, когда вызывается событие и какие |
| 53 | + параметры (если есть) оно передает. |
42 | 54 |
|
43 | 55 | ## 4. Рабочий процесс |
44 | 56 |
|
45 | 57 | Чтобы обеспечить точность и полноту документации, следуйте этому процессу: |
46 | 58 |
|
47 | | -1. **Анализ папки**: Изучите целевую папку в `Assets/Neoxider/Scripts`, чтобы понять ее структуру и состав. |
48 | | -2. **Чтение по одному файлу**: Внимательно читайте **по одному файлу за раз**. Это критически важно для глубокого понимания каждого скрипта перед тем, как его описывать. |
49 | | -3. **Написание документации**: Следуя структуре, описанной в разделе 3, напишите текст документации. |
50 | | -4. **Запись в файл**: Сохраните готовую документацию в соответствующий `.md` файл. |
| 59 | +1. **Анализ папки**: Изучите целевую папку в `Assets/Neoxider/Scripts`, чтобы понять ее структуру и состав. |
| 60 | +2. **Чтение по одному файлу**: Внимательно читайте **по одному файлу за раз**. Это критически важно для глубокого |
| 61 | + понимания каждого скрипта перед тем, как его описывать. |
| 62 | +3. **Написание документации**: Следуя структуре, описанной в разделе 3, напишите текст документации. |
| 63 | +4. **Запись в файл**: Сохраните готовую документацию в соответствующий `.md` файл. |
51 | 64 |
|
52 | 65 | ## 5. Обновление документации при изменениях |
53 | 66 |
|
54 | 67 | При перемещении или переименовании файлов скриптов необходимо обновить документацию: |
55 | 68 |
|
56 | | -1. **Обновление путей**: Если скрипт был перемещен в другую папку, обновите путь к файлу в документации. |
57 | | - - *Пример*: Если `ScoreManager.cs` был перенесен из `Tools/Managers/` в `Tools/Components/`, обновите путь в соответствующем `.md` файле. |
58 | | -2. **Обновление ссылок**: Проверьте и обновите все ссылки на перемещенный скрипт в других файлах документации (README файлы, связанные компоненты). |
59 | | -3. **Перемещение файла документации**: Если скрипт перемещен в другую подпапку, рассмотрите возможность перемещения соответствующего `.md` файла документации в соответствующую структуру папок. |
60 | | - - *Пример*: Если скрипт перенесен из `Managers/` в `Components/`, документацию тоже следует переместить из `Docs/Tools/Managers/` в `Docs/Tools/Components/`. |
| 69 | +1. **Обновление путей**: Если скрипт был перемещен в другую папку, обновите путь к файлу в документации. |
| 70 | + |
| 71 | +- *Пример*: Если `ScoreManager.cs` был перенесен из `Tools/Managers/` в `Tools/Components/`, обновите путь в |
| 72 | + соответствующем `.md` файле. |
| 73 | + |
| 74 | +2. **Обновление ссылок**: Проверьте и обновите все ссылки на перемещенный скрипт в других файлах документации (README |
| 75 | + файлы, связанные компоненты). |
| 76 | +3. **Перемещение файла документации**: Если скрипт перемещен в другую подпапку, рассмотрите возможность перемещения |
| 77 | + соответствующего `.md` файла документации в соответствующую структуру папок. |
| 78 | + |
| 79 | +- *Пример*: Если скрипт перенесен из `Managers/` в `Components/`, документацию тоже следует переместить из |
| 80 | + `Docs/Tools/Managers/` в `Docs/Tools/Components/`. |
0 commit comments