Форум: "Прочее";
Текущий архив: 2007.12.23;
Скачать: [xml.tar.bz2];
ВнизОцените код 2 Найти похожие ветки
← →
Anatoly Podgoretsky © (2007-11-23 19:05) [40]> Германн (23.11.2007 16:58:36) [36]
Пробелы было жалко?
← →
Германн © (2007-11-23 19:08) [41]
> Anatoly Podgoretsky © (23.11.07 19:05) [40]
Нет. Байты было жалко. Компилятор зараза не переваривает pas-файлы более 32К
← →
J_f_S (2007-11-23 19:16) [42]
> Нет. Байты было жалко. Компилятор зараза не переваривает
> pas-файлы более 32К
Это какой-то Паскаль для embedded устройств? :)
← →
Германн © (2007-11-23 19:20) [43]
> J_f_S (23.11.07 19:16) [42]
Для 51-го процессора.
:-)
← →
Dmitry S(1) (2007-11-23 20:18) [44]Блин, после создания собственного c-подобного скрипта со всеми операторами pre-post incremement/decrement, указателями, статементами for, switch и тп, генерации кода, от дельфи блевать охота :) После visual assist для visual net - ставишь { скобку(shift + "["), а тебе сразу ставят "}" с верным переносом на следующей сторке ваш begin-end - просто ха-ха. Бедные убогие дельфисты с комплексом неполноценности. На форуме C++ дельфи не обсуждается, только на вашем форуме поливают грязью с++. Все как в жизни.
← →
turbouser © (2007-11-23 20:28) [45]
> Dmitry S(1) (23.11.07 20:18) [44]
Спасибо. Поржал. :))
Пеши исчо.
← →
DVM © (2007-11-23 20:37) [46]
> После visual assist для visual net - ставишь { скобку(shift
> + "["), а тебе сразу ставят "}" с верным переносом на следующей
> сторке ваш begin-end
Вы давно делфи видели? Поглядите, например, D2007.
> На форуме C++ дельфи не обсуждается, только на вашем форуме
> поливают грязью с++
Там просто никто не знает его. Как показывает практика, программисты на делфи в большинстве своем владеют и си и делфи. Те кто программирует исключительно на си в большинстве своем о делфи вообще не имеют представления. Как они могут чего то сравнивать там.
← →
Efir (2007-11-23 20:55) [47]
> Dmitry S(1) (23.11.07 20:18) [44]
А что ж ты здесь тогда забыл?
← →
@!!ex © (2007-11-23 20:56) [48]> [44] Dmitry S(1) (23.11.07 20:18)
Ага. Сишники приходят похоливарить сюда. ;)
← →
Anatoly Podgoretsky © (2007-11-23 20:58) [49]> @!!ex (23.11.2007 20:56:48) [48]
Только плохо у них выходит на нашей площадке.
← →
isasa © (2007-11-23 21:49) [50]Взрослые люди, в некоторых местах, профессионалы, блин ...
Ну кому какая разница, ка он обозвал переменную. Ограничения - корпоративные правила, исключения - венгерская нотация(мужик дико удивил самоорганизованностью). С приходом ООП пиши, что поле значит своими словами ...
Кстати, уже можно и по русски ...
← →
@!!ex © (2007-11-23 21:51) [51]> [50] isasa © (23.11.07 21:49)
я не понял...
← →
isasa © (2007-11-23 22:03) [52]:)
Проехали ...
Качество кода определяется нк названиями переменных и т.д, а качеством использования ресерсов среды, в которой написан код.
Например, длинное наследование, или большое количество потомков - плохо(это с точки зрения MS), или использование оператора case (что меня изумило, добезобразия), много if в завершенном модуле ...
← →
Anatoly Podgoretsky © (2007-11-23 22:04) [53]> @!!ex (23.11.2007 21:51:51) [51]
Он имел ввиду последние версии Дельфи, там переменные можно называть на родном языке, единственный недостаток регистрозависимо. Можно написать - ДельтаВремени := ...
← →
@!!ex © (2007-11-23 22:14) [54]> [53] Anatoly Podgoretsky © (23.11.07 22:04)
Да как раз про русский я понял, не понял к чему сказано все остальное. к моему коду или просто абстрактно.
← →
isasa © (2007-11-23 22:17) [55]@!!ex © (23.11.07 22:14) [54]
абстрактно
← →
isasa © (2007-11-23 22:19) [56]Зы. Это, все равно, что обсуждать почерк человека. Ошибки, или нерациональность - обсуждаемы. Остальное - холивар.
← →
Anatoly Podgoretsky © (2007-11-23 22:20) [57]> @!!ex (23.11.2007 22:14:54) [54]
Перпердикулярно.
← →
isasa © (2007-11-23 22:24) [58]Anatoly Podgoretsky © (23.11.07 22:20) [57]
Не, нельзя так, меня, в принципе, и первая ветка заинтересовала, но работа, будь она ладна, задрала ...
Боюсь затюкают "доброжелатели" простую душу ... :)
← →
Anatoly Podgoretsky © (2007-11-23 22:28) [59]Ну да, можешь таааааааакой холивар разжечь.
← →
isasa © (2007-11-23 22:30) [60]Чукча не писатель, чукча читатель ...
ОтписАлся ..
← →
Германн © (2007-11-24 01:02) [61]
> DrPass © (23.11.07 15:20) [10]
>
> ...и еще пора избавляться от дурацкой студенческой привычки
> писать begin в той же строке, что и предыдущий оператор
>
Весьма "апломбное" утверждение. Некогда было днём заниматься архивами, поэтому промолчал. Сейчас время нашел. Не знаю сколько тебе лет, но сей стиль, который ты ругаешь появился очень давно. И не у студентов.
Например именно в этом стиле написана библиотека Turbo Professional. Кто хорошо помнит времена ДОСа и ТР5, тот хорошо знает эту библиотеку. Собственно тот, кто писАл тогда программы на Паскале только её и использовал (если, конечно не был дураком).
Идём дальше. Широко известная и очень популярная (и в добавок очень полезная всем новичкам) RxLibrary тоже использует такой стиль.
> DVM © (23.11.07 16:28) [15]
>
>
> > Не надо. Незачем раздувать код во вертикали, вставая бессмысленные
> > элементы.
>
> В VCL везде с новой строки ставят.
>
Не везде. В VCL Д4 есть 5 иных примеров. (Кстати я искал только then begin). В VCL Д6 - 32.
Но действительно - это скорее исключения из правил.
> DVM © (23.11.07 16:37) [19]
>
>
> > @!!ex © (23.11.07 16:31) [16]
>
>
> > И что это значит?
>
> Это значит, что begin ставят с новой строки. Лучше придерживаться
> традиций.
>
Лично для меня "традиция" - это Turbo Professional, с которого я и начинал.
← →
Pavia © (2007-11-24 02:16) [62]Пишу всегда так
if True then
begin
end;
что бы для begin и end отступы совпадали. Тогда легко отследить где какой блок кончается где начинается следующий блок.
← →
Германн © (2007-11-24 02:21) [63]
> Pavia © (24.11.07 02:16) [62]
>
> Пишу всегда так
>
> if True then
> begin
> end;
>
> что бы для begin и end отступы совпадали. Тогда легко отследить
> где какой блок кончается где начинается следующий блок.
>
И что?
← →
homm © (2007-11-24 07:21) [64]Пишу всегда так
if True then begin
Code := Sode;
inc(Pode);
Dec(Mode);
end;
что-бы были верные выравнивания текста. Тогда легко отследить где какой блок кончается где начинается следующий блок.
Я что-то не так делаю?
← →
Dmitry S © (2007-11-24 08:03) [65]Раньше писал так
if True then begin
Code := Sode;
inc(Pode);
Dec(Mode);
end;
Но с недавнего время пишу всегда так:if True then
begin
Code := Sode;
inc(Pode);
Dec(Mode);
end;
И вроде как лучше стало:)
← →
isasa © (2007-11-24 09:12) [66]Германн © (24.11.07 01:02) [61]
:)
Подтверждаю. Вот образец и того кода.
По качеству продукта видно, что писали серъезные дядьки и тетки.
{*********************************************************}
{* TPCMD.PAS 5.05 *}
{* Copyright (c) TurboPower Software 1987. *}
{* Portions copyright (c) Sunny Hill Software 1985, 1986 *}
{* and used under license to TurboPower Software *}
{* All rights reserved. *}
{*********************************************************}
unit TpCmd;
{-Convert keystrokes to commands. This unit is intended primarily for
internal use.}
...
function ScanCommands(K : KeyArrayPtr;
var CmdBuffer : CmdBuffArray;
BufNext : Word;
var Cmd : Byte;
var FoundAt : Word) : MatchType;
{-Scan K^ for a match on CmdBuffer}
var
BufIndex : Word;
CmdIndex : Word;
CmdLen : Byte;
Matching : Boolean;
begin
Cmd := NoCmd;
CmdIndex := 0;
CmdLen := K^[CmdIndex];
{Scan the command list}
while CmdLen <> 0 do begin
FoundAt := CmdIndex;
Inc(CmdIndex);
BufIndex := 0;
Matching := True;
while Matching and (BufIndex < BufNext) and (BufIndex < CmdLen-1) do
if CmdBuffer[BufIndex] = K^[CmdIndex+BufIndex] then
Inc(BufIndex)
else
Matching := False;
if not Matching then begin
{No match, try next command}
Inc(CmdIndex, CmdLen);
CmdLen := K^[CmdIndex];
end else begin
if BufNext = CmdLen-1 then begin
{Complete match}
ScanCommands := FullMatch;
Cmd := K^[CmdIndex+BufIndex];
end else
ScanCommands := PartMatch;
Exit;
end;
end;
{No match if we get here}
ScanCommands := NoMatch;
end;
Страницы: 1 2 вся ветка
Форум: "Прочее";
Текущий архив: 2007.12.23;
Скачать: [xml.tar.bz2];
Память: 0.59 MB
Время: 0.047 c