Comments 96
В варианте с разделителями вначале верность синтаксиса оценивается беглым взглядом, во отличие от традиционного варианта. Кроме того, редактировать проще [...]
Исключительно субъективно.
+10
значит ты заметил опечатку?
-3
Да, я заметил отсутствие запятой. Только даже если это действительно не намеренная опечатка, это не говорит о том, что какой-то из способов лучше. Просто для вас один способ удобнее другого, потому что вы к нему привыкли — вот и все.
Никогда не понимал, зачем некоторые пытаются навязывать свои привычки другим.
Никогда не понимал, зачем некоторые пытаются навязывать свои привычки другим.
+3
сколько времени тебе потребовалось, чтобы её найти? заметил бы ты её, если бы я про неё не сказал?
0
он мне тоже был когда-то непривычен, но ничего, я осознанно поменял привычки, о чём не жалею.
я ничего не навязываю, а просто желаю тебе повысить эффективность своей работы.
я ничего не навязываю, а просто желаю тебе повысить эффективность своей работы.
0
UFO just landed and posted this here
Та нууу))
Мне все же по душе самый первый вариант.
Мне все же по душе самый первый вариант.
+15
Спасибо php, который позволяет ставить запятые даже на последнем элементе (как минимум в массивах)
+7
Все известные мне языки (навскидку — c++, c#, js) поддерживают эту возможность
+5
а при вызове функций?
-1
При вызове функций это не так важно:
- порядок аргументов обычно строг;
- менять порядок аргументов функции, как правило, не надо;
- пропустить запятую в аргументах крайне маловероятно, т.к. их просто обычно мало и они важны
+2
Из известных мне языков так разрешает только питон. В нем даже приветствуется такая запись. Например, последовательность из одного элемента записывается как (item,) и никак иначе. Вот если два и более элементов, последнюю запятую разрешается опускать (item, item).
+2
Кстати говоря, в Вашем варианте придется еще на каждую строку вбивать лишний табулятор после разделителя, вместо того чтобы пользоваться удобством автоматической разметки ИДЕ.(хотя, конечно, и этот вариант можно добавить в шаблоны)
+2
авторазметка всё-равно вечно неугадывает что я от неё хочу =_=" так что проще самому ставить табуляциюю, чем подчищать после иде.
0
При вложенностях в 3-4 таба, вставлять вручную нервирует)
+2
1. не надо делать глубоких вложенностей — они хуже читаются
2. автотабуляцию никто не отменял (минус 1-2 таба)
3. пара лишних нажатий клавиш — это фигня
2. автотабуляцию никто не отменял (минус 1-2 таба)
3. пара лишних нажатий клавиш — это фигня
0
Какой-то противоречивый посыл… Во-первых, 3-4 таба — это очень часто встречающаяся вложенность.Во-вторых, про авторазметку ИДЕ я как раз и говорил о лишнем табе после запятой, в ответ на что получил «авторазметка всё-равно вечно неугадывает что я от неё хочу» — собственно неудивительно, если хочется странных и неожиданных вещей. В-третьих, «пара лишних нажатий» на каждую строку это много.
+2
1. 3-4 — это уже много. 2-3, не более — оптимум
2. она также не угадывает и когда хочу очевидных. ну может мне так с иде повезло — идея.
3. ты на пробелах ещё не стал экономить? х) пара нажатий — это фигня. экономить надо время восприятия, а не время набора.
2. она также не угадывает и когда хочу очевидных. ну может мне так с иде повезло — идея.
3. ты на пробелах ещё не стал экономить? х) пара нажатий — это фигня. экономить надо время восприятия, а не время набора.
-2
Ой ли… Как пример
class Blabla{ public static void WOW(){ for(int i=0;i<n;i++){ tratata(hihihi); for(int j=0;j<n;j++){ bugagaga(); } } } }
+2
разбить метод на два: один для внешнего цикла, другой — для внутреннего
вынести класс в отдельный файл и выкинуть один таб
вынести класс в отдельный файл и выкинуть один таб
-3
Ну конеееечно… для каждого вложенного цикла создавать по методу…
Вообще, видимо, мало кода смотрите.
Вообще, видимо, мало кода смотрите.
+7
Просто для примера: svn.php.net/repository/php/php-src/branches/PHP_5_3/main/main.c
+3
и что этот говнокод должен мне доказать?
-3
То есть пхпист заявляет, что код пхп — говнокод? :)
+5
Всё чаще и чаще звучит эта фраза применительно к чему угодно. Модно что ли стало.
+2
а скажешь не говнокод?
0
А что ж на пхп пишешь?
+3
я уже года 2 на нём не пишу. а что?
-3
Ухъ какое достижение. А учитывая, что пост «PHP → Независимо перегружаемые свойства» от 02.06, то заметно экспоненциальное увеличение ЧСВ не по дням, а по часам… Д'Артаньян, дело-то даже не в том насколько тот код «пыл блох»©, а в том какой Вы молодец! Осудить же так тяжело… Особенно если самим не под силу создать такое-же.
+4
Волею судьбы довелось работать с одной системой. Довольно сложной. Поначалу клял разработчиков(полное отсутствие документации, невнятные названия директорий, повторения и прочее).
В итоге я всё это дело продебажил, рассмотрел под микроскопом, сгенерировал хоть какую-то иерархию классов, список методов и сложил в единую картину. Всё оказалось не так уж плохо. Прослеживался шаблон проектирования, имелась своя внутренняя логика.
Я вот к чему- не умею посмотреть на файл в 2000 с лишним строк и сказать что всё что там написано полная лажа. Для анализа кода нужно представлять что, как и почему.
PS: В конце концов рефакторинг существует, tenshi :) И рефакторят не всегда лажу. Люди растут, набираются опыта, голова генерирует новые идеи и старые кажутся не оптимальными.
В итоге я всё это дело продебажил, рассмотрел под микроскопом, сгенерировал хоть какую-то иерархию классов, список методов и сложил в единую картину. Всё оказалось не так уж плохо. Прослеживался шаблон проектирования, имелась своя внутренняя логика.
Я вот к чему- не умею посмотреть на файл в 2000 с лишним строк и сказать что всё что там написано полная лажа. Для анализа кода нужно представлять что, как и почему.
PS: В конце концов рефакторинг существует, tenshi :) И рефакторят не всегда лажу. Люди растут, набираются опыта, голова генерирует новые идеи и старые кажутся не оптимальными.
+2
а ты посмотри в этот файл. живая иллюстрация как делать не надо.
а то, что ты вник в проект — честь тебе и хвала, только вот в хорошем коде тебе не пришлось бы столько ковыряться микроскопом, чтобы увидеть «паттерны».
а то, что ты вник в проект — честь тебе и хвала, только вот в хорошем коде тебе не пришлось бы столько ковыряться микроскопом, чтобы увидеть «паттерны».
-1
Можешь показать хороший с твоей точки зрения код, применяющейся в живом, функциональном, развивающемся проекте, который разрабатывали разные люди в разные периоды жизни, росшие в профессиональном плане пока писали его?
Возможно, тебе просто везет с классными проектами. Тогда завидую белой завистью.
Возможно, тебе просто везет с классными проектами. Тогда завидую белой завистью.
+3
разумеется нет. и что ты доказал? что говнокод — это хорошо и рефакторить его не надо?
-1
Трудно общаться с человеком, который не читает что ты ему пишешь(первое предложение).
Мы только что поняли, что ты не можешь обьяснить и показать что для тебя стандарт нормального кода, но по каким-то фэншуйным параметрам оцениваешь чужой труд. Флаг в руки.
Мы только что поняли, что ты не можешь обьяснить и показать что для тебя стандарт нормального кода, но по каким-то фэншуйным параметрам оцениваешь чужой труд. Флаг в руки.
+3
я не пхпист, да и там всё на сях.
+1
JS в реализации ослиной сики IE не поддерживает ( как обычно не такой как все )
+4
Разработчики IE негодуют! =) Они считают, что после последнего элемента массива в JS запятую ставить нельзя ни в коем случае.
+1
Ставьте запятую во всех элементах, включая последний и не надо е**ть мозг.
+12
+ ко всему вышесказанному — большинство IDE сразу подчеркивают ошибку, если не так записать массив (я про php)
+5
<imho>встертил бы в коде — сделал бы с автором нехорошую вещь</imho>
Разрушает ощущение зависимости строк. Нет отступа на следующей строке — оператор завершён и дальше не его.
Если не нравится отсутствие символа в конце — сделайте так:
Разрушает ощущение зависимости строк. Нет отступа на следующей строке — оператор завершён и дальше не его.
Если не нравится отсутствие символа в конце — сделайте так:
var userList= [ { name: 'Tom', Age: 5, race: 'cat' }, { name: 'Jerry', Age: 3, race: 'mouse' }, { name: 'Spike', Age: 11, race: 'dog' }]
+6
ничего оно не разрешает. знаки препинания с последующим табом имеют незначительный визуальный вес.
а твой способ провоцирует ошибки вида «не закрытый массив»
а твой способ провоцирует ошибки вида «не закрытый массив»
-1
При быстром просмотре кода взгляд упирается в крайний левый символ, проблема в этом.
Вообще, эта ошибка времени компиляции (по крайней мере в тех языках, что я знаю), и бороться с ней таким образом, это бороться с ветряными мельницами.
P.S.: У objective-C программистов второй пример способен вызвать нервный тик ;)
Вообще, эта ошибка времени компиляции (по крайней мере в тех языках, что я знаю), и бороться с ней таким образом, это бороться с ветряными мельницами.
P.S.: У objective-C программистов второй пример способен вызвать нервный тик ;)
+1
афайк, глаз быстро переучивает не упираться в регулярные структуры
угу, только пока там оно ещё докомпилируется до этого места… в общем случае — чем раньше обнаруживается ошибка — тем лучше
разумеется это применимо не везде
угу, только пока там оно ещё докомпилируется до этого места… в общем случае — чем раньше обнаруживается ошибка — тем лучше
разумеется это применимо не везде
0
Если компилятор поддерживает прекомпилированные заголовки, то они сократят время повторной компиляци.
Для человека, не привыкшего к такой манере записи он может стать проблемой (а ещё если он включил C'шный код в проект obj-C… :) )
Вообще, как мне кажется, стоит использовать тот стиль, что навязывают IDE и среда разработки, если в ней есть авторасстановка. Если это «коммерческий» код, то вероятность того, что с ним будет работать другой программист стремится к ста процентам. Да и в случае тулзы, написанной для себя, вероятность не нулевая.
Для человека, не привыкшего к такой манере записи он может стать проблемой (а ещё если он включил C'шный код в проект obj-C… :) )
Вообще, как мне кажется, стоит использовать тот стиль, что навязывают IDE и среда разработки, если в ней есть авторасстановка. Если это «коммерческий» код, то вероятность того, что с ним будет работать другой программист стремится к ста процентам. Да и в случае тулзы, написанной для себя, вероятность не нулевая.
+1
иде должна помогать, а не диктовать. и уж точно код не должен писаться в рассчёте на то, что с ним будут работать только в иде или даже в конкретной иде =_="
0
> иде должна помогать, а не диктовать.
К сожалению, реальность такова. А может и к счастью.
Visual Studio не даст вам использовать «Египетские» скобки, Xcode (среда разработки под Mac OS/iPhone os) ровняет перенесённые строки по первому двоеточию.
Для некоторых языков наиболее распространённая IDE одна, либо вообще единственная, так что для них такой расчёт смысл имеет.
К сожалению, реальность такова. А может и к счастью.
Visual Studio не даст вам использовать «Египетские» скобки, Xcode (среда разработки под Mac OS/iPhone os) ровняет перенесённые строки по первому двоеточию.
Для некоторых языков наиболее распространённая IDE одна, либо вообще единственная, так что для них такой расчёт смысл имеет.
+1
гомэн, случайно на минус попал — иконки слишком мелкие =_=
-2
UFO just landed and posted this here
Наркоманский метод
+5
Лично для меня написание кода программы похоже на изложение мыслей. Замкнутое на количестве и контексте слов. И как-то сложилось, что при изложении мыслей на бумаге или при мечати запятую привычно ставить после слова.
+4
Я использую подобное форматирование только когда пишу на Haskell… В основном чисто для того, чтобы сделать код ещё более «шокирующим» для неокрепших умов :)
+1
Вы извращенец.
+4
Я много лет пользуюсь именно таким способом написания. Удобно комментировать строки, да и наглядно.
+1
удобно комментировать? почему? о0
0
char[] tokens = { "START" , "LOAD_LIST" , "CLEAR_LIST" , "LOAD_FILE" , "LOAD_LIST" , "NEXT_TRACK" , "PREV_TRACK" // , "RECORD" };
+1
char[] tokens = { "START", "LOAD_LIST", "CLEAR_LIST", "LOAD_FILE", "LOAD_LIST", "NEXT_TRACK", "PREV_TRACK", // "RECORD" };
В С выдаст ошибку из-за запятой в конце списка.
+1
Sign up to leave a comment.
Оформление кода → Разделитель вначале