powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / В каком стиле вы оформляете delphi-код?
61 сообщений из 61, показаны все 3 страниц
В каком стиле вы оформляете delphi-код?
    #39794366
Artem.1st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здесь интересует два вопроса:
1) Форматирование delphi-кода (отступы, выравнивание блоков)
2) Стиль идентификаторов (имена переменных, функций, типов)

Раньше над этим не задумывался, и писал программы без форматирования, и именовал идентификаторы как придется(с заглавной буквы или с прописной или через подчеркивание). Но как увидел исходники VCL, понял, насколько они удобочитаемы, т.к. оформлены в едином стиле. Типы классов начинаются с “T”, поля класса с “F”, исключения с “E” и т.п....

Хочу использовать такой же стиль. Где почитать инструкцию ?

Кстати, а как вы оформляете программный код? Может еще лучше?

Покажите свои примеры.
Спасибо.
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794376
Фотография makhaon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Artem.1st,

гугли: стиль оформления кода delphi, первые несколько ссылок будут нужными.
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794386
Фотография Кроик Семён
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
//для читаимости кода юнита использую такое форматирование:
// табулятор: 3 символа
// слова UNIT / INTERFACE / IMPLEMENTATION заглавными буквами
// классы разделяю ####, секции //////, процедуры в секции ------

UNIT xyz;

...
...

INTERFACE

...
...

IMPLEMENTATION

//##############################################################################
{ TAnyClass }
//##############################################################################
constructor TAnyClass.Create();
begin
   //...
end;
//------------------------------------------------------------------------------
destructor TAnyClass.Destroy();
begin
   //...
end;
////////////////////////////////////////////////////////////////////////////////
procedure TAnyClass.Proc1(Sender: TObject);
begin
   //...
end;
//------------------------------------------------------------------------------
procedure TAnyClass.Proc2();
begin
   //...
end;
//------------------------------------------------------------------------------
procedure TAnyClass.Proc3(....................);
begin
   //...
end;
//##############################################################################
{ TMainForm }
//##############################################################################
procedure TMainForm.OnCreate(Sender: TObject);
begin
   //...
end;
//------------------------------------------------------------------------------
procedure TMainForm.OnActivate(Sender: TObject);
begin
   //...
end;
//------------------------------------------------------------------------------
procedure TMainForm.OnClose(Sender: TObject);
begin
   //...
end;
//------------------------------------------------------------------------------
procedure TMainForm.OnDestroy(Sender: TObject);
begin
   //...
end;
////////////////////////////////////////////////////////////////////////////////
procedure TMainForm.Proc1(...........);
begin
   //...
end;
//------------------------------------------------------------------------------
procedure TMainForm.Proc2(...........);
begin
   //...
end;
//------------------------------------------------------------------------------
procedure TMainForm.Proc3(...........);
begin
   //...
end;
//##############################################################################


END.
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794411
Фотография Dmitry Arefiev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794449
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Artem.1stПокажите свои примеры.
Спасибо.
0. Стараюсь всё как было у Borland
1. Все операторы - в lowercase, с отступом от предыдущего.
2. Все hard-coded строки(кроме названия полей FieldByName) - resourcestring
3. В Делфи, я всегда пишу if Assigned, а не <> nil
4. Всегда пишу Result:=0, а не ИмяФункции:=0
5. Никогда не использую record, а всегда создаю отдельный класс(record нужен только для WinApi)
6. У диалогов делаю class function Execute (Result:=Dlg.ShowModal=mrOK);
7. Название локальных переменных
Код: pascal
1.
2.
3.
 var 
  List:TStringList; 
  Dlg:TForm


8. if then else - строго на разных строках, т.е. вот так:
Код: pascal
1.
2.
3.
4.
 if Assigned(FOwner) then
  Result:=FOwner
   else
  Result:=InternalGetOwner;


Ну и конечно, всё то, что написано в современных шаблонах.

