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
Veselchak U
Уже с Приветом
Posts: 1787
Joined: 27 Nov 2002 05:24
Location: Sevastopol --> Ft. Lauderdale-->Boston-->Chicago

Post by Veselchak U »

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

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


Только если это делаете в Visual Studio, не забудьте выбрать опцию, чтобы вместо таба редактор поставил пропуски. А то другие редакторы, типа vi, фигово воспринимают табы, и код читать невозможно; приходится переформатировать. :umnik1:
User avatar
Mic
Уже с Приветом
Posts: 6906
Joined: 20 Apr 1999 09:01
Location: Seattle

Post by Mic »

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

Правильными тулзами надо пользоваться!
VS rules, остальноe - сакс! :mrgreen:
yocto
Уже с Приветом
Posts: 3640
Joined: 13 Sep 1999 09:01
Location: Canada

Post by yocto »

Veselchak U wrote:yocto, мне платят деньги за код, который можно откомпилировать... :umnik1: Вот вам и главный недостаток Вашего (пусть шутейного) варианта -- Вы допустили элементарную ошибку, которую не сделали бы, если бы выбрали Вариант 2. А ведь Вы -- стреляный воробей, yocto. :wink: Мой (вариант 2) стиль -- принимается другими программерами как нормальный. Добавление пары линий кода -- это не главная его цель, а побочный эффект. Впрочем, я уверен, что Вы пошутили. :gen1:


Вот те на!
Действительно, при copy-n-paste энтропия сожрала скобочку. :lol:

Конечно же, это была шутка. Как иллюстрация моего непонимания, как можно оценивать исходный код в строках. Ведь можно взять исходный текст и заменить все разделители лексем на '\r\n' и за секунду упятерить свою производительность. Это если не вспоминать про перенос литералов.

А я вот равно пользуюсь двумя первыми вариантами. Зависит от среды разработки, выбранного фонта и пр. И я не думаю, что данный выбор может меня как-либо характеризовать.
User avatar
DenisM
Уже с Приветом
Posts: 1976
Joined: 08 Jun 1999 09:01
Location: SPb -> SFBA -> Beaverton, OR

Post by DenisM »

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

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


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


Да я, собственно, всегда так и делаю, :gen1:
User avatar
DenisM
Уже с Приветом
Posts: 1976
Joined: 08 Jun 1999 09:01
Location: SPb -> SFBA -> Beaverton, OR

Post by DenisM »

Veselchak U wrote:...
В книге <a href = "http://www.amazon.com/exec/obidos/ASIN/1556154844/qid=1064524411/sr=2-1/ref=sr_2_1/002-2264148-6406412">Code Complete</a> много внимания уделено вопросу стиля. Если есть время и желание, прочтите, не пожалеете.


Мне в свое время понравилась больше вот эта книжка ( там не только про стиль кодирования ):
[url=http://www.amazon.com/exec/obidos/tg/detail/-/0070296898/104-5268519-1455952?v=glance]Enough Rope to Shoot Yourself in the Foot: Rules for C and C++ Programming
by Allen I. Holub[/url]
User avatar
Veselchak U
Уже с Приветом
Posts: 1787
Joined: 27 Nov 2002 05:24
Location: Sevastopol --> Ft. Lauderdale-->Boston-->Chicago

Post by Veselchak U »

:gen1:
yocto, я тоже не понимаю этого, но такие методы оценки живут в нашей индустрии. :pain1: Вот UFO Passenger вам расскажет как нас надо оценивать. :x

У меня вроде компания с инженерным духом, и меня не оценивают строго по килолокам. Так пару лет назад начали активно пропихивать 6-сигма методологию, и одним из параметров моей оценки стало количество дефектов на один килолок. Босс сказал, чтобы получилась 6-сигма, нужно иметь дефектов меньше одного на туеву хучу линий кода, не помню точно, но я столько за год не напишу :roll: . В общем, ошибок делать просто нельзя. Когда я попробовал заикнуться о том, что даже в НАСА, 8O где СММ Level 5 8O , оценивают, что у них меньше 5 дефектов на 1000 линий кода. Не помогло. Так народ уцепился за условие, что считается количество дефектов, которые дошли до конечного пользователя. А их пока подсчитают, год заканчивается, и бонус уже выдан. :gen1: Так что мы круче чем в НАСЕ, ой вей...
AN2001
Ник закрыт.
Posts: 572
Joined: 17 Aug 2001 09:01

Post by AN2001 »

В VC++ есть встроенный форматор. В VC++ 6.0 Edit->Advanced->Format Selection.
а в голосовании интересная фигура из 4 пальцев получилась :mrgreen:
User avatar
mikeG
Уже с Приветом
Posts: 8485
Joined: 02 Aug 2003 01:32
Location: SPb->SFBA

Post by mikeG »

Проголосовал за свой вариант: в соответствии с corporate standards.
А тех, кто пишет в соответствии со своими эстетическими
вкусами нужно отстреливать!
У нас для этого (отстреливания) специальный скрипт запускается. :)
User avatar
Gennadiy
Уже с Приветом
Posts: 11332
Joined: 30 Mar 2000 10:01
Location: Ice Storm Town

Post by Gennadiy »

mikeG wrote:Проголосовал за свой вариант: в соответствии с corporate standards.
А тех, кто пишет в соответствии со своими эстетическими
вкусами нужно отстреливать!
У нас для этого (отстреливания) специальный скрипт запускается. :)

А если именно вы вырабатываете этот стандарт? У меня это уже второй раз происходит.
User avatar
theukrainian
Уже с Приветом
Posts: 2506
Joined: 13 Jan 2003 22:34
Location: Kiev :: Los Angeles, CA

Post by theukrainian »

DenisM wrote:
3) 'm_' или '_' или вообще без префикса перед class data members?

_ : но это личное прдпочтение. Ничем не обоснованое

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

Под рукой нету стандарта, но вот что я нашел в comp.lang.c++:

each name that begins with an underscore is reserved to the implementation for use as a name in the global namespace


Думается это может также означать что implementation имеет право декларировать macro с таким же именем как и member.

Так что, помоему такими методами лучше не пользоваться.

денис
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 отличается непринцвпиально, зато больше кода в экране умещается

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