|
0 / 0 / 0
Регистрация: 19.07.2015
Сообщений: 21
|
||||||
Зачем делают "Сдвиг скобок"?20.12.2015, 15:15. Показов 808. Ответов 11
Метки нет (Все метки)
Всегда хотел узнать зачем программисты, редакторы встроенные в среду разработки, форматируют текст таким образом?
Под сдвигом скобок я понимаю форматирование кода. Например:
Подобное форматирование встречаю почти везде, практически в каждом языке-коде-среде разработки. Сначала я думал, что это сделано для удобства. Видно где начинается блок кода и где заканчивается. Визуально проводим вертикальную черту. Но в реальности, если процедура/блок кода больше одного экрана отследить начало блока уже сложно. Намного удобнее когда при выделении одной скобки (пусть начало кода), редактор автоматически подсвечивает вторую скобку - конец кода. И не надо ничего искать и форматировать (пускай даже автоформатирование.) Да, с большой вложенностью весь код начинает съезжать влево...
0
|
||||||
| 20.12.2015, 15:15 | |
|
Ответы с готовыми решениями:
11
Зачем делают каталоги? Зачем иногда так делают? Зачем люди делают каталоги? |
|
529 / 432 / 159
Регистрация: 25.11.2014
Сообщений: 1,662
|
||
| 20.12.2015, 15:19 | ||
|
0
|
||
|
0 / 0 / 0
Регистрация: 19.07.2015
Сообщений: 21
|
|||||||
| 20.12.2015, 16:09 [ТС] | |||||||
|
А вот большая вложенность кода - это уже реже, но бывает. Но это уже ОФФ... Вопрос зачем форматируют код таким образом? Предположим, отформатировав код таким образом, я сразу скажу где конец класса и пространства имен. А со сдвигом скобок - мне придётся искать скобку выше, на этой же позиции. А если код большой - это трата лишнего времени.
0
|
|||||||
|
Модератор
3132 / 2279 / 469
Регистрация: 26.03.2015
Сообщений: 8,870
|
|
| 20.12.2015, 17:27 | |
|
Со сдвигом код читать удобнее.
Все нормальные редакторы при выделении скобки подсвечивают парную. Комментарии к закрывающим скобкам можно использовать, но очень выборочно. Иначе они захламляют код (если их использовать для каждого цикла). Код проекта (который приходится постоянно править) должен быть оформлен максимально читабельно. Оформление кода библиотек (в которые не планируется вносить изменения) уже не критично.
0
|
|
|
0 / 0 / 0
Регистрация: 19.07.2015
Сообщений: 21
|
|||
| 20.12.2015, 19:05 [ТС] | |||
|
Я не спорю, что есть правила оформления кода и общепринятые стандарты, но лично мне не очень удобно. Если кода мало - то зачем сдвиг? Я и так вижу, какая скобка/его часть к чему относится. Если кода много - то зачем сдвиг? Прокрутив 500 строк кода вниз, я просто не найду по сдвигу, где какая часть кода заканчивается/начинается. Вот подсвечивание скобок, скажем как в notepad++ это удобно. По моему сдвиг - это отсылка к прошлому. Когда редакторы были более простыми. И программисты были вынуждены использовать этот приём, для удобочитаемости кода. Сейчас эта необходимость отпала. Редакторы стали совершеннее. Если я открою код без сдвига в блокноте, я действительно долго буду искать где начало-конец, циклы...вложенность и т.д. Код будет плохо читаем. Но я не буду открывать его в блокноте. А открою в современном редакторе. И без сдвигов легко прочту код. Поправьте, если не прав. Просто я уже писал код длинной 2000 строк, в одном юните/модуле. И к сожалению, по условию задачи, мне пришлось сделать огромную вложенность. Сдвиг нигде не использовал. Подсветка закрывающей скобки решает все проблемы.
0
|
|||
|
Модератор
3132 / 2279 / 469
Регистрация: 26.03.2015
Сообщений: 8,870
|
||
| 20.12.2015, 20:35 | ||
|
Так что, если бы это зависило от меня, я бы скобки убрал, а сдвиги оставил.
0
|
||
|
923 / 639 / 198
Регистрация: 08.09.2013
Сообщений: 1,693
|
||||
| 20.12.2015, 21:20 | ||||
|
В общем, вы можете использовать свой метод при условии, что никто кроме вас читать код не будет. Подавляющему большинству отступы удобнее скобок
0
|
||||
|
529 / 432 / 159
Регистрация: 25.11.2014
Сообщений: 1,662
|
||
| 20.12.2015, 21:53 | ||
|
Добавлено через 3 минуты
0
|
||
|
0 / 0 / 0
Регистрация: 19.07.2015
Сообщений: 21
|
|||||||||||||
| 20.12.2015, 22:09 [ТС] | |||||||||||||
|
Более 4х вложенных циклов пока не встречал. Как вариант кода.
Вы можете сказать, к чему относятся последние скобки? Никто не сможет. Вы не видите всего кода. Как помогает сдвиг? Никак. Вам придётся прокрутить код до начала, начала блока кода. А скажем был бы комментарий - можно было не крутить. Вот о чём я говорю. Я не задаю вопрос как писать код, как использовать сдвиги. Я задаю вопрос зачем, для чего? Вы не могли бы дать ссылку на стандарт, документацию где это разъясняется? Просто делать так, как делают все не понимая зачем это, и не получаю никакой выгоды/прироста производительности и т.д. - это странно.
0
|
|||||||||||||
|
Модератор
3132 / 2279 / 469
Регистрация: 26.03.2015
Сообщений: 8,870
|
|
| 20.12.2015, 22:20 | |
|
1
|
|
|
923 / 639 / 198
Регистрация: 08.09.2013
Сообщений: 1,693
|
||
| 21.12.2015, 18:17 | ||
|
Что касается большинства языков, то такого стандарта нет. Когда вы станете тимлидом, можете требовать писать на вашу манеру, не обращая внимания на то, что за глаза вас будут называть самодуром. :-)
0
|
||
|
100 / 35 / 21
Регистрация: 17.09.2014
Сообщений: 1,609
|
||||||||||||||||
| 24.12.2015, 14:42 | ||||||||||||||||
|
Не удобно читать, когда делают так(открывающие скобки сразу после объявления):
0
|
||||||||||||||||
| 24.12.2015, 14:42 | |
|
Помогаю со студенческими работами здесь
12
Зачем делают такое присваивание (классы)? Зачем и с какой целью это делают?! Зачем информацию whois делают публичной? Зачем COB панели делают с тремя цветами Зачем на современных сайтах делают кучу вложенных дивов ? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|