Coding style...

Кто какой вариант кода предпочитает

Вариант 1
15
13%
Вариант 1
15
13%
Вариант 2
34
30%
Вариант 2
34
30%
Вариант 3
3
3%
Вариант 3
3
3%
Свой вариант
5
4%
Свой вариант
5
4%
 
Total votes: 114

User avatar
mikeG
Уже с Приветом
Posts: 8485
Joined: 02 Aug 2003 01:32
Location: SPb->SFBA

Post by mikeG »

Gennadiy wrote:А если именно вы вырабатываете этот стандарт? У меня это уже второй раз происходит.


А зачем велосипед изобретать?
http://java.sun.com/docs/codeconv/
http://www.possibility.com/Cpp/CppCodingStandard.html
http://www.icsharpcode.net/TechNotes/SharpDevelopCodingStyle03.pdf
User avatar
Gennadiy
Уже с Приветом
Posts: 11332
Joined: 30 Mar 2000 10:01
Location: Ice Storm Town

Post by Gennadiy »

theukrainian wrote:В C++, как и в C '_' перед началом identifier зарезервировано для internal use of implementation.
Под рукой нету стандарта, но вот что я нашел в comp.lang.c++:

А у меня не C++ или C. C# однако. :mrgreen:
User avatar
Gennadiy
Уже с Приветом
Posts: 11332
Joined: 30 Mar 2000 10:01
Location: Ice Storm Town

Post by Gennadiy »

mikeG wrote:
Gennadiy wrote:А если именно вы вырабатываете этот стандарт? У меня это уже второй раз происходит.


А зачем велосипед изобретать?
http://java.sun.com/docs/codeconv/
http://www.possibility.com/Cpp/CppCodingStandard.html
http://www.icsharpcode.net/TechNotes/SharpDevelopCodingStyle03.pdf

А чем они лучше моего? :pain1:
Нет - я конечно их читал, и взял как считаю лучшее из разных предложений. Да еще и свое добавил :wink:
User avatar
Sergey_P
Уже с Приветом
Posts: 5280
Joined: 01 Nov 2000 10:01
Location: (RU->WA->NJ->?)

Post by Sergey_P »

yocto wrote:Тггда лучше так

Code: Select all

   while
   (
   1
   ==
   1
   {
   };

Ну этооткровенное жульничество, а вот эклипс интересно форматирует объявления методов

Code: Select all

   void fnName(
      String argumentName1,
      String argumentName2,
      String argumentName3,
      String argumentName4,
      String argumentName5) {

   }
User avatar
Sergey_P
Уже с Приветом
Posts: 5280
Joined: 01 Nov 2000 10:01
Location: (RU->WA->NJ->?)

Post by Sergey_P »

Veselchak U wrote:Я привык ставить фигурные скобки всегда, даже если они для одного statement-а. Автоматом избегается ошибка, когда добавляется statement, а скобки ставить забываются...

Аналогично. Предпочитаю 1. т.к. привык. Работал только в конторах где измерялась способность решить проблему в выдененное время .
IMHO читабельность 1 и 2 отличается непринцвпиально, зато больше кода в экране умещается
User avatar
theukrainian
Уже с Приветом
Posts: 2506
Joined: 13 Jan 2003 22:34
Location: Kiev :: Los Angeles, CA

Post by theukrainian »

Veselchak U wrote:
CTAC_P wrote:
DenisM wrote:1) А кто какой tab/ident size использует?

:х
Tab = Tab! :umnik1:
В редакторе поставьте, насколько вам двигать.


Только если это делаете в Visual Studio, не забудьте выбрать опцию, чтобы вместо таба редактор поставил пропуски. А то другие редакторы, типа vi, фигово воспринимают табы, и код читать невозможно; приходится переформатировать. :umnik1:

Vi воспринимает tabs очень даже нормально. Что значит "фигово воспринимает" ?

денис
User avatar
шпиён
Уже с Приветом
Posts: 3459
Joined: 29 Oct 2002 20:08
Location: US

Post by шпиён »

Veselchak U wrote:Я привык ставить фигурные скобки всегда, даже если они для одного statement-а. Автоматом избегается ошибка, когда добавляется statement, а скобки ставить забываются...