А) Любой метод класса - не более 5-7 строк кода.
Б) Классы из ~300-500 строк кода. В самых жутких случаях может быть и ~1000. Но ни о каких 3к+ и более речи вообще не идёт. Каждый класс в отдельном файле +-.
В) Никаких циркулярных ссылок друг на друга.
Г) Короче, не делать Говнокод , Божественные объекты и Магические кнопки
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794454
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valery_BВ) Никаких циркулярных ссылок друг на друга.

см. Сепульки :)

Герой рассказа Ийон Тихий ищет в «Космической энциклопедии» информацию о «сепульках», попадая в цикл косвенной рекурсии:
С. Лем. «Звёздные дневники Ийона Тихого. Путешествие четырнадцатое»Нашёл следующие краткие сведения:
«СЕПУЛЬКИ — важный элемент цивилизации ардритов (см.) с планеты Энтеропия (см.). См. СЕПУЛЬКАРИИ».
Я последовал этому совету и прочёл:
«СЕПУЛЬКАРИИ — устройства для сепуления (см.)».
Я поискал «Сепуление»; там значилось:
«СЕПУЛЕНИЕ — занятие ардритов (см.) с планеты Энтеропия (см.). См. СЕПУЛЬКИ».
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794504
Artem.1st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кроик Семён,
спасибо за Пример, и идею "форматировать delphi-код на уровне модуля"
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794506
Artem.1st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dmitry Arefiev http://edn.embarcadero.com/article/10280

Полезная ссылка. Прямо по теме, и от самого Embarcadero.
Спасибо.
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794508
Artem.1st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valery_B0. ...
1. ...
...

Вижу много полезных советов и расписано по пунктам.
Ценная информация.
Спасибо!
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794525
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Artem.1stDmitry Arefiev http://edn.embarcadero.com/article/10280

Полезная ссылка. Прямо по теме, и от самого Embarcadero.
Спасибо.дурной стиль, абслютно бессмысленное солдафонство
но если "лишь бы строем", то сойдёт

самые мозготрофирующие и вредные части этого гайда:
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
Example:

  // INCORRECT
  if A < B then begin
    DoSomething; 
    DoSomethingElse;
  end else begin
    DoThis;
    DoThat;
  end;
  
  // CORRECT
  if A < B then 
  begin
    DoSomething; 
    DoSomethingElse;
  end 
  else 
  begin
    DoThis;
    DoThat;
  end;



Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
  // INCORRECT
  for i := 0 to 10 do begin
    DoSomething; 
    DoSomethingElse;
  end;
  

  // CORRECT
  for i := 0 to 10 do 
  begin
    DoSomething; 
    DoSomethingElse;
  end;



Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Example:


  // INCORRECT
  while x < j  do begin
    DoSomething; 
    DoSomethingElse;
  end;
  

  // CORRECT
  while x < j do 
  begin
    DoSomething; 
    DoSomethingElse;
  end;


для удобства отладки, корректировки и просмотра, как раз таки всё наоборот
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794530
asutp2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dmitry Arefiev http://edn.embarcadero.com/article/10280 данное руководство никак не учитывает появление XML-документации в коде, а также регионов {$REGION}. Хотя уже во многих исходниках Tokyo и Rio xml-документация используется.
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794531
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
01.04.2019 11:48, Artem.1st пишет:
> Полезная ссылка. Прямо по теме, и от самого Embarcadero.

при наличии форматировщиков не стоит даже заморачиваться.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794549
DmSer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan)дурной стиль, абслютно бессмысленное солдафонство
но если "лишь бы строем", то сойдёт

самые мозготрофирующие и вредные части этого гайда:


Нормальный стиль. Человек, придерживающийся этого стиля, без проблем вольётся в любую команду. Но если писать только для себя - то пожалуйста, пишите как угодно!
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794564
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
01.04.2019 12:59, DmSer пишет:
> Человек, придерживающийся этого стиля, без проблем вольётся в любую команду.

