freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

[工學(xué)]嵌入式系統(tǒng)與軟件——第七章-wenkub

2023-01-13 12:12:06 本頁面
 

【正文】 標(biāo)識(shí)符的定義 ① 個(gè)人風(fēng)格不等于規(guī)范 如兩個(gè)程序員Wang和 Zhang,變量名為 wNum和 zNum ② 標(biāo)準(zhǔn)標(biāo)識(shí)符的封裝都必須易理解 如Integer: wI或 LongInteger ③ 宏定義名易讀和理解 如 TaskQueue 和 BufferCount ④ 不能因?yàn)楸C芏タ勺x性 76 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 優(yōu)秀程序員的要求 ① 后繼者可以輕松閱讀自己的代碼 ② 后繼者可以輕松復(fù)用自己的代碼 ③ 后繼者可以輕松修改自己的代碼 ④ 后繼者可以輕松區(qū)分代碼的作者 77 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 問題示例 L R e s u l t C a l l B a c k W i n d o w P r o c { H W N D h w n d , / / h a n d l e t o w i n d o w U I N T u M s g , / / m e s s a g e i d e n t i f i e r W P A R A M w P a r a m , / / f i r s t m e s s a g e p a r a m e t e r L P A R A M l P a r a m / / s e c o n d m e s s a g e p a r a m e t e r}16位平臺(tái)上的 Word類型,對(duì) 32位平臺(tái),意義不明 78 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 小結(jié) ① 風(fēng)格不能妨礙溝通 ② 混合風(fēng)格等于沒有風(fēng)格 ③ 沒有個(gè)性特色的代碼未必就是好代碼 79 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 3. 非正常語句 有些程序段可能是用非常規(guī)語句編寫的 / * J a v a 程 序 段 * /p u b l i c s t a t i c v o i d m a i n ( s t r i n g _ $ _ [ ] ) { s y s t e m . o u t . p r i n t l n ( _ . _ _ . _ _ _ . _ ( 1 , 2 ) ) 。 r e a d ( c h ) 。 ) m a t r i x = ( i n t * * ) n e w i n t [ 1 0 0 ] [ 1 0 0 ] 。 。 r e t u r n r e t 。 } c h a r * G e t N a m e ( ) { r e t u r n m y _ n a m e 。 i n t i , j 。 f a c t o r = 1 。 i n t i , j 。 f o r i = 1 t o M A X N U M d o { t e m p _ x = t e m p _ x * x * x f a c t o r = f a c t o r * ( 2 * i ) * ( 2 * i – 1 ) 。}去掉內(nèi)層循環(huán)和條件判斷 95 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 小結(jié) ① 改進(jìn)算法可以顯著提高速度 重點(diǎn)在反復(fù)調(diào)用的代碼上 ② 使用更快的存儲(chǔ)介質(zhì) ③ 硬盤和內(nèi)存數(shù)據(jù)交換會(huì)極大影響速度 特別是出現(xiàn)異常時(shí) ④ 編譯優(yōu)化不保證提高速度 96 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 四、多線程 在程序中使用多線程是一種好的思路,但必須考慮相關(guān)代價(jià)。    P u b l i c S u b M y S o r t ( B y R e f p ( ) a s I n t e g e r , B y R e f q ( ) a s I n t e g e r ) F o r i = 1 t o 1 0 0 i f p ( i ) = 0 T h e n E x i t s u b N e x t i F o r i = 1 t o 1 0 0 q ( i ) = i N e x t i E n d S u bA、 B、 C各自負(fù)責(zé)哪類工作?編碼正確? 106 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 各自的職責(zé) ① A在項(xiàng)目中負(fù)責(zé)需求分析工作,提出 《 需求說明書 》 ② B在項(xiàng)目中負(fù)責(zé)規(guī)格說明工作,給出 《 規(guī)格說明書 》 ③ C在項(xiàng)目中負(fù)責(zé)編碼工作,或許還包括設(shè)計(jì)工作 107 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 各自的工作階段 ① A的工作屬于需求階段 ② B的工作屬于規(guī)格說明階段 ③ C的工作屬于設(shè)計(jì)實(shí)現(xiàn)階段 108 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 各自的失誤 ① A的 描述不完整 :沒有指出客戶需求是一個(gè)可執(zhí)行程序、一個(gè) DLL或一個(gè)靜態(tài)函數(shù);沒有說明輸入輸出方式 ② B給出了錯(cuò)誤的規(guī)格說明書 :技術(shù)上不嚴(yán)謹(jǐn),導(dǎo)致開發(fā)過程遠(yuǎn)離目標(biāo) ③ C過于迷信和盲從 :完全未考慮程序代碼的意義和用途 109 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 小結(jié) 完善、嚴(yán)謹(jǐn)?shù)囊?guī)格說明是開發(fā)出合格軟件的必要條件。 Do state := initial Repeat display(s) read(s, →a) ok := correct(s, a) If not ok Then message(s,a) End Until ok End process(s, a) c := next_choice(a) End 127 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 相關(guān)操作 ? display(s) 輸出到與狀態(tài) s有關(guān)的面板 ? read(s, →a) 將狀態(tài) s的顯示面板上的用戶輸入讀到 a中 ? correct(s, a) 返回 true的充要條件是 a為正確輸入 ? 必須正確處理第一級(jí)的特性 – display、 read、 correct、 message、 … 128 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 方案評(píng)述 ? 一個(gè)較好的方案,不完全滿意 – 比?第一個(gè)方法?好 – 無法滿足可擴(kuò)展性和可復(fù)用性 ? 狀態(tài) – 表面上與應(yīng)用無關(guān) – 實(shí)際上模塊間、與應(yīng)用間緊耦合 ? 主要問題 系統(tǒng)的數(shù)據(jù)變遷結(jié)構(gòu) – 狀態(tài) s到處都用 – 真正的程序結(jié)構(gòu)必然涉及?數(shù)據(jù)? 129 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 程序結(jié)構(gòu) 執(zhí) 行 會(huì) 話初 始 化 狀 態(tài) 變 遷 執(zhí) 行 狀 態(tài) 終 止顯 示讀驗(yàn) 證 信 息 處 理第 一 級(jí)第 二 級(jí)第 三 級(jí)數(shù) 據(jù) 流s t a。 C1 : goto BHelp C2 : goto B預(yù)訂 … End 116 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 存在的問題 ? Goto語句的使用 ? 分支語句結(jié)構(gòu)確切反映了狀態(tài)轉(zhuǎn)換圖 的結(jié)構(gòu) – 軟件設(shè)計(jì)脆弱 任何簡單的改變 (增加狀態(tài)、改變狀態(tài)變遷等)必須 改變系統(tǒng)的整個(gè)結(jié)構(gòu) ? 無法復(fù)用 117 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 4) 結(jié)構(gòu)化解決方案 ? 由低級(jí)的、基于 goto的結(jié) 構(gòu)進(jìn)化成由頂向下的、層 次組織的結(jié)構(gòu) —— 結(jié)構(gòu) 化方法 ? OO方法一定是結(jié)構(gòu)化方 法 118 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 任務(wù)狀態(tài)圖 幫 助初 始化幫 助認(rèn) 可預(yù) 訂查 詢航 班查 詢座 位幫 助幫 助 幫 助1111112311幫 助113211322323119 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 狀態(tài)變遷功能 ? 狀態(tài)變遷僅僅是系統(tǒng)的性質(zhì),不應(yīng)控 制所有事情 – 將狀態(tài)變遷從算法中剝離出來 – 狀態(tài)變遷依賴于具體應(yīng)用 ? 狀態(tài)變遷圖的定義 二元組 – 狀態(tài) – 用戶選擇 ? 軟件級(jí)實(shí)現(xiàn) 兩種方法 – 由一個(gè)子程序(函數(shù))實(shí)現(xiàn) – 數(shù)組一類的數(shù)據(jù)結(jié)構(gòu) 120 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 狀態(tài)變遷表 選擇→↓狀態(tài)1 (初始化) 1 0 5 22 (航班) 0 1 33 (座位) 0 2 44 (訂票) 0 3 55 (認(rèn)證) 0 4 16 (幫助) r e t u r n 7 (終止) 0 0 1 32注意: ⑴ 狀態(tài) return返回調(diào)用狀態(tài) ⑵ 狀態(tài) 1為終止?fàn)顟B(tài) 121 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 程序結(jié)構(gòu) 執(zhí) 行 會(huì) 話初 始 化 狀 態(tài) 變 遷 執(zhí) 行 狀 態(tài) 終 止顯 示讀驗(yàn) 證 信 息 處 理航 航 航航 航 航航 航 航航 航 航 航航 航 航 航122 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 程序結(jié)構(gòu)描述 ? 選擇系統(tǒng)的 Top(主程序) – ―執(zhí)行會(huì)話?模塊 – 描述怎樣執(zhí)行一個(gè)完整的交互會(huì)話 ? 直接下級(jí) 與狀態(tài)有關(guān)的操作 – 定義初始、終止?fàn)顟B(tài) – 狀態(tài)變遷結(jié)構(gòu) – 描述每個(gè)狀態(tài)上可執(zhí)行操作的?執(zhí)行狀態(tài)? ? 最低級(jí) 構(gòu)成?執(zhí)行狀態(tài)?的操作 – 顯示屏幕等 ? 完整的軟件結(jié)構(gòu)?鏡像?了應(yīng)用結(jié)構(gòu) – 涉及狀態(tài)、基本操作等 123 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 “Execute_Session” ? 盡可能與實(shí)際應(yīng)用無關(guān) ? 執(zhí)行一個(gè)完全的交互系統(tǒng)會(huì)話 local state, choice : INTEGER do state := initial repeat execute_state( state, →next ) —— 修改下一個(gè)狀態(tài)的值 state := transition(state, next) until is_final(state) end end 124 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 “Execute_Session”描述 ? 一個(gè)典型的狀態(tài)變遷圖算法 – 每個(gè)階段,都處于一個(gè)狀態(tài) – 狀態(tài)由? initial‖開始,以? is_final‖結(jié)束 – 對(duì)非結(jié)束狀態(tài),執(zhí)行? execute_state‖ ? ―execute_state‖技術(shù)不適合于 OOD – 改變本身變量的值 state ? 不顯示與任何特殊應(yīng)有關(guān)的信息 – 必須在第二級(jí)填寫應(yīng)用相關(guān)的信息 – 變遷函數(shù)、初始化狀態(tài)、終止檢查 125 計(jì)算機(jī)學(xué)院 /軟件學(xué)院 “Execute_State”描述 ? 精練? execute_state‖
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1