| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Религиозные войны > отступы |
| Автор: crin 31.1.2009, 12:35 |
| Сам использую tab, и до сих пор думал что это идеальный вариант, так как в редакторе можно настроить сколько символов будет отображать tab, но недавно прочитал статьи, которые заставили задуматся, идеальный ли это вариант. Пока не пишу что я прочитал, так как хочу узнать ваше мнение. И хотелось бы узнать почему вы используете тот вариант который выбрали. Добавлено через 13 минут и 2 секунды может кто-то напишет почему он выбрал этот стиль |
| Автор: crin 31.1.2009, 13:52 |
| 50/50 |
| Автор: Lazin 31.1.2009, 14:11 |
| tab нельзя использовать, если в моем редакторе tab - 4 пробела а в твоем 3, то втой код в моем редакторе будет выглядеть нечитаемым. зы все современные редакторы кода, умеют вместо табов вставлять пробелы, и когда нажимаешь на bacspace удалять сразу все N пробелов, так, как будто там был символ табуляции |
| Автор: Void 31.1.2009, 14:20 |
| Упарившись с чужим кодом, использующим то 4, то 8, то 2 пробела на табуляцию в перемежку с пробелами (понять это можно только из поехавшего форматирования, потому что никаких директив редактору, как правило, нет), сам использую только пробелы. |
| Автор: nickless 31.1.2009, 15:02 | ||
Однозначно пробелы, ибо
|
| Автор: Любитель 31.1.2009, 16:46 |
| Пробелы в файле. Таб в редакторе. И, конечно, опция замены табов на пробелы. |
| Автор: JackYF 1.2.2009, 16:25 |
| Табы. |
| Автор: Lazin 1.2.2009, 16:56 |
аргументы? |
| Автор: December 1.2.2009, 18:05 |
| Только пробелы. В командной работе наличие любителей табов с рандомным размером табуляции регулярно вызывает острейшие приступы агрессии. |
| Автор: Carnifex 1.2.2009, 20:39 |
| Табы конечно. Ибо тот, кто смотрит код может регулировать отступы по своему вкусу, меняя размер таба в редакторе |
| Автор: Любитель 1.2.2009, 21:08 | ||
Видать вам никогда не приходилось выравнивать код несколько за рамками того, что можно сделать только табами. И не попадался чужой подобный код. |
| Автор: Lazin 1.2.2009, 21:10 | ||
а что прикажешь делать, если я использую исходники разных людей, которые используют табы для форматирования и у каждого из которых свой взгляд на то, скольким символам прбела равен один таб? |
| Автор: THandle 1.2.2009, 21:21 |
| Только пробелы. |
| Автор: Carnifex 1.2.2009, 21:32 | ||||
Честно - нет, не приходилось. Но правило использовать пробелы вместо табов, эти исходники исправляет?
Выставить в редакторе размер таба на свой вкус. Другое дело, если у них разные взгляды на количество табов, или они мешают и то и другое. |
| Автор: Alexeis 1.2.2009, 22:05 |
| И то и другое, просто все табы заменяются пробелами, потому фактически пробелами. Сочетание приятного с полезным. |
| Автор: Lazin 1.2.2009, 22:17 | ||
еще как, исходник везде выглядит одинаково |
| Автор: Carnifex 1.2.2009, 22:58 |
| Я всё-таки имел ввиду, что всё-таки исходники плохо отформатированы не из-за табов, а из-за плохого форматирования. К тому же зачем исходникам выглядеть везде одинаково, если при отступах табами они будут выглядеть так, как пожелает тот, кто их смотрит. Вдобавок, если мы имеем два файла, которые были написаны разными людьми с разным количеством отступных пробелов, то если эти два файла скомпоновать (при наличии необходимости, ессно) то форматирование будет разным на протяжении одного файла, а с табом на отступ такого не будет, не зависимо от того, какие отступы использовали эти люди. В общем табы-то, объективно лучше Это ещё не считая экономии места на жёстком диске и времени компиляции, особенно при больших уровнях вложенности |
| Автор: Любитель 2.2.2009, 02:32 | ||||||||
Смотри. Ты просто, наверно, не понял о чём речь. Простой пример (чисто принцип - понятно, что строки такими маленькими не будут):
Типа выровнено. Если выравнивать пробелами - везде нормально. Табами - очень непредсказуемо. Таб как клавиша хорош. Но в файле - только пробелы.
Мнимая гибкость табов работает только на простом коде. А насчёт размера отступов в двух файлов - для этого есть кодестайлы и всякие автоформаты (в иде или отдельной утилитой). Неужели отступы единственный момент, где может быть различие?! Их гораздо больше.
Контрольный выстрел? |
| Автор: MAKCim 2.2.2009, 09:56 |
| табы |
| Автор: vinter 2.2.2009, 10:06 |
| пробелы |
| Автор: JackYF 2.2.2009, 13:07 |
Три (два, пять, четыре, восемь) пробела это три пробела. Таб же - логическая единица отступа. Привести чужой код к читаемому виду я всегда могу одной командой редактора (в особо запущенных случаях - двумя-тремя). Как-то так. На правильность не претендую, такой вот у меня подход. |
| Автор: December 2.2.2009, 13:24 |
| Как показывает практика, люди, которые используют табы, часто имеют в коде мешанину из табов и пробелов. Например, сами тулы могут вставлять пробелы в тех или иных ситуациях. Вот это-то и плохо. |
| Автор: LSD 2.2.2009, 14:12 | ||||
Именно. Например сделать такое выравнивание:
без пробелов - нельзя. Если мы используем только пробелы - то коды выглядит всегда отформатированным. Если пробелы и табы, то при другом размере таба, все форматирование разъедется. По этой причине, читать Sun-овские исходники довольно проблематично. Часть кода отформатирована на размер таба 8, другая на 4. Плюс разные размеры табов, кто-то ставит себе 8, в результате у него получаются очень большие отступы и очень много "заворачиваний" длинных строк. А тот кто ставит таб 2 вынужден смотреть на код написанный "встолбик" |
| Автор: ksili 2.2.2009, 14:26 |
| По-моему, оптимальный таб - 4 пробела. А всем, кто использует другое количество, следует убить себя об стенку. |
| Автор: LSD 2.2.2009, 14:32 | ||
Вот так приверженцы таба дискредитировали саму идею таба |
| Автор: serger 5.2.2009, 06:44 |
| Хотя как получится.. |
| Автор: Ch0bits 5.2.2009, 08:48 |
| Только табы (размером в 4 пробела), ибо IDE у нас в конторе все используют одинаковую. |
| Автор: Lazin 5.2.2009, 08:56 |
у нас то-же, но это не мешает отдельным личностям менять ширину таба |
| Автор: bars80080 5.2.2009, 10:44 | ||
такая мешанина возникает только когда копируешь чужой код. чего хорошего бегать курсором по куче пробелов? |
| Автор: Lazin 5.2.2009, 11:54 | ||||
/me бегает по словам, строкам etc. неправда, например пишу я функцию с кучей аргументов
---> - таб . - пробел а теперь поменяем размер таба:
|
| Автор: LSD 5.2.2009, 12:08 | ||||
Если присмотреться повнимательней к процитированному сообщению, то можно заметить что: 1) это не моё утверждение, а December-а 2) в моём сообщении описана ситуация, когда одними табами выравнивание не сделать |
| Автор: crin 5.2.2009, 12:54 | ||
Lazin,
а почему не так? |
| Автор: Lazin 5.2.2009, 13:11 | ||
потому-что в этом случае уже проще делать так
|
| Автор: crin 5.2.2009, 13:19 | ||
думаю так понятней Добавлено через 2 минуты и 10 секунд почему? в моём варианте отступ может быть и 4 и 8 и код вроде не расползается |
| Автор: Любитель 5.2.2009, 13:33 |
| Вот это и есть мешанина |
| Автор: crin 5.2.2009, 13:34 |
мне так удобней и а что в этом плохого? |
| Автор: Carnifex 5.2.2009, 14:08 | ||
Хм, ну а я делаю так
хотя щас подумал. будет смотреться жутко и при табе в 2 ширины и при табе в 6. |
| Автор: crin 5.2.2009, 14:11 |
| Carnifex, и что, будет одинаково и для 4, и для 8 пробелов вместо таба? Добавлено через 1 минуту и 11 секунд круто, а если таб 8 пробелов то просто шикарно |
| Автор: bars80080 5.2.2009, 14:21 |
а зачем менять размер таба? вы его пять раз на дню меняете? я однажды подогнал его под свой взгляд и всё. |
| Автор: crin 5.2.2009, 14:23 |
а если твой код кто-то другой будет читать а ему нравится 2 пробела(и среда у него настроена на 2 пробела), что тогда |
| Автор: Lazin 5.2.2009, 14:34 | ||
а взгляд у каждого свой |
| Автор: Любитель 5.2.2009, 14:42 |
Ну ты ведь не один на свете? ;) |
| Автор: LSD 5.2.2009, 14:51 |
Ну хотя бы потому, что ни одна IDE не умеет так форматировать |
| Автор: bars80080 5.2.2009, 14:52 | ||
дык, его проблемы! я ж не пишу гневные эпиграммы в адрес тех у кого стырил код через свой взгляд я смотрю один. а вы? ну что ещё можно сказать? на Свете не бывал ещё. буду, узнаю, один ли я там |
| Автор: LSD 5.2.2009, 15:08 | ||
Работать с тобой в команде - одно удовольствие, наверное |
| Автор: bars80080 5.2.2009, 19:05 |
а что нет корпоративных правил? условились бы о едином стандарте и всё |
| Автор: JackYF 5.2.2009, 19:25 |
А сделать другое - можно. |
| Автор: LSD 5.2.2009, 20:17 | ||||||
1. Другое это какое? 2. Любое форматирование с табами, реализуется пробелами. Но не любое форматирование которое реализуется пробелами - реализуемо табами Вот ещё парочка:
Фтопку табы! Чай не в ворде пишем Добавлено через 5 минут и 17 секунд
Есть, но похоливарить-то надо |
| Автор: December 6.2.2009, 12:08 |
| У нас в конторе стандарт - вместо таба автоматически вставляются пробелы, один таб равен двум пробелам. И все равно есть проблемы - не все правильно настравивают свои редакторы, приходится работать с чужим или старым кодом etc. |
| Автор: bems 6.2.2009, 18:49 |
| кнопка таб, вставляющая символы пробела плюс опция "smart tabs" подгоняющая количество пробелов по строчке выше |
| Автор: crin 9.2.2009, 17:19 | ||||||
а если были бы табы, то проблем не было Добавлено через 6 минут и 3 секунды
легко |
| Автор: LSD 9.2.2009, 17:31 |
Ну так изобразите, маэстро |
| Автор: December 9.2.2009, 17:56 | ||||||
| Приведу ещё пример, который показывает, почему вместо табов должны сразу вставляться пробелы. Возьмём список... участников корпоратива, пусть они голосуют за дату проведения мероприятия. Вот что получается, когда используются только пробелы:
Пусть список писал человек, у которого tab=8. Вот так у него физически выглядит список:
Вот так он в итоге отображается у человека, который имеет tab=4:
И это всего лишь один из примеров из жизни. |
| Автор: bars80080 9.2.2009, 18:04 |
| даже не знаю что сказать. это где такое вообще используется? |
| Автор: Lazin 9.2.2009, 22:22 |
в текстовых редакторах К.О. |
| Автор: bars80080 9.2.2009, 22:39 |
| бррр, каких таких текстовых редакторах? айм, сорри, но мне в голову пришла только картинка проFARенного редактора. да ещё что-то мутное на Basicе крутится со школьных компьютеров Yamaha 1982 |
| Автор: Lazin 10.2.2009, 06:26 | ||
| какие мы современные =) я так иногда код комментирую
В принципе, это то-же самое что и в предидущем варианте, только вместо Иванова Ивана символ *, а вместо цифры 21 - текст комментария |
| Автор: picc 16.2.2009, 12:12 | ||||||
а в каком редакторе можно этот код
отфарматировать так
или так
|
| Автор: LSD 16.2.2009, 17:42 |
В notepad можно отформатировать так как ты указал, и ещё десятком разных способов |
| Автор: LSD 14.4.2015, 17:55 |
| Тут http://stackoverflow.com/research/developer-survey-2015#tech-tabsspaces подкинул интересную статистику. С одной стороны, http://lurkmore.to/95%25 предпочитает табы, с другой стороны опытные разработчики предпочитают пробелы. Добавлено через 49 секунд Кстати IDEA научилась так форматировать. |
| Автор: CompWorm 15.4.2015, 00:52 |
| дааа, вот так суприз! я тоже всю жизнь юзал табы и писал код, так чтоб длинна таба рояли не играла, а оказывается это всё ламерство))) ИМХО, если (мой) код требует дополнительного отступа к табу и вынуждает всем своим видом перейти к гибким пробелам, то с (моим) кодом что-то не так, он стал громоздким и уродливым, его пора разрядить на более простые конструкции. Конечно это не догма, и некоторые языки для пущей изящности требуют хитрые отступы, но не те, с которыми дело имел я, да и здесь такого примера пока никто не привёл. |
| Автор: LSD 16.6.2017, 15:53 | ||
|
| Автор: irinazanuda 16.6.2017, 16:18 |
| Tab слишком тяжеловестно, эдак, по-купечески, да ещ и заранее продуманно.. толи лёгкая поступь пробелов |