久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3900|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

電子產(chǎn)品程序設(shè)計漫談

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:128229 發(fā)表于 2016-6-29 23:06 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
                         電子產(chǎn)品軟件設(shè)計漫談
技術(shù)源于積累,成功源于執(zhí)著。
                                 ——沈輝文







一、方案的制定階段
    1. 一個項目的成敗往往不是在最后一天體現(xiàn),而是在第一天就被注定了(三軍未動,糧草先行)。也就是說,方案的制定階段直接關(guān)系到項目的成敗。因此在這個階段要細(xì)致的做好準(zhǔn)備工作,這些工作主要包括以下內(nèi)容:
    2. 制定技術(shù)開發(fā)要求,首先要搞明白我們到底想做什么?最害怕的就是那種沒有要求的設(shè)計項目。因為有時,沒有要求就意味著客戶隨時會提出新要求。這往往會陷開發(fā)者以兩難的境地。
    3. 制定實現(xiàn)方案,進(jìn)行技術(shù)準(zhǔn)備。了解技術(shù)瓶頸和難點在哪。評估這些技術(shù)難點的風(fēng)險。能否解決?如何解決?對于有經(jīng)驗的工程師來說,技術(shù)方案的定制與論證幾乎憑直覺就能完成。而對于新手來說,這些工作切往往很難獨(dú)立完成,需要前輩給予指導(dǎo)或協(xié)助。
    4.評估整個項目開發(fā)需要的各方面的資源,包括:人力、工具、材料、場地、經(jīng)費(fèi)等。并由此核算與評估項目的成本(包括研發(fā)成本和生產(chǎn)成本)。
    5.評估確定開發(fā)周期。開發(fā)周期有兩個概念,一個是指工程師評估出來的開發(fā)周期。一個是指市場方面希望的完工時間期限。當(dāng)二者發(fā)生矛盾時,就必須進(jìn)行協(xié)調(diào)。要么市場方面放寬期限,要么增派人手或安排加班。
    在整個立項過程中,工程師往往只把關(guān)注的目光片面地投向技術(shù)方案本身,而忽略了市場前景預(yù)估,成本核算、工具和材料的準(zhǔn)備以及人力資源的調(diào)度等等。其實這些因素同樣關(guān)系著產(chǎn)品的成敗,需要給予足夠的重視。必要時,應(yīng)該請相關(guān)人員共同參與,進(jìn)行評估和協(xié)助。
二、產(chǎn)品設(shè)計階段
    在經(jīng)過多方面的綜合評估,確認(rèn)方案可行,即可立項,進(jìn)入具體的設(shè)計階段了。其實這個設(shè)計階段中包含了系統(tǒng)、程序、電路、機(jī)械結(jié)構(gòu)等多方面的內(nèi)容。由于本手記主要講電子程序設(shè)計。因此就撇開其他,只講程序。在這個階段工程師的主要任務(wù)是:
    1.程序框架的規(guī)劃。
    2.各個模塊功能的細(xì)分。
    3.系統(tǒng)資源的分配。
    4.算法的設(shè)計。
    5.程序流程圖的繪制。
    新手們常常喜歡跳過這個階段,蠢蠢欲動地直接上機(jī)去寫程序,邊寫邊調(diào)。滿以為這樣可以加快進(jìn)度,結(jié)果往往事倍功半,反而耽誤了時間。
    其實,磨刀不誤砍柴工。這個階段付出的辛苦,將在后面幾個階段獲得N倍的報答。反之,這個階段的任何一點懈怠,都有可能為以后的工作埋下禍根。
三、代碼編寫階段
    這個階段就是我們平時所謂的寫程序了,其實是最沒技術(shù)含量的活,誰都能干。這個階段最基本的要求就是盡量減少筆誤現(xiàn)象,并且嚴(yán)格遵守編程規(guī)范。
    根據(jù)經(jīng)驗,筆誤現(xiàn)象是無法完全杜絕的。筆誤屬于低級錯誤,其實并不可怕。即使存在一些筆誤,也可在下一步調(diào)試階段糾正。事實上,現(xiàn)在許多編譯器已經(jīng)可以為我們發(fā)現(xiàn)許多筆誤現(xiàn)象。
    真正需要注意的是遵守編程規(guī)范。一個規(guī)范的程序文本,不但是審美的要求,而且更是后續(xù)調(diào)試和修改工作得以勝利進(jìn)行的保證。 關(guān)于編程規(guī)范,如果展開來講的話,完全可以寫一本書。
    1.向前兼容原則
    對于單個程序員來說,效率來自于不斷積累。這時要奉行的最高原則就是向前兼容。
    我們知道,許多有經(jīng)驗的編程老手,都擁有自己的程序模塊庫。當(dāng)他們需要設(shè)計一個新的程序時,只要直接從舊的項目中抽取出成熟模塊,移植到新的項目中。七拼八湊,就完成了新程序的設(shè)計。這極大提高了開發(fā)速度。
    為了讓這些模塊,能夠在不同時期的不同項目中,保持較好的兼容性,必須讓它們遵守相同的規(guī)范。
    因此,要盡快形成個人成熟、完善的程序風(fēng)格。
    2.相互兼容原則
    對于一個開發(fā)團(tuán)隊來說,效率來自于分工協(xié)作。這時要奉行的最高原則就是相互兼容。
    在團(tuán)隊中,編程者個人技巧的重要性被降低。甚至這些不和規(guī)范的技巧,會成為合作者之間溝通的障礙。
    團(tuán)隊中的個人英雄主義是失敗的先兆。而團(tuán)隊默契配合,才是成功的關(guān)鍵因素。
    因此,有必要制定統(tǒng)一的編程規(guī)范,讓團(tuán)隊中的伙伴一起遵守,避免各自為政、一盤散沙。
