Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Общие вопросы по программированию, компьютерный форум
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.01.2012, 01:20   #101
spamer
Software Developer
Старожил
 
Аватар для spamer
 
Регистрация: 19.12.2008
Сообщений: 2,070
По умолчанию

Цитата:
а в Делфи это приходиться заменять на
Код:
begin Result:=false;exit;end;
Кстати, если не ошибаюсь, то в Делфи начиная с 2009 можно так писать:
Код:
Exit(True);   // Exit(False);
Будь проще и люди к тебе потянутся
spamer вне форума Ответить с цитированием
Старый 06.01.2012, 01:34   #102
still_alive
Great Code Monkey
Форумчанин
 
Аватар для still_alive
 
Регистрация: 09.08.2007
Сообщений: 533
По умолчанию

2Пепел Феникса
Еще можно переделать код так, чтобы точек выхода было одна-две. Сложнее придумать как это сделать так, чтобы он при этом сильно выиграл в читабельности.

Почти без разницы ставить скобки или нет. Я не ставлю. Правда раз-два из-за этого наступал на грабли - дописывал инструкции потом, а в скобки брать забывал

Другое дело, что иногда с точки зрения отладки лучше писать
Код:
if (cond1)
  stmt1;
if (cond1
    && cond2
    && ...)
чем
Код:
if (cond1) stmt1;
if (cond1 && cond2 && ...)
Удобнее узнавать какие условия выполняются и где произошел крэш.
still_alive вне форума Ответить с цитированием
Старый 06.01.2012, 01:37   #103
Bustle
Interdicted
Участник клуба
 
Аватар для Bustle
 
Регистрация: 25.11.2010
Сообщений: 1,194
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
ну не вижу разницы я между этим:
Код:
if(s && s_own)
    delete s;
и этим:
Код:
if(s&&s_own)
{
    delete s;
}
хоть убейте...

PS: ну кроме двух фигурных скобок
Считается, что это увеличивает удобоваримость кода. И я с этим согласен.
Love writing code and I am really passionate about it
Bustle вне форума Ответить с цитированием
Старый 06.01.2012, 10:30   #104
anyx
Форумчанин
 
Регистрация: 10.09.2009
Сообщений: 352
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
ну не вижу разницы я между этим:
Код:
if(s && s_own)
    delete s;
и этим:
Код:
if(s&&s_own)
{
    delete s;
}
Цитата:
Сообщение от Utkin Посмотреть сообщение
Чисто психологически - оператор воспринимается как независмый от If. Скобки явно указывают что не все так просто....
Кстати, думал об этом, и решил, что возможность единожды не писать пару лишних символов не стоит удобства чтения и отладки в дальнейшем. Да и на грабли наступить можно:

Цитата:
Сообщение от still_alive Посмотреть сообщение
Почти без разницы ставить скобки или нет. Я не ставлю. Правда раз-два из-за этого наступал на грабли - дописывал инструкции потом, а в скобки брать забывал
Так что согласен с Уткиным. Более того, хотелось бы иметь поддержку со стороны языка, чтобы без фигурных скобок даже не компилировалось.
anyx вне форума Ответить с цитированием
Старый 06.01.2012, 12:54   #105
ImmortalAlexSan
Участник клуба
 
Аватар для ImmortalAlexSan
 
Регистрация: 13.01.2009
Сообщений: 1,353
По умолчанию

Цитата:
Сообщение от Пепел Феникса
ну не вижу разницы я между этим:
Код:

if(s && s_own)
delete s;

и этим:
Код:

if(s&&s_own)
{
delete s;
}

хоть убейте...

PS: ну кроме двух фигурных скобок
Первый вариант короче в два раза. Я знаю, я КЭП. Но, Вы представляете, как увеличится объем кода, если таких конструкций будет 100 к примеру? Удобно будет читать его, постоянно перетаскивая скролбар то вверх то вниз? Не нужна нам такая поддержка отсутствия компиляции Кому как удобнее. Если её и добавлять, то по умолчанию она должна быть отключена, а кому неудобно, пусть настраивают сами.
Цитата:
Считается, что это увеличивает удобоваримость кода. И я с этим согласен.
Не согласен. Увидеть Tab и "{ }" равнозначно, по крайней мере для меня, да и печатать лишних символов не надо.
"Тебе то может на меня и насрать, но твои глаза меня обожают!"

