Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.06;
Скачать: CL | DM;

Вниз

Хороший тон программирования   Найти похожие ветки 

 
Zhenka ©   (2003-02-16 12:50) [0]

Иногда в источниках встречается "Исп. этой ф-ии - плохой тон!"!"
А как отличить Хороший тон от плохого
============================
Edit1.text:="Bad";
Edit1.Hint:="MegaBad";
Edit1............;
=======плохой тон???======
===========================
With edit1 do
begin
text:="Rulez";
Hint:="MegaRulez";
end;
=====Хор.тон??======


 
ZeroDivide ©   (2003-02-16 12:58) [1]

Да это фича такая. Язык то эволюционирует и некоторые функции отмирают. Споры вот до сих пор идут про мой любимый оператор
GOTO, а между тем это что ни на есть(или нинаесть?) самый быстрый short jamp.


 
Anatoly Podgoretsky ©   (2003-02-16 12:58) [2]

У меня другое мнение, противоположное.
Теперь ответ, видишь в моем вопросе слово мнение


 
Cr@sh ©   (2003-02-16 13:00) [3]

Использование goto плохой тон, а так пиши в свое удовольствие... хороший тон, плохой тон... фигня это все :)


 
Zhenka ©   (2003-02-16 13:05) [4]

Может"Плохой тон" реализует кое что медленнее чем "Хороший",
или вопрос касается только синтаксиса?


 
Юрий Зотов ©   (2003-02-16 13:12) [5]

> Cr@sh © (16.02.03 13:00)
> хороший тон, плохой тон... фигня это все :)

Прогоните в большом цикле 2 варианта, которые привел Zhenka в вопросе. Сравните их по времени исполнения.

Или еще пример - замена запятых на точки:

1. Плохой тон.
while Pos(",", StringList.Text) > 0 do
StringList.Text[Pos(",", StringList.Text)] := ".";

2. Хороший тон.
S := StringList.Text;
P := Pos(",", S);
while P > 0 do
begin
S[P] := ".";
P := Pos(",", S)
end;
StringList.Text := S;

Тоже сравните в большом цикле по времени исполнения.




 
Юрий Зотов ©   (2003-02-16 13:17) [6]

> Zhenka © (16.02.03 13:05)

Плохой тон - это ненадежный, медленный, громоздкий код, жрущий много памяти и других ресурсов. И т.д.

Хороший тон - наоборот.

Как добиться хорошего тона:
1. Много читать.
2. Думать над каждой буквой в программе. Никогда не халтурить даже в мелочах. Это должно войти в привычку.
3. Опыт и еще раз опыт.


 
Юрий Зотов ©   (2003-02-16 13:21) [7]

Добавление:

3. Тон еще лучше:
S := StringList.Text;
for i := 1 to Length(S) do
if S[i] = "," then S[i] := ".";
StringList.Text := S;


 
Zhenka ©   (2003-02-16 13:36) [8]

Спасибо, вродебы всё понятно


 
Shadow ©   (2003-02-16 13:47) [9]

Бред какой-то... Если руки кривые - никакое знание хорошего или плохого тона не поможет.

2All
Интересно, что вы скажите про хороший и плохой тона в Ассемблере.


 
Anatoly Podgoretsky ©   (2003-02-16 13:55) [10]

Индетично, теже слова, есть там и хорошие и плохие методы, можем назвать их тоном.
Вот пример
MOV EAX, 12
MOV EAX, CR


 
Shadow ©   (2003-02-16 14:32) [11]

2Anatoly Podgoretsky
Ассемблер не тот язык, где богатство выбора. И методы, есть суть факт непреложные, не тон.


 
Serious Sam   (2003-02-16 14:49) [12]

>как отличить Хороший тон от плохого

Если сертифицированный мастак рекомендует, значит хороший тон!...

:o)


 
Anatoly Podgoretsky ©   (2003-02-16 15:04) [13]

Shadow © (16.02.03 14:32)
Ты просил приветси пример плохого и хорошего тона в ассемблере, я привел самый простейший случай, свободы для творчества там много, особо учитывая объектно ориентированные расширения и макросы.


 
kaif ©   (2003-02-16 15:14) [14]

Хороший тон это придерживаться определенных сложившихся традиций в конкретной области. Но это не догма. Если нарушение традиции дает заметный выигрыш в чем-то, то можно на это пойти. Но нарушение традиции должно быть оправдано веским аргументом.
А в сотальном я согласен с

>Юрий Зотов © (16.02.03 13:17)
>Как добиться хорошего тона:
>1. Много читать.
>2. Думать над каждой буквой в программе. Никогда не халтурить >даже в мелочах. Это должно войти в привычку.
>3. Опыт и еще раз опыт.



 
Zhenka ©   (2003-02-17 05:24) [15]

