Компьютерный форум NoWa.cc

Компьютерный форум NoWa.cc (https://nowa.cc/index.php)
-   Программирование (https://nowa.cc/forumdisplay.php?f=295)
-   -   Кусок кода (https://nowa.cc/showthread.php?t=83114)

pluton 15.03.2007 10:16

Кусок кода
 
Писал как-то игру на Джаве. В одной функции был такой кусок кода:
Код:

if (xH == xHeart && yH == yHeart)
{
    eatFlag = true;
    speed--;
}
else
    eatFlag = false;

Так я подумал может быстрее и/или лучше будет так:
Код:

eatFlag = (xH == xHeart && yH == yHeart);
if (eatFlag)
    speed--;

Скажите своё мнение. Спасибо

mikle 15.03.2007 21:27

Re: Кусок кода
 
Так бужет _хуже_ потому что непонятнее. В XXI веке на яве так писать не стоит ни при каких обстоятельствах (даже если это дает выигрыш по скорости, что в данном случае невероятно даже для тугодумной ява-машины). Но если уж извращаться, то как-нибудь так:
Код:

speed += (eatFlag = (xH == xHeart && yH = yHeart));
:evil: тут уж весь букет компиляторозависимостей будет :) Впрочем, ява такую гадость, кажется, не примет, нету ее под рукой чтобы проверить ;)

pluton 15.03.2007 21:38

Re: Кусок кода
 
Цитата:

Сообщение от mikle (Сообщение 815201)
speed += (eatFlag = (xH == xHeart && yH = yHeart));

мда, ход очччень интересный :)

Buchos 16.03.2007 19:39

Re: Кусок кода
 
Цитата:

Сообщение от mikle (Сообщение 815201)
... Но если уж извращаться, то как-нибудь так:
Код:

speed += (eatFlag = (xH == xHeart && yH = yHeart));
:evil: тут уж весь букет компиляторозависимостей будет :) Впрочем, ява такую гадость, кажется, не примет, нету ее под рукой чтобы проверить ;)

нет конечно, слева число, а справа булеан. как оно будет работать?

koderr 17.03.2007 13:32

Re: Кусок кода
 
Цитата:

Сообщение от mikle (Сообщение 815201)
Так бужет _хуже_ потому что непонятнее. В XXI веке на яве так писать не стоит ни при каких обстоятельствах (даже если это дает выигрыш по скорости, что в данном случае невероятно даже для тугодумной ява-машины). Но если уж извращаться, то как-нибудь так:
Код:

speed += (eatFlag = (xH == xHeart && yH = yHeart));
:evil: тут уж весь букет компиляторозависимостей будет :) Впрочем, ява такую гадость, кажется, не примет, нету ее под рукой чтобы проверить ;)

и не +=, а -=

mikle 17.03.2007 17:44

Re: Кусок кода
 
Цитата:

и не +=, а -=
это как повезет :cool:

Valeron 22.05.2007 21:49

Ответ: Кусок кода
 
согласен... второй вариант значительно хуже.. так как менее понятен.. более того, первый вариант тоже модно ЗНАЧИТЕЛЬНО улучшить :)

pluton 22.05.2007 21:53

Ответ: Кусок кода
 
Цитата:

Сообщение от Valeron (Сообщение 958882)
первый вариант тоже модно ЗНАЧИТЕЛЬНО улучшить

например?
как можно улучшить?

Valeron 28.05.2007 11:58

Ответ: Кусок кода
 
например.. хорошим правилом считается следующие - если после if идут фигурные скобки { ... code ... } то и после else их тоже нужно поствить { ... code ... }, после этого код станет читать легче.. такую практику желательно применять по всей програме (а лучше всегда при программирование на языке).. я не исключаю, что в другом месте вы ставите скобки, а в этом нет; или иногда даже задумываетесь - нужны здесь скобки или нет - я советую выраюотать соглашения, чтобы при решении конкретных проблем не отвлекатся на мелочи.. далее переменная eatFlag имеет неадекватное название.. в заканчивать переменную через Flag считается правилом плохого тона, если только конечно переменная конечно неозначает именно флаг.. а даном члучае она не означает.. как мне кажется из контекста.. далее сколько я не читал код я не понял я не понял условие if (xH == xHeart && yH == yHeart) названия переменных неадекватно... код не способствует поничанию что делает программа, что проверяет условие.. и так дадее.. и еще одно... на счет оптимизации кода, и второго варианта.. есть еще одно хорошее правило - не безпокоится о производительности кода, до тех пор пока вы явно не диагнозтикуете проблему в конкретном куске кода.. на практике это означает, что не нужно жертвовать качеством кода (читайте понятностю), в замен сомнительной оптимизации по скорости..
Не судите меня чтрого, это только моя работа.

mboarder 08.06.2007 06:43

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

pluton 08.06.2007 11:24

Ответ: Кусок кода
 
Цитата:

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

если бы я на пылесос писал, я бы на асме писал, а не на джаве :)


Текущее время: 19:05. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2026, vBulletin Solutions, Inc. Перевод: zCarot
Copyright ©2004 - 2026 NoWa.cc

Время генерации страницы 0.02623 секунды с 9 запросами