DevProTalk

Forumi IT profesionalaca
web development, web design, e-business, SEO


Idite nazad   DevProTalk > Web development i web aplikacije > Programiranje
Želite da se reklamirate ekskluzivno na ovoj poziciji? Javite se

Programiranje Java, Perl, VB, ASP, .NET, C, C++, Pascal, Delphi Sponzor: VIP izazov 3

Odgovori
 
Alati teme Način prikaza
Staro 19. 01. 2012.   #11
Gruja
Dejan Grujic
Professional
 
Datum učlanjenja: 29.09.2005
Poruke: 380
Hvala: 9
64 "Hvala" u 40 poruka
Gruja is on a distinguished road
Default

Ja UVEK stavljam zagrade u if. Jednostavno, mnogo je manja šansa da u brzini napraviš grešku ovog tipa:

Kôd:
if( $a == 'nesto' ) 
    print(a);
    return FALSE;  // Ovo nije više deo if
Gruja je offline   Odgovorite uz citat
Staro 19. 01. 2012.   #12
jablan
VD IT Direktora
Invented the damn thing
 
Avatar jablan
 
Datum učlanjenja: 08.06.2005
Lokacija: Beograd
Poruke: 2.118
Hvala: 503
1.307 "Hvala" u 282 poruka
jablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamen
Default

Citat:
Originalno napisao srdjan Pogledajte poruku
^ i ja to radim, ali više praktična stvar: možeš da staviš breakpoint na return
Off Topic: U VS-u može da se stavi breakpoint na nivou karaktera, pojedinačnih bitova unutar karaktera, pa i na elektron koji menja stanje u poluprovodniku.
__________________
blog
jablan je offline   Odgovorite uz citat
3 članova zahvaljuje jablan za poruku:
Staro 19. 01. 2012.   #13
srdjan
xyz
Grand Master
 
Datum učlanjenja: 25.10.2006
Poruke: 893
Hvala: 87
346 "Hvala" u 163 poruka
srdjan ima spektakularnu aurusrdjan ima spektakularnu aurusrdjan ima spektakularnu aurusrdjan ima spektakularnu auru
Default

Citat:
Originalno napisao jablan Pogledajte poruku
Off Topic: U VS-u može da se stavi breakpoint na nivou karaktera, pojedinačnih bitova unutar karaktera, pa i na elektron koji menja stanje u poluprovodniku.
Off Topic:
Da znaš da može na nivou nekih karaktera, evo recimo stalo je na "/" :P
Priloženi thumbnailovi
Kliknite na sliku za uvećanu verziju

Naziv:	Untitled.png
Pregleda:	540
Veličina:	36,7 KB
ID:	873  
srdjan je offline   Odgovorite uz citat
3 članova zahvaljuje srdjan za poruku:
Staro 19. 01. 2012.   #14
BraMom
Branimir Momcilovic
Qualified
 
Datum učlanjenja: 15.02.2006
Lokacija: Beograd
Poruke: 167
Hvala: 47
25 "Hvala" u 8 poruka
BraMom is on a distinguished road
Default

Off Topic:
Pored toga breakpoint može da bude i uslovni, a postoji i import/export...
Debugger-improvements
__________________
Važnije je biti ljubazan, nego biti u pravu.
BraMom je offline   Odgovorite uz citat
Staro 19. 01. 2012.   #15
_korso_
profesionalac
Qualified
 
Avatar _korso_
 
Datum učlanjenja: 21.06.2007
Poruke: 166
Hvala: 27
42 "Hvala" u 23 poruka
_korso_ is on a distinguished road
Default

Citat:
Originalno napisao srdjan Pogledajte poruku
PHP kôd:
function json_get_user() {
    
$user UserFactory::getById($_POST['user_id']);
    if(empty(
$user)) {
       
$result['status'] = 'fail';
       
$result['msg'] = 'User not exists';
    } else {
       
$result['data'] = $user;
       
$result['status'] = 'ok';
    }

Svako ima svoje navike i svoje tumacenje sta je citljivo sta ne.
Verovatno zato i mnogi ozbiljni fw imaju neki coding guides (kako pisati uslove, imenovati promenjive ...)bilo da su Javascript, PHP, Ruby, kako bi naveli timove da pisu kod koji svako moze da cita, a ne da svako pise kako mu je volja.

Ja u PHP-u cesto(zavisi od nekih faktora) definisem defaultne vrednosti promenjive, bilo da je niz ili int (mada opet radim i kao sto je gornji deo koda - tesko je izolovati i generalizovati, a nekada opet kada ima mnogo uslova imam i vise returna).

Tako da bi ovo napisao verovatno i ovako:
PHP kôd:
function json_get_user() {
    
$user UserFactory::getById($_POST['user_id']);
    
$result = array('status' => 'fail''data' => 'User not exists');

    if(!empty(
$user)) {
       
$result['data'] = $user;
       
$result['status'] = 'ok';
    }

Eliminisem jedan else, vidim gde je definisana promenjiva i ako ne prodje uslov imace *uvek* ove izdvojene vrednosti.
Mozda je to nekom manje citljivo, mozda vise, ali tim u kome radim je navikao da radi sa ovakvim nekim stilom pisanja.
__________________
Twitter

Poslednja izmena od _korso_ : 19. 01. 2012. u 14:24.
_korso_ je offline   Odgovorite uz citat
"Hvala" _korso_ za poruku:
Staro 19. 01. 2012.   #16
tasmaniski
profesionalac
Professional
 
Datum učlanjenja: 08.11.2010
Poruke: 211
Hvala: 68
78 "Hvala" u 32 poruka
tasmaniski is on a distinguished road
Default

^jos samo da si dao ime funkcije: jsonGetUser() - i to je taj prepoznatljiv stil koji mnogi koriste
tasmaniski je offline   Odgovorite uz citat
Staro 19. 01. 2012.   #17
robi-bobi
expert
Grand Master
 
Avatar robi-bobi
 
Datum učlanjenja: 05.10.2005
Lokacija: Sofia, Bulgaria
Poruke: 805
Hvala: 222
958 "Hvala" u 68 poruka
robi-bobi ima spektakularnu aururobi-bobi ima spektakularnu aururobi-bobi ima spektakularnu aururobi-bobi ima spektakularnu aururobi-bobi ima spektakularnu aururobi-bobi ima spektakularnu aururobi-bobi ima spektakularnu aururobi-bobi ima spektakularnu auru
Pošaljite poruku preko Skype™ za robi-bobi
Default

^ ja sam oduvek pisao funkcije sa donjom crtom ime_funkcije()
meni citljivije, a i blize jeziku u kojem pisem stalno (vecina native PHP funkcija ima taj stil )

i sad ne razumem zasto se fura taj CamelCase ili pak camelCase stil ...

recimo:
dugacko_ime_neke_funkcije ()
neToliKoDugackoIme()

oba se citaju, ali prvo skaniram brze

Poslednja izmena od robi-bobi : 19. 01. 2012. u 15:33.
robi-bobi je offline   Odgovorite uz citat
Staro 19. 01. 2012.   #18
salebab
profesionalac
Qualified
 
Avatar salebab
 
Datum učlanjenja: 10.11.2006
Lokacija: Beograd
Poruke: 102
Hvala: 19
21 "Hvala" u 18 poruka
salebab is on a distinguished road
Pošaljite ICQ poruku za salebab Pošaljite poruku preko MSN za salebab
Default

tasmaniski, možda, da je u pitanju metoda, ovde je u pitanju funkcija :P

_korso_, zanimljiva ideja sa default vrednostima, ali ja bih je izbegavao, deluje mi kao da dolazi do usporenja aplikacije kada 2x dodeljuješ vrednost, prvo default, pa ih onda prepisuješ, samo da bi se izbegao jedan else...
__________________
www.salebab.net
salebab je offline   Odgovorite uz citat
Staro 19. 01. 2012.   #19
_korso_
profesionalac
Qualified
 
Avatar _korso_
 
Datum učlanjenja: 21.06.2007
Poruke: 166
Hvala: 27
42 "Hvala" u 23 poruka
_korso_ is on a distinguished road
Default

Citat:
Originalno napisao salebab Pogledajte poruku
_korso_, zanimljiva ideja sa default vrednostima, ali ja bih je izbegavao, deluje mi kao da dolazi do usporenja aplikacije kada 2x dodeljuješ vrednost, prvo default, pa ih onda prepisuješ, samo da bi se izbegao jedan else...
Hm... Sve zavisi i od situacije kao sto rekoh gore kada se to koristi ili neke varijacije na temu. Isuvise je situacija da bi mogao da generalizujem. Inace kao performance freak veoma drzim to takvih stvari.
A i na danasnjem hw ne bih rekao da je ovo neki performance issue, pogotovo sto je verovatno zahtevnija operacija petlja/uslov nego dodeljivanje vrednosti.
Na stranu koliko sam se bugova nagledao zato sto promenljiva nije inicijalizovana, a uslov nije prosao pa dobijamo Undefined variable...
__________________
Twitter
_korso_ je offline   Odgovorite uz citat
Staro 19. 01. 2012.   #20
Dragi Tata
dinosaurus
Master
 
Avatar Dragi Tata
 
Datum učlanjenja: 29.12.2005
Lokacija: Nova Engleska
Poruke: 636
Hvala: 79
263 "Hvala" u 66 poruka
Dragi Tata će postati "faca" uskoroDragi Tata će postati "faca" uskoroDragi Tata će postati "faca" uskoro
Default

Citat:
Originalno napisao Gruja Pogledajte poruku
Ja UVEK stavljam zagrade u if. Jednostavno, mnogo je manja šansa da u brzini napraviš grešku ovog tipa:

Kôd:
if( $a == 'nesto' ) 
    print(a);
    return FALSE;  // Ovo nije više deo if

Тај аргумент сам чуо сто пута али ми никако не иде у главу: идентација у твом случају просто "вришти" да нешто није у реду - осим ако си предуго програмирао у Python-у
Dragi Tata je offline   Odgovorite uz citat
Odgovori


Alati teme
Način prikaza

Pravila pisanja
Možete ne započinjati nove teme
Možete ne slati odgovore
Možete ne slati priloge
Možete ne izmeniti svoje poruke
vB kôd je Uključen
Smajliji su Uključen
[IMG] kod je Uključen
HTML kôd je Isključen
Pogledajte forum


Vreme je GMT +2. Trenutno vreme je 21:44.


Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.
Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.