я другой такой страны не знаю... (С)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794587
Foxpc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ctrl + d самый лучший, самый красивый. Самый - самый, самый ленивый
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794683
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DmSerНормальный стиль. Человек, придерживающийся этого стиля, без проблем вольётся в любую команду. Но если писать только для себя - то пожалуйста, пишите как угодно!человек вольётся в любую команду, но если кто-то хочет за это платить, то какое мне дело до того, как ему хочется деньги тратить
Ctrl+D как выше написали, никто не отменял
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794697
Artem.1st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan)дурной стиль, абслютно бессмысленное солдафонство но если "лишь бы строем", то сойдёт
Спасибо за ответ.
может VCL-стиль устарел ... тогда где найти современный вариант оформления Delphi-кода?
Я понял главную цель - код должен быть удочитаемый , т.е. форматируем не для красоты, а чтоб через год быстро глянуть и все сразу вспомнить
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794705
Maxim.K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
http://edn.embarcadero.com/article/10280
Цитата из Help-а:
"Lines should be limited to 80 columns . Lines longer than 80 columns should be broken into one or more continuation lines ...."
Код: pascal
1.
2.
3.
4.
5.
function CreateWindowEx(dwExStyle: DWORD; 
  lpClassName: PChar; lpWindowName: PChar; 
  dwStyle: DWORD; X, Y, nWidth, nHeight: Integer;
  hWndParent: HWND; hMenu: HMENU; hInstance: HINST; 
  lpParam: Pointer): HWND; stdcall;


Такой код удобно читать?
....
Мне кажется, что инструкция писалась в те далекие времена, когда мониторы были маленькими, и строка в 80 столбцов занимала весь экран. По этой же причине, отступ в 2 символа - сейчас маловат. Я давно использую отступ в 3 символа(так наглядней).
Хотя у каждого программиста свой стиль.
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794708
zinpub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Стиль должен быть един у команды, чтобы адекватно дифф работал...
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794780
Василий 2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valery_B2. Все hard-coded строки(кроме названия полей FieldByName) - resourcestring
3. В Делфи, я всегда пишу if Assigned, а не <> nil
5. Никогда не использую record, а всегда создаю отдельный класс(record нужен только для WinApi)

А) Любой метод класса - не более 5-7 строк кода.
Б) Классы из ~300-500 строк кода. В самых жутких случаях может быть и ~1000. Но ни о каких 3к+ и более речи вообще не идёт. Каждый класс в отдельном файле +-.

2 - частично спорно
3 - спорно
5 - крайне спорно, я бы даже сказал вредно
А) - 5-7??? Не хотел бы я работать с твоим кодом, честно говоря. Скорее вредно.
Б) Зависит от. И жавовский стиль "по классу на файл" тоже нафиг (должно определяться содержимым)

Да, и отсутствие пробелов после : и вокруг := тоже в минус как по мне

kealon(Ruslan)самые мозготрофирующие и вредные части этого гайда:

А я вот считаю вредным begin в конце строки

По сабжу: я бы посоветовал ориентироваться на тексты VCL, а там уже свой стиль выработаешь.
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794828
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Artem.1stkealon(Ruslan)дурной стиль, абслютно бессмысленное солдафонство но если "лишь бы строем", то сойдёт
Спасибо за ответ.
может VCL-стиль устарел ... тогда где найти современный вариант оформления Delphi-кода?
Я понял главную цель - код должен быть удочитаемый , т.е. форматируем не для красоты, а чтоб через год быстро глянуть и все сразу вспомнитья бы назвал это modula-стиль, излишний begin сбивает, т.е. логичнее и понятне когда end к тому что закрывает, т.е. for - end, while - end.

Использованию begin-end где условно не надо тоже так себе правило, отлаживать в таком варианте удобнее, можно вставить любую строчку без лишних манипуляций, а через сопли if-в с такими оптимизациями ещё пробраться надо.
Видел мазахистов, которые соберут в кучу for, while, if а потом сами теряются.
Аналогично с "лишними" скобками, я думаю если тебе понятнее - пиши

