Kezdőoldal » Számítástechnika » Programozás » Javascriptben melyik átláthatóbb?

Javascriptben melyik átláthatóbb?

Figyelt kérdés

HA páratlan sort rajzolok ki AKKOR

x1 1-es indexet kap

x2 0-s indexet kap

VAGY (ha párost)

x1 0-s indexet kap

x2 1-es indexet kap


/// MEGOLDÁS 1: if-ekkel

if(r%2 == 1) {

x1 = tmp[1];

x2 = tmp[0];

}

else {

x1 = tmp[0];

x2 = tmp[1];

}

/// MEGOLDÁS 2: bitszintű műveletekkel

x1 = tmp[r%2];

x2 = tmp[~(r%2)&1];



Gondoltam még ezekre is:

/// MEGOLDÁS 3:

x1 = ((r%2 == 1)?tmp[1]:tmp[0]);

x2 = ((r%2 == 1)?tmp[0]:tmp[1]);


/// MEGOLDÁS 4:

x1 = (r%2);

x2 = tmp[~x1&1]; // x1 != x2

x1 = tmp[x1];


Javascriptben nem nagyon vagyok jártas nagyno, negálás is eszembe jutott még, de nem tudom JS-ben mennyire megvalósítható intnél ez a 0-1 invert. Ezért jutott eszembe a bit szint.


Melyik a legátláthatóbb szerintetek? esetleg más módon oldanátok meg?



2019. aug. 6. 09:21
 1/8 anonim ***** válasza:
73%
Nekem a 2-es megoldás szimpatikus. Az átláthatóságot, olvashatóságot a megfelelő (tömör de könnyen olvasható, érthető) kommentelés nagyban segíti.
2019. aug. 6. 11:27
Hasznos számodra ez a válasz?
 2/8 anonim ***** válasza:
79%
én x2 = tmp[1-r%2]; -t írnék.. szerintem átláthatóbb picit
2019. aug. 6. 11:49
Hasznos számodra ez a válasz?
 3/8 A kérdező kommentje:

#1:

igen, csak ugye komment nélkül is könnyen olvashatónak kellene lennie a kódnak, a bit szintet meg elsőre nem annyira olvasni sokaknak (még nekem sem, pedig használtam már sokszor)


#2:

köszi ez a megoldás átláthatóbb igen

2019. aug. 6. 12:25
 4/8 anonim ***** válasza:
59%

"komment nélkül is könnyen olvashatónak kellene lennie a kódnak"

Mindenképpen előny, de azért nem elsődleges szempont a futási teljesítményhez képest. #2-es megoldása valóban jobb, de azért ne spórold ki a kommentet, pár szó el fog ott férni, meghálálja magát.

2019. aug. 6. 14:53
Hasznos számodra ez a válasz?
 5/8 anonim ***** válasza:
55%

"Mindenképpen előny, de azért nem elsődleges szempont a futási teljesítményhez képest."


Az esetek 90%-ban az olvashatosag fontosabb, egyszeruen nem tudod annyira lelassitani a kodod, hogy eszreveheto legyen. Nemhiaba fejlesztenek tobb web alkalmazast python/ruby/php-ban, mint c-ben. De ha valami matekos lib-et fejlesztesz, amivel nagy adathalmazokon szamitgalnak, ott van ennek nagyobb jelentosege.

2019. aug. 6. 15:20
Hasznos számodra ez a válasz?
 6/8 anonim ***** válasza:
70%

Egyebkent en ezt talalom legkonnyebben erthetonek:


x1 = isEven(r) ? 1 : 0;

x2 = isEven(r) ? 0 : 1;


Aztam isEven()-t impelementalhatod osztasi maradekkal, vagy vizsgalhatod az elso bitet &-el. A sebesseget meg majd letesztelheted a te kododban...

2019. aug. 6. 15:28
Hasznos számodra ez a válasz?
 7/8 anonim ***** válasza:
26%

Meg erre a csacsisagra reagalnek:


"de azért ne spórold ki a kommentet, pár szó el fog ott férni, meghálálja magát"


Az a gond a kommentekkel, hogy gyakorlatilag duplikalnak informaciot. Ha atirod a kodot, a kommentet is frissiteni kell, ez sokszor elmarad es akkor csak felesleges zaj lesz. Par evnyi fejlesztosdi utan megtanulod, hogy atugord a kommenteket es a kodot nezd. Arra kell torekedni, hogy a valtozok/fuggvenyek nevei beszedesek legyenek, onmagukat dokumentaljak.

2019. aug. 6. 15:30
Hasznos számodra ez a válasz?
 8/8 A kérdező kommentje:

általában blokkoknál és if-eknél írok kommentet

esetleg függvényhez


szoktam kommentezni, sőt elég gyakran és szeretem is

de attól még fontos, hogy akár komment nélkül is elég jól olvasható legyen a kódom


ez a dolog performanciában elhanyagolható SZINTE! viszont ahol ezt alkalmazom ott is van kurzor mozgatásra lefutó függvény ahol azért jó ha az ember figyel arra mennyire is terhel


jobb szeretem pl a ritkán vagy eseményre változó adatokat előre számoltatni és nem gyakran (főleg nem ms-enként)


főleg játékfejlesztésnél érzékelem azt, hogy a performancia elengedhetetlen

2019. aug. 6. 17:37

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!