Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2004.06.06;
Скачать: [xml.tar.bz2];

Вниз

Давайте введем единый стандарт на оформление текста программ...   Найти похожие ветки 

 
Goida ©   (2004-05-14 23:12) [0]

Меня на эту мысль натолкнула одна из соседних веток.
Вот например, так писать не правильно:

if true then begin
 ...
end else begin
 ...
end;

А правильно так:

if TRUE
then begin
       ...
    end
else begin
       ...
    end;

Сразу видно где что, что к чему... И еще можно по поводу обзавания переменных. Типа венгерской нотации. Все конечно ей пользутся, но это выглядит ужасно. Например, переменная типа TLabel:
- lVar
- labelVar
- VarLabel
и пр.
Договориться и жестко придерживаться префиксов в названиях.
Так же и константами и переменными, для различения их. Скажем, константы пишем только большими буквами, а переменные - только не одними большими.
Что думаете?


 
Sergey Masloff   (2004-05-14 23:16) [1]

Goida ©   (14.05.04 23:12)  
1) Во первых в любой команде и так есть стандарт.
2) Во вторых твой вариант ужасен
3) С какого фига я буду придерживаться стандарта предложенного каким-то Goida © а ты - предложенного не менее каким-то  Sergey Masloff (tm)


 
default ©   (2004-05-14 23:16) [2]

а как же свобода выбора?


 
Vasya.ru   (2004-05-14 23:19) [3]

По этой теме много статей "о хорошем стиле программирования" написано.
> А правильно так:
> if TRUE
> then begin
>       ...
>    end
> else begin
>       ...
>    end;

А почему не так?
If TRUE Then
 Begin
   ...
 End
 Else
   Begin
     ...
   End;
Тоже легко читается


 
Игорь Шевченко ©   (2004-05-14 23:22) [4]


> Вот например, так писать не правильно:
>
> if true then begin
>  ...
> end else begin
>  ...
> end;


Да ? Странно, уже 9 лет так пишу на Delphi, ни разу не слышал, что это неправильно. Керниган и Ричи (а это их стиль) вообще-то очень неглупыми людьми были...


> Давайте введем единый стандарт на оформление текста программ...
>


Давайте. Как в VCL, у всех есть, ничего объяснять не надо. У Тейксейры и Пачеко этому самому стандарту целая 6-ая глава посвящена в книге "Delphi 5, руководство разработчика".
Согласен ?


 
Style ©   (2004-05-14 23:23) [5]

Считаю "стандартом" - исходники VCL;
Все равно мы в них заглядываем, и написано там все довольно читаемо. В общем если придерживаться их стиля, то это уже хорошо.


 
Goida ©   (2004-05-14 23:24) [6]