частая ошибка в плюсах:
Код: plaintext
1.
 -a*b


а если п не выпендривались, было бы:
Код: plaintext
1.
 -(a*b)


сможешь догадаться почему?

а VCL гадок, особенно где они в Controls мутят, такое наворотили, что отдельные процы каждую строчку приходится под отладчиком разбирать
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794842
L1G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan)самые мозготрофирующие и вредные части этого гайда:
...
для удобства отладки, корректировки и просмотра, как раз таки всё наоборотя тоже так писал (сишники и примкнувшие называют это "египетский стиль", поиск по картинкам пояснит, почему), пока не стал использовать подсветку синтаксиса из CnPack/CnWizards, которая раскрашивает пары begin-end в разные цвета и рисует слева линии между ними. (картинка: 15741636 )
Часто очень удобно, но египетский стиль с ней выглядит явно некрасиво.
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794849
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maxim.K http://edn.embarcadero.com/article/10280
Цитата из Help-а:
"Lines should be limited to 80 columns . Lines longer than 80 columns should be broken into one or more continuation lines ...."
Код: pascal
1.
2.
3.
4.
5.
function CreateWindowEx(dwExStyle: DWORD; 
  lpClassName: PChar; lpWindowName: PChar; 
  dwStyle: DWORD; X, Y, nWidth, nHeight: Integer;
  hWndParent: HWND; hMenu: HMENU; hInstance: HINST; 
  lpParam: Pointer): HWND; stdcall;


Такой код удобно читать?
....
Мне кажется, что инструкция писалась в те далекие времена, когда мониторы были маленькими, и строка в 80 столбцов занимала весь экран. По этой же причине, отступ в 2 символа - сейчас маловат. Я давно использую отступ в 3 символа(так наглядней).
Хотя у каждого программиста свой стиль.

Я параметров очень много я делаю так:
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
function CreateWindowEx(dwExStyle: DWORD; 
                        lpClassName: PChar; 
                        lpWindowName: PChar; 
                        dwStyle: DWORD; 
                        X, Y, nWidth, nHeight: Integer;
                        hWndParent: HWND; 
                        hMenu: HMENU; 
                        hInstance: HINST; 
                        lpParam: Pointer): HWND; stdcall;
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794859
Kazantsev Alexey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan)излишний begin сбивает, т.е. логичнее и понятне когда end к тому что закрывает, т.е. for - end, while - end
Вообще-то begin это начало составного оператора, а end его окончание. Так что, логичнее и понятнее совсем по-другому.
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794863
Foxpc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
L1G,

в дельфи же рисуются разноцветные линии
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794865
Artem.1st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rgreatпараметров очень много я делаю так:
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
function CreateWindowEx(dwExStyle: DWORD; 
                        lpClassName: PChar; 
                        lpWindowName: PChar; 
                        dwStyle: DWORD; 
                        X, Y, nWidth, nHeight: Integer;
                        hWndParent: HWND; 
                        hMenu: HMENU; 
                        hInstance: HINST; 
                        lpParam: Pointer): HWND; stdcall;


Выглядит даже читабельней, чем в VCL.
Сейчас пытаюсь понять префиксы у идентификаторов.

lp ClassName: PChar; // ... для указателей?
h Menu: HMENU; // ... для Handle-ов?
dw ExStyle: DWORD; // ... ???

где-нибудь есть полный список префиксов?
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794874
Фотография X-Cite
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Artem.1strgreatпараметров очень много я делаю так:
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
function CreateWindowEx(dwExStyle: DWORD; 
                        lpClassName: PChar; 
                        lpWindowName: PChar; 
                        dwStyle: DWORD; 
                        X, Y, nWidth, nHeight: Integer;
                        hWndParent: HWND; 
                        hMenu: HMENU; 
                        hInstance: HINST; 
                        lpParam: Pointer): HWND; stdcall;


