Image
10.8.2015 0 Comments

Programátori NASA musia dodržiavať prísne pravidlá. Nemôžu napríklad používať rekurziu

Vývoj kritických aplikácií pre NASA (napr. na riadenie lietadiel či kozmických lodí) je doslova životne dôležitý, pričom kvalita kódu a bezpečnosť sú prvoradé. Preto NASA vypracovala štandardy na programovanie a pravidlá na zabezpečenie spoľahlivosti kritického softvéru.

Tieto smernice pre Jet Propulsion Laboratory (JPL) spadajúce pod NASA boli vypracované v Kalifornskom technologickom inštitúte na základe zmluvy a v súčasnosti sa v JPL používajú experimentálne, pričom výsledky sú povzbudivé. Hoci sa zameriavajú na kód napísaný v jazyku C, pretože softvér pre sondy a ďalšie vesmírne zariadenia sa píše pre efektívnosť práve v tomto jazyku, mohli by byť upravené aj pre ďalšie programovacie jazyky.

K dispozícii je 10 pravidiel, aby bol ich súbor malý, dostatočne jasný a ľahko zapamätateľný. Niektoré z nich sú vlastne všeobecne uznávané štandardy na správny štýl a postup programovania, napríklad deklarácia dátových objektov na najmenšej úrovni rozsahu či denná kontrola kódu a jeho overovanie automatickou analýzou.

Niektoré pravidlá sa môžu zdať prísne alebo obmedzujúce, ako napríklad pravidlo číslo štyri, ktoré hovorí, že žiadna funkcia by nemala byť dlhšia než to, čo možno vytlačiť na jeden list papiera v štandardnom referenčnom formáte. Typicky to znamená, že by nemala mať viac ako 60 riadkov kódu. V zdôvodnení stojí, že každá funkcia by mala tvoriť logickú jednotku, ktorá je zrozumiteľná a overiteľná ako celok. Je však ťažké pochopiť logický celok, ktorý zaberá viac obrazoviek na displeji počítača či viac tlačených stránok. Pridlhé funkcie sú často známkou zle štruktúrovaného kódu.

Z ďalších možno spomenúť pravidlo, že na predídenie zacykleniu je zakázané používanie akejkoľvek rekurzie, skokov goto, setjmp a longjmp, pričom cykly musia mať staticky overiteľnú hornú hranicu. Pamäť možno alokovať len pri spustení úlohy, nie počas jej behu, aby sa zabránilo vzniku problémov s dynamickou alokáciou pamäte.

Ak vás tieto pravidlá a ich zdôvodnenia zaujímajú a chcete ich preštudovať podrobnejšie, môžete tak urobiť v tomto dokumente PDF.

Zdroj: lifehacker.com
jaxenter.com


Nechajte si posielať prehľad najdôležitejších správ emailom

Mohlo by Vás zaujímať

Technológie

Video: Robot Atlas už prejde po členitom teréne bez toho, aby ho dopredu poznal

02.12.2016 11:58

Známy výrobca robotov Boston Dynamics vydal najnovšiu verziu dvojnohého robota Atlas začiatkom roka. Teraz ho v spolupráci s Florida Institute for Human & Machine Cognition (IMHC) ďalej zlepšil. N ...

Technológie

V Indii dali do prevádzky najväčšiu solárnu elektráreň na svete s výkonom 648 MW

02.12.2016 00:16

Po ôsmich mesiacoch výstavby spustili do prevádzky solárnu elektráreň v indickom Kamuthi (v štáte Tamilnádu), ktorá sa stala najväčšou na svete a na prvej priečke rebríčka nahradila kalifornskú elektr ...

Technológie

Japonská neurónová sieť vie vyfarbiť čiernobiele obrázky. Vyskúšajte si to

01.12.2016 00:16

Máte čiernobiele fotografie, no radi by ste z nich urobili farebné? Pomôcť vám môže šikovný nástroj založený na neurónovej sieti, ktorý vytvorili japonskí akademici z tokijskej Waseda University. Nás ...

Žiadne komentáre

Vyhľadávanie

Kyocera - prve-zariadenia-formatu-a4-s-vykonom-a3

Najnovšie videá