Вы плохо читаете? Я же не говорю ПРИНИМАЙТЕ МОЙ СТАНДАРТ. :( Я сказал: давайте разработаем. Понятно, что у каждой команды есть свои стандарты, но нужно думать о взаимодействии с другими людьми. Придет, например, новичек. До этого он работал у других и у них был другой стандарт. Теперь ему нужно будет привыкать к вашему, что займет какое-то время и снизит его производительность.


 
Goida ©   (2004-05-14 23:29) [7]


> А почему не так?
> If TRUE Then
>  Begin
>    ...
>  End
>  Else
>    Begin
>      ...
>    End;

Почему Я так не пишу.
Потому что с заглавной пишу идентификатора, а это служебные слова. Выделение then и else позволяет лучше их видеть и зрительно разбивает на две части код лучше, чем другие варианты.


 
Игорь Шевченко ©   (2004-05-14 23:30) [8]

Goida ©   (14.05.04 23:24)

Цитата:

"Благодаря использованию единого стиля написанные разными программистами программы станут для всех понятными и удобочитаемыми.
....
Однако мы не рекомендуем слишком сильно отклоняться от стандартов, применяемых разработчиками фирмы Borland. Суть в том, что, если в вашу команду придет новый программист, вероятнее всего он будет знать именно стандарты фирмы Borland"

Ку ?


 
Style ©   (2004-05-14 23:31) [9]


> Теперь ему нужно будет привыкать к вашему, что займет какое-то
> время и снизит его производительность.


Лажа это все, ни кто не будет писать под единым стандартом...
Более того менять свои принципы написания кода. ИМХО - если и делать такой "стандарт", то только на уровне редактора кода Delphi, где бы жестко устанавливались определенные правила (ну возможно были бы варианты этих правил для выбора)...
Например написал ты

const
  value = 100;

поставил точку с запятой, и редактор автоматически VALUE большими буквами написал и заменил его во всем остальном коде.


 
Goida ©   (2004-05-14 23:32) [10]


>  if true then begin
> >  ...
> > end else begin
> >  ...
> > end;
>
>
> Да ? Странно, уже 9 лет так пишу на Delphi, ни разу не слышал,
> что это неправильно

А если тебе понадобится прокоментировать условие? Понимаю, можно напливать на пару лишних кликов по клаве, но ведь можно предусмотреть еще в самом начале такой вариант?


 
Goida ©   (2004-05-14 23:35) [11]


> Лажа это все, ни кто не будет писать под единым стандартом...
> Более того менять свои принципы написания кода

Это уже зависит от качеств человека. Смог себя заставить, значит и проект сможешь написать. А если такую мелочь не можешь себя заставить делать, то стоит ли тебе проект доверять? Не так ли? Или рассуждение не верное?


 
Игорь Шевченко ©   (2004-05-14 23:38) [12]

Goida ©   (14.05.04 23:32)


> А если тебе понадобится прокоментировать условие?


А зачем его комментировать ? (Я серьезно)


 
Gero ©   (2004-05-14 23:39) [13]


> Я сказал: давайте разработаем

Поздно. Это уже сделали до нас.

---
Все вышесказанное воспринимать как ИМХО.


 
default ©   (2004-05-14 23:40) [14]

Goida ©   (14.05.04 23:35) [11]
согласись главное условие - это несплошно код
а кто работает в командах привыкнут к стилю друг друга быстро


 
Style ©   (2004-05-14 23:43) [15]


> Не так ли? Или рассуждение не верное?


Не согласен...
Главное, что нужно - это придерживаться тех правил которые зрительно можно заметить в исходниках VCL, т.е. в коде Borland;
И если код вполне дополнен комментариями, то ИМХО этого достаточно для того, чтобы работать в команде. Все остальное - это придирки со стороны руководства.
А если ты начинаешь работать в новом уже существующем проекте, то рано или поздно, тебе все равно придется ознакамливаться с принципами этого проекта, с модулями, основными классами, функцими и т.д.


 
Игорь Шевченко ©   (2004-05-14 23:43) [16]


> а кто работает в командах привыкнут к стилю друг друга быстро


Гораздо быстрее они привыкнут к ЕДИНОМУ стилю. Особенно из-под палки.


 
Goida ©   (2004-05-14 23:43) [17]


> Игорь Шевченко

В моем примере не зачем. Но бывают разные условия: составные, с приминением каких-то собственных идентификаторов... Хотя я понял: ты не думаешь о последрвателях и о будущем. Представь, попросят тебя через 10 лет поправить прогу, а ты уже 10 других проектов написал и напрочь забыл о какой проге тебе говорят (наврядли забудешь, ну ладно). Так вот посмотрев код, ты подумаешь: и почему я не коментировал его тогда? Или не подумаешь?


 
Mihey ©   (2004-05-14 23:44) [18]

Была такая мода в 1980-е - всё с большой буквы писать.


 
Goida ©   (2004-05-14 23:45) [19]


> default ©   (14.05.04 23:40) [14]
> Goida ©   (14.05.04 23:35) [11]
> согласись главное условие - это несплошно код
> а кто работает в командах привыкнут к стилю друг друга быстро

С этим согласен.


 
Goida ©   (2004-05-14 23:46) [20]


> Style ©   (14.05.04 23:43) [15]

А мне кажется мы состоим из мелочей.


 
OlegGashev ©   (2004-05-14 23:46) [21]

Borland придерживается два стиля комментирования условия


if true then //comment
  ....



{comment}
if true then
  ....


 
Style ©   (2004-05-14 23:47) [22]

Помница была у меня интересная книга
Ален Голуб, "Правила программирования C&C++", называется.
Вот там он хорошо основные правила писал.


 
Goida ©   (2004-05-14 23:48) [23]


> Mihey ©   (14.05.04 23:44) [18]

Да, я тоже модничал так. Хотя это было в 90х...


 
default ©   (2004-05-14 23:49) [24]

Игорь Шевченко ©   (14.05.04 23:43) [16]
я имел ввиду чтение кода, писать, конечно, каждый будет по-своему


 
Игорь Шевченко ©   (2004-05-14 23:50) [25]


> Хотя я понял: ты не думаешь о последрвателях и о будущем.


Не забывай добавлять IMHO, пожалуйста.


> Представь, попросят тебя через 10 лет поправить прогу, а
> ты уже 10 других проектов написал и напрочь забыл о какой
> проге тебе говорят (наврядли забудешь, ну ладно). Так вот
> посмотрев код, ты подумаешь: и почему я не коментировал
> его тогда? Или не подумаешь?


Ты мой код, прости, видел ? Скорее всего, не подумаю.

hint: посмотри, много ли условий прокомментировано в исходниках VCL.


 
Goida ©   (2004-05-14 23:51) [26]


> OlegGashev ©   (14.05.04 23:46) [21]

Мне почему-то кажется, что эти модули писались разными отделами одного Борланда :))


 
Goida ©   (2004-05-14 23:54) [27]


> Не забывай добавлять IMHO

Я думаю это и так понятно.

> посмотри, много ли условий прокомментировано в исходниках
> VCL

Ты просто ответь: стоит ли коментировать так, что бы другому програмеру стало понятно что происходит в твоем коде через 5 минут или не стоит?


 
OlegGashev ©   (2004-05-14 23:54) [28]

Goida ©   (14.05.04 23:51) [26]
Я просмотрел только comctrls.pas.