Выглядит даже читабельней, чем в VCL.
Сейчас пытаюсь понять префиксы у идентификаторов.

lp ClassName: PChar; // ... для указателей?
h Menu: HMENU; // ... для Handle-ов?
dw ExStyle: DWORD; // ... ???

где-нибудь есть полный список префиксов?

Зачем? Венгерская нотация в современном мире, когда подсказчики умнее разработчика - это бессмысленно.
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794880
Foxpc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
X-Cite,

человек только легонечко прикоснулся к языку. А уже расшиб весь доб до мозгов. Пожалей его, ведь документация F1 для ткущего слово у него не работает
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794882
Artem.1st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X-CiteЗачем? Венгерская нотация в современном мире, когда подсказчики умнее разработчика - это бессмысленно.
ОК.
А если префиксы подсказывают не Тип, а флажок видимости:
Код: pascal
1.
2.
3.
g_GlobalObject: TObject;  // глобальная переменная
l_LocalValue: Integer;    // локальная переменная
a_FuncParameter: String;  // аргумент(параметр) фукнции


Как Вам такой подход?
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794883
Artem.1st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще раз, главная Цель: Читабельность delphi-кода.
Нотации, стили, префиксты, и т.п. делаются не для красоты, а для легкого визуального востприятия. Чтоб через год, можно было понять свой собственный код не тратя время...
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794884
Foxpc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794885
Фотография X-Cite
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
глобальная переменная - не используем. Если нужны синглтоны, то через классовые переменные TLogger.Default и т.д.
локальная переменная - никаких префиксов
аргумент(параметр) фукнции - префикс a (маленькое) без подчеркииваний разделителей и т.д. aParam1, aParam2
авторЧтоб через год, можно было понять свой собственный код
Пишите к нему документацию. А лучше Wiki собственную.
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794892
High.Programer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
X-CiteПишите к нему документацию. А лучше Wiki собственную.
Документацию к delphi-коду?
Т.е. каждый раз, когда код меняется(а это постоянно), то надо обновлять и связаную документацию?

Но ведь есть же другой подход: Лучшая документация - это хорошо оформленный код.
Что об этом думаете?
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794897
Фотография makhaon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
High.Programer,

однозначно. наилучшая документация - грамотно написанный код. пусть лучше документации не будет вообще, чем будет хорошая документация (что само по себе сомнительно) и посредственный код.

префиксы, вообще, зло в идентификаторах. Читайте чистый код. Даже в плюсах рекомендуют отказываться как от анахронизма. В Делфи и подавно - мусор.

авторгде-нибудь есть полный список префиксов?

Он тебе не нужен :) Как и сами префиксы. Максимум - перед перечислимыми типами. Там префиксы удобны как раз.
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794908
asutp2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
makhaon,

т.е. ты готов отказать от документации в делфи с описание классов, их методов и свойств? тебе будет достаточно читать чистый код исходников делфи? ))))
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794955
Фотография X-Cite
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
makhaonМаксимум - перед перечислимыми типами. Там префиксы удобны как раз.
{$SCOPEDEUNMS ON} и префиксы не нужны... Они портят эстетический вид, когда данные отдаются наружу через сервисы SOAP/REST. Да и в коде постоянные em fm pt режут глаз, А если однотипных названий куча, то как там префиксы делить, начинаются дубли...
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794956
Фотография makhaon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
asutp2,

а я документацию почти не читаю ну может раз в полгода-год. если бы силы, вложенные в доки, кинули в код, я бы с огромной радостью это принял.
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39794973
Фотография Док
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
makhaonесли бы силы, вложенные в доки, кинули в код, я бы с огромной радостью это принял.
вот из-за таких, как ты, каждые полгода в сессионную пору тут случается нашествие саранчи студней
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39795112
DmSer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X-CitemakhaonМаксимум - перед перечислимыми типами. Там префиксы удобны как раз.
{$SCOPEDEUNMS ON} и префиксы не нужны... Они портят эстетический вид, когда данные отдаются наружу через сервисы SOAP/REST. Да и в коде постоянные em fm pt режут глаз, А если однотипных названий куча, то как там префиксы делить, начинаются дубли...

