Инструмент для фиксации фигурных скобок

0

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

Есть ли инструмент, который может автоматически искать код и исправлять непревзойденные фигурные скобки?

  • 2
    Нет, нет инструментов, которые автоматически превращают неверный код в то, что вы имели в виду. Тем не менее, многие текстовые редакторы выделяют несовпадающие скобки.
  • 0
    Кажется, что его не существует, и если бы оно существовало, как бы оно узнало, куда поставить скобки? Нужно было бы найти сферу и разместить ее соответствующим образом, что, похоже, будет очень глючным и, возможно, сделает вашу проблему еще хуже. Самое близкое, что я мог бы увидеть, это хороший редактор для вашего проекта с подсветкой фигурных скобок / автоматическим завершением.
Показать ещё 1 комментарий
Теги:
curly-braces
braces

1 ответ

3
Лучший ответ

Каждый лучший текстовый редактор выделяет непревзойденные фигурные скобки. Однако автоматически фиксируются брекеты? Нет, потому что это потребует магического предсказания. Возьмем это выражение, например

x = (3 + y * 5 - 4 * 7

Где бы вы положили скобу? Это

x = (3 + y) * 5 - 4 * 7

или это

x = (3 + y * 5 - 4) * 7

Эти два очень разных выражения.


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

Как правило, ваш типичный одностраничный файл должен быть не более 2000 строк кода. Если это дольше, вы сделали что-то не так. Подобные одиночные функции не должны быть длиннее одного маленького экрана (около 50 строк).

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

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

  • 0
    Ценю помощь. Это немного проясняет, почему я не смог найти программу, которая делает это.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню