成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

美國航天局的十大編碼戒律

開發 后端 前端
美國航空航天局(NASA,以下皆用英文簡稱)有一套自己的編碼標準,以確保所有NASA應用的代碼質量和安全。這些標準漸漸演變適用于廣大的軟件開發行業。

美國航空航天局(NASA,以下皆用英文簡稱)有一套自己的編碼標準,以確保所有NASA應用的代碼質量和安全。這些標準漸漸演變適用于廣大的軟件開發行業。

代碼安全規則

JPL(噴氣推進實驗室)的***科學家Gerard J. Holzmann表示,甚至是關鍵應用的代碼質量也因為大量任意的規則和不一致的準則而受害。這也是為什么實驗室要發布編碼十誡來管轄所有NASA軟件的原因。

[[141315]]

Holzmann和團隊在設計這些軟件開發規則時,時刻謹記代碼的安全問題。該規則明確寫明是關于C語言的——C語言是NASA用于備份關鍵安全代碼的支柱語言,有著悠久的歷史和廣泛的工具支持。不過,這些也可應用于其他大多數編程語言:

  • 限制所有代碼為簡單的控制流結構——不使用goto語句,不使用setjmp和longjmp結構以及直接或間接的遞歸。

  • 所有的循環必須有固定的上限。用檢查工具靜態地證明,預先設定的上限是一個循環不能超過的迭代次數,在數學上是可能的。如果循環限制不能靜態證明,那么就違背了此條規則。

  • 初始化后不要使用動態內存分配。

  • 一個函數在標準參考格式下——每個語句一行,每個聲明一行——得能印刷到同一張紙上。通常,這意味著每個函數的代碼不超過60行左右。

  • 代碼的斷言密度應平均為至少每個函數有兩個斷言。斷言用于檢查異常情況,在現實執行中是永遠不會發生的。斷言必須始終是無副作用的,并且被定義為 布爾測試。如果斷言失敗,那就應該采取明確的恢復行動,例如,通過返回錯誤條件到執行失敗斷言的函數的調用者。對于任何斷言,靜態檢查工具可以證明,它永 遠不會失敗或從未違背此條規則(即,不可能通過增加無益的“assert(true)”語句來滿足此條規則)。參見:《Developing NASA’s mission software with Java》

  • 數據對象必須在盡可能小的范圍內聲明。

  • 非空函數的返回值必須由每個調用函數進行檢查,參數的有效性必須在每個函數內部進行檢查。

  • 使用預處理器必須僅限于包含頭文件和簡單宏定義。標記粘貼,變量參數列表,以及遞歸宏調用是不允許的。所有宏必須擴展到完整的語法單位。條件編譯 指令的使用通常也是靠不住的,但無法始終避免。這意味著,我們不應該超出標準樣板,即使在大型軟件開發中,也不應該有超過一個或兩個條件編譯指令,并避免 多次包含相同的頭文件。每一次使用條件編譯指令都應該有正當理由,并在代碼中通過基于工具的檢查器標記。

  • 指針的使用應當受到限制。具體地講,解引用不允許超過一個級別。指針解引用操作可能無法隱藏在宏定義或內部定義類型聲明。函數指針是不允許的。

  • 從開發的***天開始,所有代碼都必須進行編譯,并且所有的編譯器警告應該在編譯器最嚴謹的設置下開啟。所有代碼都必須在這些設置沒有任何警告下進行編譯。所有代碼每日至少必須經過一臺靜態源代碼分析器檢查,當然***能夠不止一臺,并在零警告下通過分析。

***,正如Holzmann解釋的那樣:

如果你覺得這些規則看上去過于苛刻,那么請不要忘記,這是在NASA,你的生命可能就取決于它的正確性:代碼要用來控制你飛的飛機,核能量與你住的地方可能只有幾英里,或攜帶宇航員送入軌道的航天器。

這些規則正是這一行業所需的數字安全帶——畢竟,生命之重重于泰山,否則將會帶來一場浩劫……

譯文鏈接:http://www.codeceo.com/article/nasa-10-coding-commandments.html
英文原文:NASA’s ten coding commandments

歡迎發表你的看法。

責任編輯:王雪燕 來源: 碼農網
相關推薦

2015-11-03 10:01:07

美國航空航天局數據中心

2023-04-27 19:22:30

2020-07-21 10:22:28

網絡安全黑客技術

2009-02-04 08:41:16

谷歌NASA美國國家航空航天局

2011-03-31 10:22:41

Java開發

2012-07-30 10:04:56

2024-12-25 15:07:43

2012-02-16 09:35:26

美國國家航空航天局NASA大型機

2024-12-25 16:13:41

2011-03-30 10:15:24

2015-12-15 14:38:12

2020-03-29 23:15:29

人工智能社交媒體AI

2015-12-25 11:34:25

2010-12-28 09:53:39

2020-04-28 14:40:02

云監工直播火星

2020-10-22 12:32:51

AI 衛星人工智能

2014-06-16 16:13:08

2017-01-04 16:09:49

2018-01-31 10:31:09

OpenStack開源框架
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 黑人精品| 精品一二区 | 91精品一区| 精品少妇一区二区三区在线播放 | 99re在线视频 | 国产成人精品免高潮在线观看 | 亚洲国产一区在线 | 久久久久久久久久久久久久久久久久久久 | 午夜男人视频 | 性网站免费| 毛片久久久 | 亚洲激情在线观看 | 日韩福利 | 国产高清91 | 2018国产精品 | 日本成人三级电影 | 欧美日本免费 | 国产成人精品一区二区 | 亚洲视频国产视频 | 涩涩鲁亚洲精品一区二区 | 国产日韩欧美二区 | 欧洲视频一区二区 | 日本精品网站 | 国产在线97 | 国产精品日韩欧美一区二区 | 在线成人免费观看 | 国产精品高清一区二区 | 一级一级毛片免费看 | 日韩一区二区av | 一级免费毛片 | 欧产日产国产精品v | 成人欧美一区二区三区1314 | 自拍偷拍中文字幕 | 在线观看国产视频 | 2019精品手机国产品在线 | 国产成人a亚洲精品 | 亚洲一级毛片 | 国产一级黄色网 | 日本在线一区二区 | 91成人在线视频 | 91精品麻豆日日躁夜夜躁 |