Альтернатива с {$SCOPEDEUNMS ON} ещё хуже.
Замучаешься в коде писать:
if AColor in [TMySuperPuperColor.Red, TMySuperPuperColor.Green, TMySuperPuperColor.Black] then...

В таком стиле в Firemonkey всё засрано.

Лично я бы предпочёл:
if AColor in [spcRed, spcGreen, spcBlack] then...
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39795150
Фотография X-Cite
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DmSer,

spcRed - это TMySuperPuperColor или TSuperPuperColor или TSecondPackageColor или и т.д.
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39795178
Фотография makhaon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X-Cite,

главное - цвет. а уж какой тип и префикс - дело второе. к счастью перечислимые типы компиляторно не совместимы.
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39795258
Василий 2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DmSerАльтернатива с {$SCOPEDEUNMS ON} ещё хуже.
Замучаешься в коде писать:
if AColor in [TMySuperPuperColor.Red, TMySuperPuperColor.Green, TMySuperPuperColor.Black] then...

Ага. А если еще в двух библиотеках одноименные типы, и TSuperPuperColor есть не только в SuperLib.Types, но и в DuperLib.Types?
if AColor in [SuperLib.Types.TSuperPuperColor.Red, SuperLib.Types.TSuperPuperColor.Green, SuperLib.Types.TSuperPuperColor.Black] then...
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39795283
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valery_B
Код: pascal
1.
2.
3.
4.
 if Assigned(FOwner) then
  Result:=FOwner
   else
  Result:=InternalGetOwner;

что-то мне такой елсе в корне не нравится
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39795292
Kazantsev Alexey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Василий 2,

Код: pascal
1.
2.
3.
4.
5.
type

 spc = TSuperLib.Types.TSuperPuperColor;
...
 [spc.Red, spc.Green]


Псевдоним типа называется.
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39795328
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andreymxValery_B
Код: pascal
1.
2.
3.
4.
 if Assigned(FOwner) then
  Result:=FOwner
   else
  Result:=InternalGetOwner;

что-то мне такой елсе в корне не нравится
Самый трешак что встречал был:

Код: pascal
1.
2.
3.
 if Assigned(FOwner) then 
  Result:=FOwner
 else;



;)
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39795329
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rgreatandreymxпропущено...
что-то мне такой елсе в корне не нравится
Самый трешак что встречал был:

Код: pascal
1.
2.
3.
 if Assigned(FOwner) then 
  Result:=FOwner
 else;




;)всегда пишу пару begin/end
ибо в будущем проще корректировать
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39795336
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andreymx,

Аналогично.

Код: pascal
1.
2.
3.
if Assigned(FOwner) then begin
  Result:=FOwner
end;
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39795337
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще ; в середине забыл.
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39795364
ёёёёё
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rgreat,

еще хороший случай:

Код: pascal
1.
2.
if офигенно-преофигенно длинное-предлиноое супер-пупер-сложное условие then;
  ShowMessage('Выводится всегда'); // Отступы есть!
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39795394
Фотография makhaon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ёёёёё,

1. форматёр в помощь, отсутпы уберет, будет видно
2. FixInsight знает эту описку: https://www.tmssoftware.com/site/fixinsight.asp
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39795398
ёёёёё
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
makhaon,

будешь смеяться, но этот код - фрагмент FastRepor-овского скрипта.

А так - да, форматтер кода постоянно использую, все на автомате - "сэйв, формат"...
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39795649
Artem.1st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kazantsev Alexey
Код: pascal
1.
2.
3.
4.
type
 spc = TSuperLib.Types.TSuperPuperColor;
