Skip to content

Commit 848d374

Browse files
committed
doc(diagnostics): добавлены разделы исключений для MagicDate и MagicNumber
- Включены новые разделы "Исключения" в документацию для диагностики магических дат и чисел. - Описаны случаи, когда диагностика не срабатывает, включая присваивание к свойствам структур и вызовы методов. - Обновлены примеры кода для лучшего понимания исключений.
1 parent c1d28c5 commit 848d374

File tree

4 files changed

+98
-2
lines changed

4 files changed

+98
-2
lines changed

docs/diagnostics/MagicDate.md

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
<!-- Блоки выше заполняются автоматически, не трогать -->
44
## Описание диагностики
5+
56
Магическая дата - это любая дата в вашем коде, которая не очевидна без погружения в контекст.
67

78
## Примеры
@@ -12,7 +13,7 @@
1213
Если текДата < '20151021' Тогда
1314
ХоверБордБудетИзобретен = Неопределено;
1415
КонецЕсли;
15-
```
16+
```
1617

1718
Хорошо
1819

@@ -35,3 +36,26 @@
3536
ХоверБордБудетИзобретен = Неопределено;
3637
КонецЕсли;
3738
```
39+
40+
## Исключения
41+
42+
Диагностика не срабатывает в следующих случаях:
43+
44+
### Присваивание к свойствам структуры
45+
46+
```bsl
47+
// НЕ срабатывает - осмысленное имя свойства
48+
СтруктураДанных.ДатаНачала = '20230101';
49+
СтруктураДанных.ДатаОкончания = '20241231';
50+
51+
// НЕ срабатывает - присваивание к свойству структуры
52+
НоваяСтруктура = Новый Структура("ДатаСоздания");
53+
НоваяСтруктура.ДатаСоздания = '20240101';
54+
```
55+
56+
### Вызовы методов
57+
58+
```bsl
59+
// НЕ срабатывает - вызов метода
60+
НоваяСтруктура.Вставить("ДатаСоздания", '20240101');
61+
```

docs/diagnostics/MagicNumber.md

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
Возврат Длительность < 10 * 60 * 60;
1616
1717
КонецФункции
18-
```
18+
```
1919

2020
Хорошо
2121

@@ -30,3 +30,27 @@
3030
3131
КонецФункции
3232
```
33+
34+
## Исключения
35+
36+
Диагностика не срабатывает в следующих случаях:
37+
38+
### Присваивание к свойствам структуры
39+
40+
```bsl
41+
// НЕ срабатывает - осмысленное имя свойства
42+
СтруктураДанных.Код = 100;
43+
СтруктураДанных.Количество = 5;
44+
45+
// НЕ срабатывает - присваивание к свойству структуры
46+
НоваяСтруктура = Новый Структура("МояПеременная");
47+
НоваяСтруктура.МояПеременная = 20;
48+
```
49+
50+
### Вызовы методов
51+
52+
```bsl
53+
// НЕ срабатывает - вызов метода
54+
НоваяСтруктура.Вставить("МояПеременная", 20);
55+
Массив.Добавить(1);
56+
```

docs/en/diagnostics/MagicDate.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
<!-- Блоки выше заполняются автоматически, не трогать -->
44
## Description
5+
56
Magic date is any date in your code that does not immediately become apparent without being immersed in context.
67

78
## Examples
@@ -35,3 +36,26 @@ If CurrentDate < DateInventionHover() Then
3536
HoverBoardWillBeInvented = Undefined;
3637
EndIf;
3738
```
39+
40+
## Exceptions
41+
42+
The diagnostic does not trigger in the following cases:
43+
44+
### Structure property assignment
45+
46+
```bsl
47+
// Does NOT trigger - meaningful property name
48+
DataStructure.StartDate = '20230101';
49+
DataStructure.EndDate = '20241231';
50+
51+
// Does NOT trigger - structure property assignment
52+
NewStructure = New Structure("CreationDate");
53+
NewStructure.CreationDate = '20240101';
54+
```
55+
56+
### Method calls
57+
58+
```bsl
59+
// Does NOT trigger - method call
60+
NewStructure.Insert("CreationDate", '20240101');
61+
```

docs/en/diagnostics/MagicNumber.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,3 +30,27 @@ Function GetsTheInterval (Duration in Seconds)
3030
3131
End Function
3232
```
33+
34+
## Exceptions
35+
36+
The diagnostic does not trigger in the following cases:
37+
38+
### Structure property assignment
39+
40+
```bsl
41+
// Does NOT trigger - meaningful property name
42+
DataStructure.Code = 100;
43+
DataStructure.Quantity = 5;
44+
45+
// Does NOT trigger - structure property assignment
46+
NewStructure = New Structure("MyVariable");
47+
NewStructure.MyVariable = 20;
48+
```
49+
50+
### Method calls
51+
52+
```bsl
53+
// Does NOT trigger - method call
54+
NewStructure.Insert("MyVariable", 20);
55+
Array.Add(1);
56+
```

0 commit comments

Comments
 (0)