2549 / 1208 / 358
Регистрация: 30.11.2013
Сообщений: 3,826
|
|
1 | |
Нюансы оформления кода15.04.2016, 12:23. Показов 1882. Ответов 44
Метки нет (Все метки)
0
|
15.04.2016, 12:23 | |
Ответы с готовыми решениями:
44
Нюансы обучения: желание учесть все нюансы - корректность кода или overengineering? Стандарты оформления кода C и C++ стили оформления кода Правила оформления кода c++ |
GbaLog-
|
16.04.2016, 13:15
Нюансы оформления кода
#21
|
Не по теме: avgoor, Не мне об этом судить, да и вообще лучше не вскрывать тему Российской армии. :D
0
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
|
16.04.2016, 14:36 | 22 |
Ну, первое, что мы делаем при чтении кода - это проводим его семантический анализ, т.е. определяем чем является та или иная лексема (хотя, если между лексемами нет пробелов, то сначала придется сами лексемы мысленно выделять и опознавать). Если у нас строки написаны хаотично, то каждую строку мы анализируем независимо от других. Если же у нас сходные лексемы выровнены в столбик, то тут уже заранее ясно, что имя переменной надо искать под именем переменной, аргумент функции под аргументом функции, т.е. время на семантический анализ значительно сокращается. Т.е. получается, что заранее известно где что находится и где это можно найти. Ну, у Голуба это яснее изложено. А то похоже, что книг по форматированию кода никто не читает, но мнение свое тем не менее имеют, и считают, что оно-то самое авторитетное и есть.
0
|
1550 / 875 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
|
||||||
16.04.2016, 19:10 | 23 | |||||
Во во. Не знаю как вам, а мне, когда между, например, типом переменной и ее именем большой пробел, трудно глазами сопоставить одно с другим. Посмотрите оглавление любой книги:
Глава 1: Что-то там такое.....................................................................3 Глава 2: Что-то другое.........................................................................1 0 К чему там эти точки? Наверное чтоб легче сопоставить главу со страницей. Теперь код. Точки там не поставить. И мне вот здесь сложнее понять какой тип имеет foo:
0
|
1550 / 875 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
|
|
16.04.2016, 20:14 | 26 |
Одной строки. При этом, наверное, нет подсветки синтаксиса? Ну раз уж нужно имена табами выравнивать.
0
|
1550 / 875 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
|
|
16.04.2016, 20:26 | 28 |
0
|
Любитель чаепитий
|
|
16.04.2016, 20:33 | 29 |
avgoor, Ну мне, например, так приятней смотреть, да и читать легче, когда не надо в каждой строке искать место, где начинается имя переменной. Ты как бы ищешь его один раз, и остальные просто смотришь ниже.
0
|
1550 / 875 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
|
|
16.04.2016, 20:42 | 30 |
И это главная причина такого форматирования.
Маяковский стихи похожим образом писал. НО! он один так писал и никому не придет в голову, что их офигенно удобно читать. Добавлено через 3 минуты Резюмирую: приятно смотреть и удобно читать - разные вещи!
0
|
Любитель чаепитий
|
|
16.04.2016, 20:46 | 31 |
А для чего вообще форматирование тогда? Если неприятно смотреть на свой код, то и желание кодить отпадет.
Маяковский был футуристом, он любил "зажечь" читателя, может поэтому так и писал.
0
|
Любитель чаепитий
|
||||||
16.04.2016, 20:50 | 32 | |||||
del
Добавлено через 2 минуты Я понимаю, но мне и читать удобно и смотреть приятно, такие дела. А код вроде
0
|
1550 / 875 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
|
|
16.04.2016, 20:53 | 33 |
Ну, ранее в этой теме проскакивало, что такое форматирование ускоряет чтение и, чтобы осознать это - нужно прочесть кучу умных книжек. А оказалось, что просто нравится как оно выглядит. Как я и предполагал.
Добавлено через 52 секунды А на вкус и цвет, как известно, все фломастеры разные.
0
|
Любитель чаепитий
|
|
16.04.2016, 20:59 | 34 |
avgoor, Не стоит на моем примере останавливаться.
И с чего вы взяли, что это не ускоряет чтение? Очень даже, но только когда уже привыкнешь. А когда ты беспорядочно пишешь, то так, то сяк, то, конечно, ничего не увидишь хорошего в таком коде.
0
|
1550 / 875 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
|
|
16.04.2016, 21:04 | 35 |
Ключевое.
Где в крупных компаниях так форматируют? В гугле неосиляторы guideline писали?
0
|
Любитель чаепитий
|
|
17.04.2016, 09:57 | 36 |
avgoor, Ладно, я, пожалуй, лучше перестану писать что-либо, а то уже сам в своих сообщениях и мыслях путаюсь.
Добавлено через 2 минуты Отдохну и завтра отвечу. Добавлено через 12 часов 41 минуту Ну в общем-то к любому стилю кода надо привыкнуть, даже в больших IT-компаниях, таких, как Google тебе дадут ссылку на их стиль кода и ты должен к нему прирости, иначе тебя просто могут выгнать(если действительно за такое могут). Просто тот стиль, который использует Mr.X мне кажется наиболее читаемым, чем какой-либо другой, поэтому я его хотя бы пытаюсь использовать. Я не знаю где как форматируют, я ещё нигде не работал. Но могу предположить, что где-нибудь так пишут. И ещё, многие компании наверняка не задумываются о том, что после написания готового продукта их код кто-то будет читать, поэтому стиль форматирования выбирают не более читаемый, а более быстрый по написанию.
0
|
Игогошка!
1801 / 708 / 44
Регистрация: 19.08.2012
Сообщений: 1,367
|
|
17.04.2016, 11:53 | 37 |
Зря-зря-зря. 99% что потом придется отвыкать.
Чтобы где-то так писали, нужно этот стиль формализовать. Что значит формализовать? Это значит написать правила, однозначно определяющие форматирование одного и того же кода. Потому что если один код может быть отформатирован совсем по-разному разными людьми (что при данном стиле так оно и есть, как мне думается), то теряется консистентность по всей кодовой базе. А это ничем не лучше отсутствия вообще какого-либо стиля. Да и средства автоформатирования не смогут адекватно проверять такое на прекоммитном хуке, как и просто форматировать. Ничего подобного. Если компания озаботилась гайдом по коду, то ее усилия очевидно направлены именно на сопровождение. Да если даже убрать всякое бизнес-вэлью, то лично мне просто крайне неудобно этот код читать. Вместо того, чтобы спокойненько и плавно перемещаться по коду, мне нужно заставлять глаза прыгать из одного места в другое. "Вырвиглаз" стайл для бешеных и нервных Я уж молчу о том, что будет, когда я захочу одновременно править несколько файлов...
0
|
Любитель чаепитий
|
|
17.04.2016, 12:14 | 38 |
Я не думаю, что Mr.X безработный или фрилансер, который сам этот стиль полностью выработал и использует его только он.
Может быть, но что мне мешает сейчас так писать? Мне неизвестно мое будущее и, возможно, если я буду учится другому стилю форматирования, то когда приду на первую работу мне скажут форматировать так, как Mr.X. Так что сейчас переучиваться не вижу смысла. Ну я сделал предположение. Кстати, если для вас это "вырвиглазное" форматирование, то это не значит, что для всех так. Сколько ещё раз мне это придется сказать, я даже не представляю.
0
|
Игогошка!
1801 / 708 / 44
Регистрация: 19.08.2012
Сообщений: 1,367
|
|
17.04.2016, 12:25 | 39 |
Меня это не интересует. Либо стиль хорошо формализуется, либо нет. Если нет, то его никто в здравом уме никогда в больших проектах использовать не будет. Все просто.
Найди мне такое форматирование в популярном гитхабовском проекте. Или скажут играть на барабанах. Такая же вероятность. Нужно не придумывать предположения в угоду своим хотелкам, а объективно смотреть на вещи. Если внимательно все читать, то можно и не говорить.
2
|
1379 / 406 / 144
Регистрация: 22.10.2014
Сообщений: 872
|
|
17.04.2016, 12:28 | 40 |
В случае отсутствия IDE при работе с кодом, и в случае любви к функциональному стилю(for_each + lamba vs ranged for ) - код мистера Mr.X однозначно выигрывает. В остальных случаях слишком много проблем, учитывая что сегодня IDE поддерживают полный цикл разработки -> без IDE разработчики остаются очень редко, и функциональный подход не столь любим в общей массе С++ разработчиков, а те кто любят, также любят и скобочки на одной линии кода .
А самая главная проблема что в 95% случаев, вы будете писать такой код в гордом одиночестве, остальные люди просто жахнут "обычным" автоформатом. Добавлено через 2 минуты Найдите на github'e проекты оформленные в стиле Mr.X, и сравните с количеством "обычно" оформленных проектов , статистика такая штука интересная.
0
|
17.04.2016, 12:28 | |
17.04.2016, 12:28 | |
Помогаю со студенческими работами здесь
40
Правила оформления кода Объяснить нюансы оптимизации заданного фрагмента кода Считывание структуры из файла: объяснить нюансы работы кода Нюансы синтаксиса: что означает строчка кода ui->setupUi(this) ? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |