Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Sta je pametnije?

[es] :: Art of Programming :: Sta je pametnije?

[ Pregleda: 4790 | Odgovora: 12 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

sojic
Dalibor Sojic
Makedonija

Član broj: 7051
Poruke: 796
62.220.218.*

Sajt: right-sock.net


+1 Profil

icon Sta je pametnije?03.11.2004. u 17:37 - pre 236 meseci
Radi se o razlicnim mislenja. U principu radi se o ne bitnoj sitnici koja mislim da kako i da se resi je ispravno, ali ipak.... Sta je bolje (i zasto, dali je brze).

$Odgovor je boolean

99% od slucaja $Odgovor = false

Kako bi vi resile problem?


Code:

if ($Odgovor) {
    izvrsi nesto
}
else {
    izvrsi nesto drugo
}


ili

Code:

if (!$Odgovor) {
    izvrsi nesto drugo
}
else {
    izvrsi nesto
{


routing protocols enable routers to route routed protocols!
 
Odgovor na temu

JogyII

Član broj: 29257
Poruke: 623
*.SMIN.panline.net.



Profil

icon Re: Sta je pametnije?03.11.2004. u 17:48 - pre 236 meseci
prva verzija, lakse se odrzava, i smanjuje mogucnost greske

inace vecina danasnjih kompajlera, interpretatora ... je sposobna da interno to prebaci u drugi oblik, i time ga ubrza, a i da nije u praksi je vaznije da se program 10% lakse odrzava nego da radi 10% brze

So Long, and Thanks for All the Fish


 
Odgovor na temu

sojic
Dalibor Sojic
Makedonija

Član broj: 7051
Poruke: 796
62.220.218.*

Sajt: right-sock.net


+1 Profil

icon Re: Sta je pametnije?03.11.2004. u 22:32 - pre 236 meseci
Zar samo jedan odgovor? 1:0. Dajte malo vise :)))
routing protocols enable routers to route routed protocols!
 
Odgovor na temu

CimBac
Fax
Novi Sad

Član broj: 37332
Poruke: 157
*.axpan.net.

Sajt: irrlicht.sourceforge.net


Profil

icon Re: Sta je pametnije?04.11.2004. u 01:13 - pre 236 meseci
Bolja je druga varijanta jer se dvostrukom negacijom dobija konfirmacija 1:1
 
Odgovor na temu

BytEfLUSh
Neven Pintarić
Nano-mage Engineer, Slave SysAdmin
Sombor

Član broj: 21153
Poruke: 5499
*.nat-pool.so.sbb.co.yu.



+14 Profil

icon Re: Sta je pametnije?04.11.2004. u 01:24 - pre 236 meseci
Bez negacije se takođe dobija konfirmacija, a zbog čega komplikovati program?

Putuj planeto, super smo se družili
nama je lepo, taman kako smo zaslužili!
 
Odgovor na temu

sojic
Dalibor Sojic
Makedonija

Član broj: 7051
Poruke: 796
62.220.218.*

Sajt: right-sock.net


+1 Profil

icon Re: Sta je pametnije?04.11.2004. u 01:27 - pre 236 meseci
Najverovatno zbog jednacenje rezultata

routing protocols enable routers to route routed protocols!
 
Odgovor na temu

filjo

Član broj: 17551
Poruke: 136
*.co.yu.



+1 Profil

icon Re: Sta je pametnije?04.11.2004. u 05:44 - pre 236 meseci
Izracunaj $Odgovor
AND AL,AL
JE izracunaj drugi odgovor ili JNE izracunaj drugi odgovor
Izracunaj odgovor
JMP dalje
Izracunaj drugi odgovor
dalje


Trebalo bi da brze radi ako je odgovor netacan(ako skace na else) jer izbegava JMP dalje.

Mislim da ovo nije toliko bitno koliko je bitno da li se izracunava ceo $Odgovor, posto ako se on ne izracunava u celosti, trebalo bi da se pazi na komponovanje logickih operatora unutar izraza tj. da se kompajleru pomogne da sto brze dodje do tih 99% netacnih odgovora.
 
Odgovor na temu

jablan

Član broj: 8286
Poruke: 4541



+710 Profil

icon Re: Sta je pametnije?04.11.2004. u 08:05 - pre 236 meseci
Pravilno je pisati tako da if blok bude veći od else bloka. Ako su otprilike jednaki, pretpostavljam da važi Jogijevo pravilo čitljivosti.

Ispravka samog sebe.

Sad sam pogledao Code Complete, pravilno je sledeće: u if blok pisati kood koji bi trebalo da bude normalan (dominantan) tok izvršavanja programa, a u else alternativni (koji odgovara grešci ili izuzetku).
 
Odgovor na temu

-zombie-
Tomica Jovanovic
freelance programmer
ni.ac.yu

Član broj: 4128
Poruke: 3448
*.62.EUnet.yu.

Sajt: localhost


+5 Profil

icon Re: Sta je pametnije?04.11.2004. u 17:58 - pre 236 meseci
Citat:
jablan:
Pravilno je pisati tako da if blok bude veći od else bloka. Ako su otprilike jednaki, pretpostavljam da važi Jogijevo pravilo čitljivosti.


pravilno? po kom pravilu? čijem?

ili još bitnije, po kojoj logici?

Citat:
Sad sam pogledao Code Complete, pravilno je sledeće: u if blok pisati kood koji bi trebalo da bude normalan (dominantan) tok izvršavanja programa, a u else alternativni (koji odgovara grešci ili izuzetku).


ovo već ima smisla.. ;)

mada, moram da priznam da ponekad više volim, ako su npr prosleđeni parametri loši, da što pre izađem iz funkcije.. znači nešto tipa:

Code:
if (param1==null) return false;

što naravno nije sasvim po PS (pravilima službe), ali je IMHO često preglednije..


[Ovu poruku je menjao -zombie- dana 04.11.2004. u 19:07 GMT+1]
 
Odgovor na temu

sasas
Saša Slavnić
radim za neke švabe

Član broj: 35478
Poruke: 617
195.246.3.*



Profil

icon Re: Sta je pametnije?04.11.2004. u 18:05 - pre 236 meseci
Citat:
-zombie-:
mada, moram da priznam da ponekad više volim, ako su npr prosleđeni parametri loši, da što pre izađem iz funkcije.. znači nešto tipa:
Code:
if (param1==null) return false;

što naravno nije sasvim po PS (pravilima službe), ali je IMHO često preglednije..


Zasto nije po PS? Ja to redovno koristim, upravo radi citkosti, i upravo kod prosledjivanja parametara. Da li ima neko pravilo za takve slucajeve?

ss.
When something is hard to do, then it's not worth doing.
 
Odgovor na temu

jablan

Član broj: 8286
Poruke: 4541



+710 Profil

icon Re: Sta je pametnije?05.11.2004. u 08:18 - pre 236 meseci
Citat:
-zombie-: pravilno? po kom pravilu? čijem?

Već sam se ispravio. Mada, u većini slučajeva veći blok je u isto vreme i glavni blok. A bez zezanja sam čuo negde, mada ne mora da znači da je izvor bio kredibilan.
Citat:
sasas: Zasto nije po PS? Ja to redovno koristim, upravo radi citkosti, i upravo kod prosledjivanja parametara.

Zombie verovatno misli da na to da se time narušava načélo strukturnog programiranja da blok ima tačno jedan početak i tačno jedan kraj (naspram nekad ozloglašenom špageti bejzik stilu).

BTW, momci, jel iz nekog posebnog razloga ne koristite
Code:
if (param == null) throw new ArgumentException()
 
Odgovor na temu

MAD-MAX
Marko Mitic

Član broj: 351
Poruke: 1060
195.252.107.*

Jabber: MAD-MAX@jabber.com
ICQ: 65811355


Profil

icon Re: Sta je pametnije?05.11.2004. u 23:08 - pre 236 meseci
Citat:
sojic: Zar samo jedan odgovor? 1:0. Dajte malo vise :)))


Ja bih koristio prvu varijantu. Mislim da nikada nisam koristio drugu iako po knjigama koje sam citao (za C++,C#,Java,) cesce sam sretao drugu varijantu. Mozda ja malo "missing the point" ali ne vidim prednost drugog nacina.


Poz.
"If you do what you always did! - You will get what you always got!"
 
Odgovor na temu

[es] :: Art of Programming :: Sta je pametnije?

[ Pregleda: 4790 | Odgovora: 12 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.