在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

為何就一個編碼標準很難達成共識

5RJg_mcuworld ? 來源:互聯網 ? 作者:佚名 ? 2017-11-15 06:54 ? 次閱讀

美國國家航空航天局(NASA)開發人員的工作是編程界最具挑戰性的工作之一。 他們編寫代碼并開發關鍵任務應用程序,安全是他們主要關注的重點。

在這種情況下,制定嚴謹的編碼準則并遵循,對于他們來說十分重要。這些規則涵蓋了軟件開發的各個方面,如應該如何編寫軟件,應該使用哪些語言特性等等。

盡管很難就一個編碼標準達成共識,NASA 的 JPL 首席科學家 Gerard J. Holzmann 還是制定了一套名為“發展安全關鍵代碼的十大規則”的代碼準則,由所有工作人員共同遵循。

由于 JPL 的工作內容與 C 語言相關,因此本指南主要關注用 C 編程語言編寫的代碼。但也可以靈活運用到其他語言上。

NASA 的十大編碼準則:

1、簡化控制流程:使用盡可能精簡的控制流程構造編寫程序 – 不要使用 setjmp 或 longjmp 構造、goto 語句,以及直接或間接的遞歸調用。

2、為循環使用固定次數上限:所有的循環必須有一個固定的上限。 必須可以被某個檢測工具靜態證實,該循環不能達到預置的迭代上限值。如果該上限值不能被靜態證實,那么可以認為違背該原則。

3、不要在初始化完成后進行動態內存分配。

4、不使用冗長的函數:如果標準格式為一個語句一行、一個聲明一行,那么函數的長度應在一張紙的范圍內,即每個函數的代碼行不能超過 60。

5、低斷言密度:代碼中斷言的密度平均低至每個函數 2 個斷言。斷言被用于檢測在實際執行中的異常情況。斷言必須沒有副作用,并應該定義為布爾測試。當一個斷言失敗時,應該執行一個明確的恢復操作,例如,把錯誤情況返回給執行該斷言失敗的函數調用者。對于靜態工具來說,任何能被靜態工具證實其永遠不會失敗或永遠不能觸發的斷言違反了該規則(例如,通過增加無用的 assert(true) 語句是不可能滿足這個規則的)。

6、以最小范圍級別聲明數據對象:該原則同時也是數據隱蔽(Data hiding)的基本原則。所有數據對象均必須以盡可能最小的范圍級別進行聲明。

7、檢查參數和返回值:應在每次調用函數后檢查非空函數的返回值,并在每個函數內部檢查參數的有效性。

8、限制預處理程序的使用:處理器的使用僅受包含頭文件和簡單的宏定義的限制。符號拼接、可變參數列表(省略號)和遞歸宏調用不被允許。所有的宏必須擴展為完整的語法單元。通常不建議使用條件編譯指令,但也不總是能夠避免每次在代碼中這樣做的時候必須有基于工具的檢查器進行標記,并有充足的理由。

9、限制指針的使用:具體來說,不允許有超過一級的解除指針引用。解除指針引用操作不可隱藏在宏定義或類型聲明中。不允許使用函數指針。

10、編譯所有代碼:從開發工作第一天開始時,在編譯器開啟最高級別警告選項的條件下對代碼進行編譯。在此設置之下,代碼必須零警告編譯通過。代碼必須通過源代碼靜態分析工具,每天檢查一次以上,且零警告通過。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5142

    文章

    19561

    瀏覽量

    315373
  • 大數據
    +關注

    關注

    64

    文章

    8952

    瀏覽量

    139571

原文標題:NASA頂級程序員是如何編程的?其實有十大準則