四、產(chǎn)品調(diào)試階段
    這個階段就是要驗證前面的工作,把程序調(diào)通。
    在這里,調(diào)通的概念并不是說,程序在正常狀態(tài)下,偶然正確運(yùn)行那么一回就算萬事大吉。我們要保證,程序在各種可能的狀態(tài)(包括異常狀態(tài))下都能按預(yù)期的要求工作。
    曾經(jīng)聽說,某某高手一口氣寫了N多K的程序,沒有經(jīng)過調(diào)試,一次燒片就成功了。我覺得這簡直就是神話一般不可思議。我堅信一點,就是沒有BUG的程序是不存在的。這年頭,就連Windows XP都渾身是補(bǔ)丁,誰又能宣稱自己比比爾蓋茨還牛呢?
    調(diào)試階段要做的兩件重要事情:一是測試,就是要進(jìn)可能多地找出程序中的BUG;二是DEBUG,就是要解決這些BUG。
    找不出BUG,或解決不了BUG,都是失敗。
    程序員往往更善于解決BUG,卻不善于發(fā)現(xiàn)BUG。這是由于程序員面對自己的程序,往往會存在視覺盲點。這就像禿子看不到自己的光頭一樣。另一方面,程序員即使發(fā)現(xiàn)BUG,但由于程序是自己寫的,往往不能正視之。這是一種思維障礙,就像我們常常不愿承認(rèn)自己的缺點一樣。因此,最好的解決辦法,是在程序(產(chǎn)品樣品)交付客戶之前,請其他人員進(jìn)行測試檢驗。
    在找到BUG后,需要程序員去分析問題并解決問題了。這才體現(xiàn)個人功力,拉開差距的時候呢。高手和低手的差別就在這時顯現(xiàn)出來。
五、產(chǎn)品維護(hù)階段
    這個階段是指產(chǎn)品在推向市場或交付客戶后,根據(jù)市場或客戶需求,進(jìn)行升級維護(hù),當(dāng)然也包括進(jìn)一步對隱形BUG的消除。
    一個得不到維護(hù)的產(chǎn)品,是沒有生命力的。就像一顆已經(jīng)死亡的樹,雖然表面上看來還枝繁葉茂,但實際上它已經(jīng)停止生長,遲早要腐化掉。
    同樣道理,一款常年不更新?lián)Q代的電子產(chǎn)品,會像過去的明星漸漸被人遺忘一樣,逐漸丟失市場份額,而產(chǎn)品維護(hù),是延長產(chǎn)品生命周期的不二法門。
    產(chǎn)品如何才能經(jīng)歷歲月的考驗,千錘百改,依然生機(jī)勃勃?
    1.養(yǎng)成良好的編程習(xí)慣
    程序應(yīng)該模塊化,就像積木一樣,便于拆卸或增加。
    對于MCU的一些資源,如RAM寄存器或I/O口,甚至包括一些常數(shù),必須先定義在使用,避免直接使用。將來需要調(diào)整時,只要修改定義部分就好了。
    對于相同或類似的程序段,應(yīng)該用子程序來實現(xiàn)。如果受堆棧等資源限制,不能使用子程序,則應(yīng)該用宏來實現(xiàn)。只要以后需要修改時,只需要改一點,無需改一片。
    2.自覺加強(qiáng)版本管理
    詳細(xì)記錄每個程序版本的修改細(xì)節(jié),形成一份歷史記錄。并且,每次改動后的版本都應(yīng)該保留,新版本不要覆蓋老版本的文件。一個基本原則是,凡是要燒片測試或送樣的程序版本,如需要再做修改,必須升級版本號。
    并且,每次修改程序時,相關(guān)的注釋及輔助說明文檔也應(yīng)該同步更新。免得下次再改時,發(fā)現(xiàn)對不上號。
    所有程序版本應(yīng)該妥善歸類、存檔備份。有條件最好刻成光盤,避免日久年長因病毒或硬盤損壞而丟失。








分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 欧洲一级毛片 | 亚洲成人一区 | 精品视频一区二区三区在线观看 | 成人小视频在线观看 | 青青久久av北条麻妃海外网 | 羞羞网站免费观看 | 欧美一级大片免费观看 | 久久精品亚洲欧美日韩精品中文字幕 | 中文字幕亚洲国产 | 在线精品亚洲欧美日韩国产 | 精品一区二区三区在线视频 | 性生活毛片 | 精品一区二区三区在线观看 | 亚洲日日夜夜 | 国产黄色电影 | 亚洲精品电影在线观看 | av中文在线播放 | 欧美xxxx色视频在线观看免费 | 亚洲高清视频在线观看 | 日韩免费一区二区 | 91久久国产综合久久91精品网站 | 精品国产一区二区三区久久久久久 | 亚洲一区二区不卡在线观看 | 一区二区三区在线观看视频 | 亚洲视频一区二区 | 色播久久 | 亚洲国产精品成人无久久精品 | 国产黑丝在线 | 久久精品欧美视频 | 成人亚洲网站 | 亚洲日韩中文字幕 | 国产成人在线播放 | 亚洲欧美高清 | 日韩和的一区二区 | 国产精品久久久久久久久久久久久 | 91精品国产色综合久久不卡98口 | 国产成人久久精品一区二区三区 | 日本中文字幕在线视频 | 日本三级在线视频 | 在线播放国产一区二区三区 | 久久久久成人精品 |