Вспомнил!!
Из FAQ- "но учтите - Использование WinExec - Плохойтон, лучше исп. ShellExecute."
Что бы это значило??
=========================
function WinExec(lpCmdLine: LPCSTR; uCmdShow: UINT): UINT; stdcall;
=======================================
function ShellExecute(hWnd: HWND; Operation, FileName, Parameters,
Directory: PChar; ShowCmd: Integer): HINST; stdcall;
======================================
Делают в принципе одно и тоже, только у Шела параметров побольше!!!


 
Zhenka ©   (2003-02-17 05:26) [16]

Вспомнил!!
Из FAQ- "но учтите - Использование WinExec - Плохойтон, лучше исп. ShellExecute."
Что бы это значило??
=========================
function WinExec(lpCmdLine: LPCSTR; uCmdShow: UINT): UINT; stdcall;
=======================================
function ShellExecute(hWnd: HWND; Operation, FileName, Parameters,
Directory: PChar; ShowCmd: Integer): HINST; stdcall;
======================================
Делают в принципе одно и тоже, только у Шела параметров побольше!!!


 
Думкин ©   (2003-02-17 06:23) [17]

С
> kaif © (16.02.03 15:14)
> >Юрий Зотов © (16.02.03 13:17)
> >Как добиться хорошего тона:
> >1. Много читать.
> >2. Думать над каждой буквой в программе. Никогда не халтурить
> >даже в мелочах. Это должно войти в привычку.
> >3. Опыт и еще раз опыт.

тоже согласен, но иногда бывает сроки жмут, потом правда, себя как на пополам распиленым чувствуешь, и урываешь время ... приводишь код в соответствие с внутренним духовным циклом. %-)))
Терпеть ненавижу использование в описаниях класса конкретных экземпляров (кроме понятно Application, Screen). А в других моментах - ... ну плохо это. Да и ало ли.


 
Zhenka ©   (2003-02-17 06:45) [18]

Акак узнает Юзер, что при написании прг я ип-л методы, которые нз-т в народе Плохим тоном??


 
Думкин ©   (2003-02-17 06:49) [19]


> Zhenka © (17.02.03 06:45)

Может и не узнает. Хотя дерьмовые проги бывает сразу видно.
Но тут ведь как - "картины для души и на продажу". Что делаешь - оттуда и ответ.


 
Radionov Alexey ©   (2003-02-17 07:22) [20]

>Zhenka © (17.02.03 06:45)
Каждая новая версия глючнеее и тормознее - имхо верный признак Плохого тона.


 
Zhenka ©   (2003-02-17 07:28) [21]

2Radionov Alexey
Исходя из этого МЕлкософт Ваще чёто плохо програмит, иначе зачем сервис паки Хорошим прогам (ПРимер Флэш гет)


 
Radionov Alexey ©   (2003-02-17 07:42) [22]

>Zhenka © (17.02.03 07:28)
Про "МЕлкософт", вернее про Windows почитай книжки Руссиновича а потом решим что именно становится глючнее и тормознее.


 
Zhenka ©   (2003-02-17 07:46) [23]

2Radionov Alexey
Нема книги, может подскажеш откуда закачать??

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



 
Юрий Зотов ©   (2003-02-17 09:45) [24]

> Zhenka © (17.02.03 05:26)
> Из FAQ- "но учтите - Использование WinExec - Плохойтон, лучше
> исп. ShellExecute."
> Что бы это значило??

Читаем справку:

This function is provided for compatibility with earlier versions of Windows. For Win32-based applications, use the CreateProcess function.

И еще:
Obsolete Functions - WinExec, Yield.

Это значит, что в очередной версии Windows эта функция может уже и не поддерживаться. Соответственно, программа под ней работать не будет.


> Zhenka © (17.02.03 06:45)
> Акак узнает Юзер, что при написании прг я ип-л методы, которые
> нз-т в народе Плохим тоном??

Например, поставит себе супер-пупер-современную Windows, а программа под ней работает. Вот так и узнает. И обязательно что-нибудь скажет о такой программе и о ее авторе.


 
Думкин ©   (2003-02-17 10:22) [25]


> Юрий Зотов © (17.02.03 09:45)

То бишь - не работает? А то запутаете мужиков. :-)


 
Zhenka ©   (2003-02-17 15:42) [26]

Ну мало по мальски понимаю.
Спасибо всем за всё



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

Текущий архив: 2003.03.06;
Скачать: CL | DM;

Наверх




Память: 0.53 MB
Время: 0.023 c
3-16937
Олег2406
2003-02-14 11:12
2003.03.06
Замучала ошибка Invalid..Insufficient... Table: С ... _QSQ12.db


14-17367
Сатир
2003-02-16 15:22
2003.03.06
Третья встреча мастаков в Киеве


1-17138
Luc
2003-02-17 07:23
2003.03.06
Картинки в FastReport 2.45


4-17441
Cosmic
2003-01-16 22:07
2003.03.06
Attach to process


7-17403
123000
2003-01-07 13:48
2003.03.06
Фон подписей к значкам на Десктопе