文章出處:【微信號:mcuworld,微信公眾號:嵌入式資訊精選】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    以DENC區塊鏈為例講解共識機制

    ?所謂共識機制,實際上就是讓區塊鏈系統的每一個節點達成致的策略和方法。技術界大佬李開復就曾經有
    發表于 08-30 14:21

    以DENC區塊鏈為例講解共識機制

    ?所謂共識機制,實際上就是讓區塊鏈系統的每一個節點達成致的策略和方法。技術界大佬李開復就曾經有
    發表于 09-05 09:58

    GaN HEMT可靠性測試:為什么業界無法就種測試標準達成共識

    以確保其可靠性?要回答這個問題,我們首先可以看下兩致力于高質量可靠性測試的委員會:JEDEC和AEC。 當前的測試標準:JEDEC和AEC電子設備工程聯合委員會(JEDEC)負責為半導體電路和存儲
    發表于 09-23 10:46

    鴻海郭臺銘未與夏普達成共識 已經離開日本

    日本媒體報道,鴻海精密董事長郭臺銘周四已經離開日本,但其此行并未能就富士康投資夏普事與后者達成共識。今年3月27日,富士康宣布以每股550日元的股價收購夏普9.9%的股價,交
    發表于 08-31 09:04 ?465次閱讀

    種改進的區塊鏈共識機制的研究與實現

    區塊鏈作為比特幣的底層技術,是種通過去中心化、去信任的方式集體維護可靠數據庫的技術方案。共識機制是區塊鏈的核心,解決了如何在
    發表于 01-10 14:24 ?1次下載
    <b class='flag-5'>一</b>種改進的區塊鏈<b class='flag-5'>共識</b>機制的研究與實現

    共識”才是達成區塊鏈應用落地的根本因素

    內部的規則、標準、流程都可能存在差異性,如果要按照同標準或原則去執行道工序,尤其是涉及到復雜業務的時候,達成
    發表于 06-22 11:55 ?543次閱讀

    華為官方和UL就跑分作弊事件達成共識

    華為官方和UL聯合發布聲明,對此事進行了解釋和澄清,雙方就下步合作達成共識
    的頭像 發表于 09-11 09:25 ?3904次閱讀

    為什么共識算法對于加密貨幣至關重要

    共識算法可以被定義為使區塊鏈網絡達成共識的機制。公共(去中心化的)區塊鏈是作為分布式系統來構建的,由于它們不依賴于中央權威,因此分散的節
    發表于 12-24 09:43 ?1121次閱讀

    POW與POS共識機制的原理比較

    ,大家沒有這樣錘定音的機構,需要通過其他方式達成共識,才能有
    發表于 03-11 10:45 ?5167次閱讀
    POW與POS<b class='flag-5'>共識</b>機制的原理比較

    如何保證區塊鏈網絡達成正確的共識

    共識是指分布式網絡中節點對某一事實達成致意見的過程。例如,比特幣的共識就是指依據其規則和流程,網絡中的節點對共享的交易記賬結果達成
    發表于 04-02 10:14 ?838次閱讀

    區塊鏈共識的錯誤陳述

    共識協議解決了計算機科學中的經典問題:許多平等的參與者如何才能就事件的全局觀點達成致?在區塊鏈術語中,這意味著同意處理交易的特定順序。
    發表于 04-08 11:38 ?1073次閱讀

    廣瀨電機和德國浩亭就單組差分信號用連接器開發達成共識

    廣瀨電機株式會社和浩亭電子 GmbH就單組差分信號(SPE)用連接器的共同開發、標準化以及銷售推廣達成共識。
    發表于 04-19 09:18 ?1262次閱讀

    區塊鏈中的共識機制是什么

    所謂共識機制,是分布式系統中的過程,用于在涉及多個不可靠節點的網絡中,在所有節點之間實現數據致性并對某個提案達成
    發表于 04-30 10:00 ?1178次閱讀

    汽車產業大國為何突然在汽車電動化上達成共識?

    在新能源汽車的技術路線上,全球汽車行業巨頭們直存在著很多分歧,比如有的堅定選擇純電動,有的看好混動,還有的瞄準氫能?;仡檮倓傔^去的2020年,德日美中四汽車產業大國,突然在汽車電動化上達成
    的頭像 發表于 02-18 15:03 ?1631次閱讀

    中環股份攜手TCL科技達成戰略合作共識

    4月7日,TCL科技集團、中環半導體與內蒙古自治區、呼和浩特市舉行合作協議簽約儀式,就進步深化合作,推動重大項目建設,促進新能源產業高質量發展達成戰略合作共識。
    的頭像 發表于 04-08 10:10 ?2006次閱讀
    主站蜘蛛池模板: sihu影院永久在线影院 | 亚洲三级电影 | 深夜视频在线观看免费 | 欧美极品在线播放 | 年轻护士3的滋味 | 在线视频精品免费 | 亚洲成人毛片 | 日本大片免费播放网站 | 色视频网址| 天天干天天噜 | 欧美成人xxxx| 日本特级黄录像片 | 天堂资源在线官网 | 国产高清视频在线免费观看 | 午夜国产高清精品一区免费 | 在线欧美成人 | ts人妖系列在线专区 | 丁香花小说 | 国模极品一区二区三区 | 激情综合网五月婷婷 | 四虎永久在线日韩精品观看 | 欧美天堂色| 欧美日韩不卡码一区二区三区 | 国产成人精品曰本亚洲77美色 | 88av免费| 32pao强力打造免费高速高清 | 变态重口极致另类在线 | 国产一区二区三区美女图片 | 禁h粗大太大好爽好涨受不了了 | 亚洲欧美高清在线 | 最新激情网 | 亚洲一区二区在线免费观看 | 综合婷婷 | 日产精品卡二卡三卡四卡乱码视频 | www毛片| 天天影视欧美综合在线观看 | 黄色免费三级 | 天天想夜夜操 | 午夜影吧 | 手机看片日韩高清1024 | 国产婷婷色一区二区三区 |