evb87ar писал(а):а) Учитесь писать красивый код. Если в коде много beginend в которых вы начинаете путаться - делайте рефакторинг кода, применяя метод KISS или же подобные. Для этого поищите на хабрахабре посты о написании большого кода, там есть отличный пример с исходниками Quake.
б) Сейчас практически во всех IDE есть функция подсветки скобокоператоров блоков.
в) Применяйте сворачивание кода.
Лично я применяю такой стиль оформления кода:
а) этому отчасти должен способствовать или определять сам язык и среда разработки, на KISS посмотрю, спасибо за совет
б) редактор не заменяет компилятор
в) что это?
Добавлено спустя 2 минуты 33 секунды:Лекс Айрин писал(а): Не повысится читабельность. Да и кто мешает добавить комментарий, если уж так хочется, хоть после каждого оператора?
Я ожидаю повышения читабельности, улучшения качества поддержки кода и т.д.
Если begin и end, о в процессе изменения кода, все комменты придётся править. Т.е. брать отслеживание на себя. А я хочу, чтобы за меня это делал компилятор. Чтобы на этапе компиляции он тыркнул мне, где я не обеспечил соответсвие между begin и end.
Добавлено спустя 7 минут 20 секунд:B4rr4cuda писал(а):Если в делфи, то еще и cnWizards помогают, там есть прелестный менеджер, который все вложенные begin-end отрисовывает другим цветом и показывает между ними связь.
Никакой путаницы даже в корявой простыне на пару pgDown-ов.
Поддерживаю, допустим изначально:
- Код: Выделить всё
begin // func1
код
begin // func2
код
begin // func3
end; // func3
код
end; // func2
код
end; // func1
если потом править. т.е. удалять begin и end, то в конечном счёте может получиться более сложный код на основе такой лабуды:
- Код: Выделить всё
begin // func2
end; // func5
Как через год вспомнить этот код? Как этот код поймт сторонний человек? Как поддерживать такой код?
Именно ппо этому я и хочу помощь компилятора. Т.е. чтобы компилятор заставил меня привести begin и end в соответсвии друг с другом, чтобы мне не пришлось держать их в своей голове.
Добавлено спустя 1 минуту 16 секунд:Лекс Айрин писал(а):B4rr4cuda, о приблемах допиливания я тоже думал, вот только не решился написать. Причем, если реализовать подобно описанному в заглавном посте, то их будет еще больше. Почему, думаю, не стоит озвучивать.
Именно стоит. Мне не очевидно, что проблем будет больше. Я считаю, что проблем будет меньше, код будет понятнее и надёжнее.