...
 [spc.Red, spc.Green]


Псевдоним типа называется.
Очень хорошая идея c "псевдонимами", экономит текстовое пространство и делает код читабельным.
И это работает в Delphi?
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39795653
Artem.1st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Foxpcctrl + d самый лучший, самый красивый
Нет. Форматер - это не то, что ищется.
Хочется сразу писать код правильно, а не чтоб за тебя форматер исправлял.
Форматер - это аналог SpellChecker, он исправляет ошибки, но не учит русскому языку. Неужели это полезно?
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39795670
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Artem.1stFoxpcctrl + d самый лучший, самый красивый
Нет. Форматер - это не то, что ищется.
Хочется сразу писать код правильно, а не чтоб за тебя форматер исправлял.
Форматер - это аналог SpellChecker, он исправляет ошибки, но не учит русскому языку. Неужели это полезно?
Бывают случаи, когда над одним кодом работают более одного человека.
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39795704
Kazantsev Alexey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Artem.1stИ это работает в Delphi?
Работает, как ни странно
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39795735
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rgreat
Код: pascal
1.
2.
3.
if Assigned(FOwner) then begin
  Result:=FOwner
end;


Я стараюсь избегать использование begin end в условиях if then .
Это всегда выливается в длинные конструкции.
Самое простое, что можно прочитать выглядит так.

Код: pascal
1.
2.
3.
4.
 if Condition then 
  DoSomething
   else
  DoSomethingElse;


А в case - begin end вообще не допустим.
Василий 22 - частично спорно
3 - спорно
5 - крайне спорно, я бы даже сказал вредно

Я спорить не буду. Особенно Delphi разработчиками.
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39795827
Foxpc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Valery_B,

Ух тыж.. Боюсь представить тонну твоего кода из миллиард разных функций


.. Боже упаси от этого!
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39795831
Foxpc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну а если нужно проверить возвращаемое значение, то конечно - же begin end не нужен.

Хотя если рассудить проверку, а что у нас Result ? Может там уже nil ? А если там nil и у нас nil в FOwner и нет такого случая когда другой объект вернётся из процедуры.


Закаким вообще там нужна эта проверка??? И код тогда в любом случае упрощается до

Result = FOwner;

Result = nil = FOwner ( nil ) = nil

Result = nil = FOwner ( Pointer($655348) ) = Pointer($655348)
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39795844
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valery_Brgreat
Код: pascal
1.
2.
3.
if Assigned(FOwner) then begin
  Result:=FOwner
end;


Я стараюсь избегать использование begin end в условиях if then .
Это всегда выливается в длинные конструкции.
Самое простое, что можно прочитать выглядит так.
[spoiler ]
[src delphi]
if Condition then
DoSomething
else
DoSomethingElse;Да, так несколько длинней, и несколько избыточно.
Но зато так на мой взгялид красивей и более стандартизированао и читаемо (одинаково).

Не надо парится с наличием или отсутствием ";", наличием или отсутсвием отступов и кол-вом операторов внутри конструкции.
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39795972
Фотография Док
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Преимущества правильно форматированного особенного хорошо заметны здесь, на форуме, когда кто-нибудь выкладывает портянки кода и нет цветной разметки операторских скобок а-ля Касталия/ЦНПак :)
...
Рейтинг: 0 / 0
В каком стиле вы оформляете delphi-код?
    #39796043
asutp2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДокПреимущества правильно форматированного особенного хорошо заметны здесь, на форуме, когда кто-нибудь выкладывает портянки кода и нет цветной разметки операторских скобок а-ля Касталия/ЦНПак :)+100500! :-)
...
Рейтинг: 0 / 0
61 сообщений из 61, показаны все 3 страниц
Форумы / Delphi [игнор отключен] [закрыт для гостей] / В каком стиле вы оформляете delphi-код?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]