same here
User avatar
шпиён
Уже с Приветом
Posts: 3459
Joined: 29 Oct 2002 20:08
Location: US

Post by шпиён »

Sergey_P wrote:а вот эклипс интересно форматирует объявления методов

Code: Select all

   void fnName(
      String argumentName1,
      String argumentName2,
      String argumentName3,
      String argumentName4,
      String argumentName5) {

   }


Я тоже примерно так делаю, ручками. Только еще комментарии к парамертам после каждого.
А, не совсем, единственный параметр будет вместе, а последняя скобка (и, возможно, const, throw-spec и/или "=0") после списка на отдельной строке.
Tardes
Уже с Приветом
Posts: 1471
Joined: 02 Sep 2001 09:01
Location: Earth

Re: Coding style...

Post by Tardes »

Проголосовал за Вариант 2, хотя есть некоторые отличия:

Code: Select all

function f ()
{
    while ( ... )
        {
        //line 1
        }

    if ( ... )
        {
        //line 1
        //line 2
        ...
        //line N
        }
}
staff
Уже с Приветом
Posts: 356
Joined: 13 Feb 2000 10:01

Post by staff »

Sergey_P wrote:
yocto wrote:Тггда лучше так

Code: Select all

   while
   (
   1
   ==
   1
   {
   };

Ну этооткровенное жульничество, а вот эклипс интересно форматирует объявления методов

Code: Select all

   void fnName(
      String argumentName1,
      String argumentName2,
      String argumentName3,
      String argumentName4,
      String argumentName5) {

   }


Да в эклипсе это все рулиться. А по умолчанию он настроен под Java Codding Convention oт Sun, в часности и приведенный вами пример.
User avatar
adb
Уже с Приветом
Posts: 9275
Joined: 14 Dec 2001 10:01
Location: Российская Федерация

Post by adb »

В C++, как и в C '_' перед началом identifier зарезервировано для internal use of implementation.


'_' используют после названия. Т.е variable_, вместо m_variable
User avatar
KVA
Уже с Приветом
Posts: 5347
Joined: 03 Feb 1999 10:01
Location: NJ, USA

Post by KVA »

adb wrote:
В C++, как и в C '_' перед началом identifier зарезервировано для internal use of implementation.


'_' используют после названия. Т.е variable_, вместо m_variable


Ужасный стиль.
User avatar
Sergey_P
Уже с Приветом
Posts: 5280
Joined: 01 Nov 2000 10:01
Location: (RU->WA->NJ->?)

Post by Sergey_P »

staff wrote:

Code: Select all

   void fnName(
      String argumentName1,
      String argumentName2,
      String argumentName3,
      String argumentName4,
      String argumentName5) {

   }


Да в эклипсе это все рулиться. А по умолчанию он настроен под Java Codding Convention oт Sun, в часности и приведенный вами пример.[/quote]
Я в курсе, просто заташился, что он автоматом так делает если объявдение длинное (т.е. "void fnName(String arg1)" он в одну строку оставит).
В общем с Mic-ом на проловину категорически несогласен ( VS rules true; остальноe - сакс !true )
User avatar
Sergey_P
Уже с Приветом
Posts: 5280
Joined: 01 Nov 2000 10:01
Location: (RU->WA->NJ->?)

Post by Sergey_P »

шпиён wrote:Я тоже примерно так делаю, ручками. Только еще комментарии к парамертам после каждого.

Це Java, у нас комментарии к парамертам выше идут (иначе их в сгенереной документации видно небудет).
User avatar
mikeG
Уже с Приветом
Posts: 8485
Joined: 02 Aug 2003 01:32
Location: SPb->SFBA

Post by mikeG »

Gennadiy wrote:
mikeG wrote:
Gennadiy wrote:А если именно вы вырабатываете этот стандарт? У меня это уже второй раз происходит.


А зачем велосипед изобретать?

А чем они лучше моего? :pain1:
Нет - я конечно их читал, и взял как считаю лучшее из разных предложений. Да еще и свое добавил :wink:


Стандарты хороши тем, что они стандартны.
Тем соответственно и лучше :)

Например third party code написанный неизвестно кем в одному
ему известном стиле очень напряжно прививать.
Другое дело - когда есть уверенность что любой код одинаково написан.

Return to “Вопросы и новости IT”