Разница в оформлении исходников наблюдается также у Микрософта. При чем, очень заметная разница.


 
Goida ©   (2004-05-14 23:56) [29]


> Ты мой код, прости, видел ? Скорее всего, не подумаю

Ты бери в общем. Мы ведь не тебя конкретно обсуждаем.


 
Goida ©   (2004-05-14 23:57) [30]


> OlegGashev

Но это ведь не значит, что это правильно. Плохо все это :(


 
Игорь Шевченко ©   (2004-05-14 23:57) [31]


> стоит ли коментировать так, что бы другому програмеру стало
> понятно что происходит в твоем коде через 5 минут или не
> стоит?


Я отвечу по-другому. Код с самого начала надо писать так, чтобы без комментариев или с минимумом их было понятно, что в нем происходит, и другому программисту через 5 минут, и тебе самому через полгода. Если через полгода понятно, то и через 10 лет будет понятно.
Опять же, советую обратиться к исходникам VCL, как к образцу.

ЗЫ: Я чту заповеди святого Мартина :)


 
OlegGashev ©   (2004-05-14 23:59) [32]

Goida ©   (14.05.04 23:57) [30]
Если будет директива придерживаться такого-то стандарта, будешь придерживаться, иначе будут бить по пальцам. :-)


 
Goida ©   (2004-05-15 00:04) [33]

Ладно, все понятно. Будем писать так как пишем :) Это наилучший вариант :) А когда начнут бить по пальцам, тогда стоит опять поднять эту тему.


 
Игорь Шевченко ©   (2004-05-15 00:06) [34]

Goida ©   (14.05.04 23:56)

А если в общем, тогда что брать ?

Исходники VCL или исходники Автосхемы Дмитрия О ?

Это, извини, две огромные разницы.
Давай тогда договоримся о том, что мы рассматриваем, как требующее подведения под стандарт.


 
Goida ©   (2004-05-15 11:43) [35]


> Игорь Шевченко ©   (15.05.04 00:06) [34]


> Исходники VCL или исходники Автосхемы Дмитрия О ?

Я не призываю брать что-то за основу. Можно и без неё. Неужели не понятно, что можно договориться всем до чего-то одного. Предложить варианты, проголосовать за него. А потом придерживаться выбранного варианта в обязательном порядке. Что-то типа кодекса чести у программиста. Понятно, что можно будет и по другому оформлять тексты, но это будет лишь говорить о черте характера самого программиста. А там уж работодателю принимать решение.
Я считаю, что нужно разработать стандарт. А на основе чего он будет - это дело десятое. Главное, чтобы он поддерживался большинством.


 
Nikolay M. ©   (2004-05-15 11:59) [36]

http://delphi.vitpc.com/asp/viewitem.asp?UrlItem=/article/coderules.htm
А можно еще бесконечное число таких стандартов придумать, которые будут различаться количеством пробелов перед операторами. И что, после Автосхема станет хорошей программой?

ПС
"Разруха - она в головах" (с).


 
Иксик ©   (2004-05-15 12:13) [37]

http://community.borland.com/soapbox/techvoyage/article/1,1795,10280,00.html
Object Pascal Style Guide
This article documents a standard style for formatting Delphi code. It is based on the conventions developed by the Delphi team.


 
Игорь Шевченко ©   (2004-05-15 12:30) [38]


> Я считаю, что нужно разработать стандарт. А на основе чего
> он будет - это дело десятое. Главное, чтобы он поддерживался
> большинством.


Уже все разработано, я (и не только я) уже который пост об этом твержу. Им и рекомендуется пользоваться.


 
Goida ©   (2004-05-15 12:52) [39]


> Nikolay M. ©   (15.05.04 11:59) [36]

Вот это да!!! Да я так и пишу, за исключением пары моментов! Ну раз мой стиль письма признан, тогда я спокоен :)

А вообше тему завел об этом, потому что пришлось разбирать текст предшественнков. Такое ощущение, что понятие о стиле им не ведомо было. Ну так все нагорожено, так захламлено, что 1/4 времени расставлял коментарии и служемные слова... Все таки 4 года до меня писали...


 
Nikolay M. ©   (2004-05-15 16:11) [40]


> 1/4 времени расставлял коментарии и служемные слова... Все
> таки 4 года до меня писали...

А тот, кто будет это разгребать после тебя, тоже, наверное, будет материться и постить сюда предложения о "правильном" форматировании и оформлении :)



Страницы: 1 2 3 вся ветка

Форум: "Потрепаться";
Текущий архив: 2004.06.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.56 MB
Время: 0.037 c
1-1085549054
Vilux
2004-05-26 09:24
2004.06.06
RichEdit->HTML


1-1085667943
smirnoff
2004-05-27 18:25
2004.06.06
замена в строке шаблона на его значение


6-1082298493
Sheng
2004-04-18 18:28
2004.06.06
Чат для локалки


14-1085243111
Daniel
2004-05-22 20:25
2004.06.06
DVD


1-1085162494
volkodav
2004-05-21 22:01
2004.06.06
Закрашивание фигуры





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский