Hlavní navigace

Názor k článku Programovací jazyky z vývojářského pekla od Jan Mimránek - No vidiš a já mám místo Message{obj["u­uid"], obj["content"]}) tohle $a =...

  • Článek je starý, nové názory již nelze přidávat.
  • 2. 5. 2016 18:40

    Jan Mimránek (neregistrovaný)

    No vidiš a já mám místo

    Message{obj["u­uid"], obj["content"]})

    tohle

    $a = array(
    "uuid" => "1000",
    "content" => "11111"
    );
    Jaký je v tom rozdíl? Pokud ani jeden z nás neposere to prvotní přiřazení, tak je to ok a pokud máš funkci

    funkce ( uuid )

    a napereme tam
    funkce( Message->content )
    resp.
    funkce( $a["content] )

    Tak to je programátorova chyba.

    Dále, kompilátor v tvém případě zařve a ale za běhu, až tam ( do obj["uuid"]) někdo něco pošle co tam nemá být (jiný dat typ než v obj[uuid] čekáš) , program buď padne, nebo to ošetříš vyjímkou ......... jakkoliv ...... a uvnitř funkce funkce( Message->uuid ) po úspěšném předání uuid pak musíš ověřit, jestli je proměná v určitém rozsahu třeba, nebo jestli je uuid validní atd., nehledě na to že C pokud vím ti lehce ze stringu při přetypování, třeba v Message{obj["u­uid"], obj["content"]}), lehce udělá číslo z bitů na dané adrese (to kdyby ti někdo do uuid poslal třeba "ahoj" místo "12345" - což by se ti na webu PHP klidně mohlo u formuláře nebo XML stát ... ) .....

    No a mě to nepadne, ale zase si ve funkci funkce( $a["uuid] ) budu muset ošetřit že uuid je správné jaké chi - typ - rozsah hodnot prostě všechno, ale jak jsem psal, do té doby mne to nezajímá .... jinak taky reagovat vyjímkou ...... něčím ....