Последний раз редактировалось ImmortalAlexSan; 06.01.2012 в 12:58.
ImmortalAlexSan вне форума Ответить с цитированием
Старый 06.01.2012, 13:06   #106
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,863
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
ну не вижу разницы я между этим:
Код:
if(s && s_own)
    delete s;
и этим:
Код:
if(s&&s_own)
{
    delete s;
}
хоть убейте...

PS: ну кроме двух фигурных скобок
Я такие конструкции пишу в 1 строку:
if ( s && s_own ) delete s;
Скобки не ставлю. В итоге вместо 4 строк у нас одна. В итоге меньше прокручивать код приходится, больше кода обозреваешь сразу на экране, проще работать с кодом. А кучи ненужных скобок только все путают. Но если язык обязует ставить скобки, то я бы записал так:
if ( s && s_own ) {delete s};

P.S. Еще по этому же примеру замечу, что мне непонятно, почему многие так не любят пробелы?
if_(_s && s_own_)_delete s;
Читабельность повышается. А если не нравятся пробелы, то от чего бы так не записать:
if(s&&s_own)delete s;

Последний раз редактировалось Arigato; 06.01.2012 в 13:09.
Arigato вне форума Ответить с цитированием
Старый 06.01.2012, 13:58   #107
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Так что согласен с Уткиным. Более того, хотелось бы иметь поддержку со стороны языка, чтобы без фигурных скобок даже не компилировалось.
я выкину такой компиль.
Цитата:
Не согласен. Увидеть Tab и "{ }" равнозначно, по крайней мере для меня, да и печатать лишних символов не надо.
аналогично, вижу отступ и сразу вижу что это часть конструкции.
Цитата:
P.S. Еще по этому же примеру замечу, что мне непонятно, почему многие так не любят пробелы?
надо бы приучиться, по крайней мере так:
Код:
if( s && s_own )
    delete s;
считаю скобку частью if.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 06.01.2012, 14:12   #108
MaTBeu
Eclipse Foundation
Старожил
 
Аватар для MaTBeu
 
Регистрация: 19.09.2007
Сообщений: 2,604
По умолчанию

Цитата:
Сообщение от Человек_Борща Посмотреть сообщение
я ещё в своём *.doc'е рассказал об тулзе для d7 и ниже, и об тулзах для d2006 и выше, которыми пользуюсь сам уже не помню сколько времени. Форматированный код спасёт мир.
Может я высказываюсь резковато, но форматированый говнокод остается говнокодом. Лучше он не становится.

Важно писать понятный код. А меры понятности для каждого индивидуальны.
MaTBeu вне форума Ответить с цитированием
Старый 06.01.2012, 16:03   #109
ImmortalAlexSan
Участник клуба
 
Аватар для ImmortalAlexSan
 
Регистрация: 13.01.2009
Сообщений: 1,353
По умолчанию

Цитата:
Сообщение от Arigato Посмотреть сообщение
P.S. Еще по этому же примеру замечу, что мне непонятно, почему многие так не любят пробелы?
Не могу ответить на ваш вопрос... Мозг создал определенное предпочтение вот и всё. Например функции записываю так:
Цитата:
void Function(string p1, string p2)
{
}
if вот так:
Цитата:
if (a < b)
а свойства вот так:
Цитата:
Color Back { get; set; }
Мне так удобнее.
В библиотеках майкрософта всё именно так записано. Может по-этому я когда-то решил следовать их стандарту? Ктож помнить теперь...
"Тебе то может на меня и насрать, но твои глаза меня обожают!"
ImmortalAlexSan вне форума Ответить с цитированием
Старый 06.01.2012, 17:28   #110
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,863
По умолчанию

Мне удобно, когда после имени функции и до скобки стоит пробел, так имя функции смотрится выразительнее и не сливается со скобкой.
Arigato вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Правила написания кода на Delphi Virtson Общие вопросы Delphi 17 06.08.2010 08:59
Правила разделов/главные правила Alex Cones О форуме и сайтах клуба 1 30.09.2009 17:49
Оформления текста tae1980 Microsoft Office Excel 6 26.03.2009 18:54
Стили оформления кода Altera Свободное общение 2 30.08.2008 17:23
Проблема оформления SunKnight Общие вопросы Delphi 3 25.02.2008 01:11