版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、a,1,第2章 軟件設(shè)計(jì)基本概念,2.1 設(shè)計(jì)過(guò)程 2.2 設(shè)計(jì)原理 2.3 啟發(fā)規(guī)則,a,2,軟件設(shè)計(jì)宣言:Mitch Kapor “什么是設(shè)計(jì)?設(shè)計(jì)是你站在兩個(gè)世界技術(shù)世界和人類的目標(biāo)世界而你嘗試將這兩個(gè)世界結(jié)合在一起”。 羅馬建筑批評(píng)家Vitruvius提出的觀念: “設(shè)計(jì)良好的建筑應(yīng)該展示出堅(jiān)固、適用和令人賞心悅目”。,a,3,設(shè)計(jì)階段: 從工程管理的角度,可以將軟件設(shè)計(jì)分為概要設(shè)計(jì)階段和詳細(xì)設(shè)計(jì)階段。 從技術(shù)的角度,傳統(tǒng)的結(jié)構(gòu)化方法將軟件設(shè)計(jì)劃分為體系結(jié)構(gòu)設(shè)計(jì)、數(shù)據(jù)設(shè)計(jì)、接口設(shè)計(jì)和過(guò)程設(shè)計(jì)4部分。 面向?qū)ο蠓椒▌t將軟件設(shè)計(jì)劃分為體系結(jié)構(gòu)設(shè)計(jì)、類設(shè)計(jì)/數(shù)據(jù)設(shè)計(jì)、接口設(shè)計(jì)和構(gòu)件級(jí)設(shè)計(jì)4部
2、分。,a,4,a,5,結(jié)構(gòu)化設(shè)計(jì)和結(jié)構(gòu)化分析的關(guān)系:,a,6,總體設(shè)計(jì)過(guò)程:首先尋找實(shí)現(xiàn)目標(biāo)系統(tǒng)的各種不同的方案;然后分析員從這些供選擇的方案中選取若干個(gè)合理的方案,從中選出一個(gè)最佳方案向用戶和使用部門負(fù)責(zé)人推薦;分析員應(yīng)該進(jìn)一步為這個(gè)最佳方案設(shè)計(jì)軟件結(jié)構(gòu),進(jìn)行必要的數(shù)據(jù)庫(kù)設(shè)計(jì),確定測(cè)試要求并且制定測(cè)試計(jì)劃。 必要性:總體設(shè)計(jì)可以站在全局高度上,花較少成本,從較抽象的層次上分析對(duì)比多種可能的系統(tǒng)實(shí)現(xiàn)方案和軟件結(jié)構(gòu),從中選出最佳方案和最合理的軟件結(jié)構(gòu),從而用較低成本開(kāi)發(fā)出較高質(zhì)量的軟件系統(tǒng)。,a,7,5.1 設(shè)計(jì)過(guò)程,由兩個(gè)主要階段組成: 系統(tǒng)設(shè)計(jì)階段,確定系統(tǒng)的具體實(shí)現(xiàn)方案 設(shè)想供選擇的方案
3、選取合理的方案 推薦最佳方案 結(jié)構(gòu)設(shè)計(jì)階段,確定軟件結(jié)構(gòu) 功能分解 設(shè)計(jì)軟件結(jié)構(gòu) 設(shè)計(jì)數(shù)據(jù)庫(kù),制定測(cè)試計(jì)劃 書寫文檔 審查和復(fù)審,a,8,典型的總體設(shè)計(jì)過(guò)程包括下述9個(gè)步驟: 1. 設(shè)想供選擇的方案 根據(jù)需求分析階段得出的數(shù)據(jù)流圖考慮各種可能的實(shí)現(xiàn)方案,力求從中選出最佳方案。 2. 選取合理的方案 從前一步得到的一系列供選擇的方案中選取若干個(gè)合理的方案。對(duì)每個(gè)合理的方案分析員都應(yīng)該準(zhǔn)備下列4份資料: 系統(tǒng)流程圖; 組成系統(tǒng)的物理元素清單; 成本/效益分析; 實(shí)現(xiàn)這個(gè)系統(tǒng)的進(jìn)度計(jì)劃。,a,9,3. 推薦最佳方案 分析員應(yīng)該綜合分析對(duì)比各種合理方案的利弊,推薦一個(gè)最佳的方案,并且為推薦的方案制定詳
4、細(xì)的實(shí)現(xiàn)計(jì)劃。 4. 功能分解 首先進(jìn)行結(jié)構(gòu)設(shè)計(jì),然后進(jìn)行過(guò)程設(shè)計(jì)。 結(jié)構(gòu)設(shè)計(jì)確定程序由哪些模塊組成,以及這些模塊之間的關(guān)系;過(guò)程設(shè)計(jì)確定每個(gè)模塊的處理過(guò)程。 結(jié)構(gòu)設(shè)計(jì)是總體設(shè)計(jì)階段的任務(wù),過(guò)程設(shè)計(jì)是詳細(xì)設(shè)計(jì)階段的任務(wù)。,a,10,5. 設(shè)計(jì)軟件結(jié)構(gòu) 通常程序中的一個(gè)模塊完成一個(gè)適當(dāng)?shù)淖庸δ堋?yīng)該把模塊組織成良好的層次系統(tǒng)。軟件結(jié)構(gòu)可以用層次圖或結(jié)構(gòu)圖來(lái)描繪。 如果數(shù)據(jù)流圖已經(jīng)細(xì)化到適當(dāng)?shù)膶哟?,則可以直接從數(shù)據(jù)流圖映射出軟件結(jié)構(gòu),這就是面向數(shù)據(jù)流的設(shè)計(jì)方法。 6. 設(shè)計(jì)數(shù)據(jù)庫(kù) 對(duì)于需要使用數(shù)據(jù)庫(kù)的那些應(yīng)用系統(tǒng),軟件工程師應(yīng)該在需求分析階段所確定的系統(tǒng)數(shù)據(jù)需求的基礎(chǔ)上,進(jìn)一步設(shè)計(jì)數(shù)據(jù)庫(kù)。,a,1
5、1,7. 制定測(cè)試計(jì)劃 在軟件開(kāi)發(fā)的早期階段考慮測(cè)試問(wèn)題,能促使軟件設(shè)計(jì)人員在設(shè)計(jì)時(shí)注意提高軟件的可測(cè)試性。 8. 書寫文檔 應(yīng)該用正式的文檔記錄總體設(shè)計(jì)的結(jié)果,在這個(gè)階段應(yīng)該完成的文檔通常有下述幾種: (1) 系統(tǒng)說(shuō)明; (2) 用戶手冊(cè);(3) 測(cè)試計(jì)劃; (4) 詳細(xì)的實(shí)現(xiàn)計(jì)劃;(5) 數(shù)據(jù)庫(kù)設(shè)計(jì)結(jié)果。 9. 審查和復(fù)審 最后應(yīng)該對(duì)總體設(shè)計(jì)的結(jié)果進(jìn)行嚴(yán)格的技術(shù)審查和管理復(fù)審。,a,12,5.2 設(shè)計(jì)原理 5.2.1 模塊化,模塊:是由邊界元素限定的相鄰程序元素的序列,而且有一個(gè)總體標(biāo)識(shí)符代表它。 模塊化:就是把程序劃分成獨(dú)立命名且可獨(dú)立訪問(wèn)的模塊,每個(gè)模塊完成一個(gè)子功能,把這些模塊集成起
6、來(lái)構(gòu)成一個(gè)整體,可以完成指定的功能滿足用戶的需求。,a,13,為什么要模塊化? 模塊化是為了使一個(gè)復(fù)雜的大型程序能被人的智力所管理,軟件應(yīng)該具備的惟一屬性。 如果一個(gè)大型程序僅由一個(gè)模塊組成,它將很難被人所理解。,a,14,模塊化的根據(jù): 如果C(P1)C(P2),顯然E(P1)E(P2) 根據(jù)人類解決一般問(wèn)題的經(jīng)驗(yàn), C(P1+P2)C(P1)+C(P2) 綜上所述,得到下面的不等式 E(P1+P2)E(P1)+E(P2),a,15,每個(gè)程序都相應(yīng)地有一個(gè)最適當(dāng)?shù)哪K數(shù)目M,使得系統(tǒng)的開(kāi)發(fā)成本最小。,模塊化和軟件成本,a,16,模塊化的作用: 采用模塊化原理可以使軟件結(jié)構(gòu)清晰,不僅容易設(shè)計(jì)也
7、容易閱讀和理解。 模塊化使軟件容易測(cè)試和調(diào)試,因而有助于提高軟件的可靠性。 模塊化能夠提高軟件的可修改性。 模塊化也有助于軟件開(kāi)發(fā)工程的組織管理。,a,17,5.2.2 抽象,抽象:現(xiàn)實(shí)世界中一定事物、狀態(tài)或過(guò)程之間總存在著某些相似的方面(共性)。把這些相似的方面集中和概括起來(lái),暫時(shí)忽略它們之間的差異,這就是抽象。 抽象就是抽出事物本質(zhì)特性而暫時(shí)不考慮細(xì)節(jié)。 “抽象是人類處理復(fù)雜問(wèn)題的基本方法之一?!?Grady Boach,a,18,一般抽象過(guò)程: 處理復(fù)雜系統(tǒng)的惟一有效的方法是用層次的方式構(gòu)造和分析它。 一個(gè)復(fù)雜的動(dòng)態(tài)系統(tǒng)首先可以用一些高級(jí)的抽象概念構(gòu)造和理解,這些高級(jí)概念又可以用一些較低
8、級(jí)的概念構(gòu)造和理解,如此進(jìn)行下去,直至最低層次的具體元素。 例:過(guò)程抽象、數(shù)據(jù)抽象,開(kāi)(行為抽象)+ 門(數(shù)據(jù)抽象),a,19,形體,衣著,性格,抽象,抽象例子,外表,a,20,軟件工程抽象過(guò)程: 軟件工程過(guò)程的每一步都是對(duì)軟件解法的抽象層次的一次精化。 在可行性研究階段,軟件作為系統(tǒng)的一個(gè)完整部件; 在需求分析期間,軟件解法是使用在問(wèn)題環(huán)境內(nèi)熟悉的方式描述的; 當(dāng)由總體設(shè)計(jì)向詳細(xì)設(shè)計(jì)過(guò)渡時(shí),抽象的程度也就隨之減少了; 最后,當(dāng)源程序?qū)懗鰜?lái)以后,也就達(dá)到了抽象的最低層。,a,21,5.2.3 逐步求精,逐步求精:為了能集中精力解決主要問(wèn)題而盡量推遲對(duì)問(wèn)題細(xì)節(jié)的考慮。逐步求精是人類解決復(fù)雜問(wèn)題時(shí)
9、采用的基本方法,也是許多軟件工程技術(shù)的基礎(chǔ)。 Miller法則:一個(gè)人在任何時(shí)候都只能把注意力集中在(72)個(gè)知識(shí)塊上。,a,22,逐步求精,外表,形體,衣著,性格,頭發(fā),臉形,領(lǐng)帶,抽象,逐步求精的例子,a,23,例:用篩選法求100以內(nèi)的素?cái)?shù)。所謂的篩選法,就是從2到100中去掉2,3,5,7的倍數(shù),剩下的就是100以內(nèi)的素?cái)?shù)。 首先按程序功能寫出一個(gè)框架 main() 建立2到100的數(shù)組A ,其中Aii;.1 建立2到10的素?cái)?shù)表B ,存放2到10以內(nèi)的素?cái)?shù);.2 若Aii是B 中任一數(shù)的倍數(shù),則剔除Ai;.3 輸出A 中所有沒(méi)有被剔除的數(shù);.4 ,a,24,上述框架中每一個(gè)加工語(yǔ)句都
10、可進(jìn)一步細(xì)化 main() /*建立2到100的數(shù)組A ,其中Aii*/ .1 for (i = 2;i = 100;i+)Ai = i; /* 建立2到10的素?cái)?shù)表B ,存放2到10以內(nèi)的素?cái)?shù)*/ .2 B1 =2; B2 = 3; B3 = 5; B4 = 7; /*若Aii是B 中任一數(shù)的倍數(shù),則剔除Ai*/ .3 for (j = 1; j = 4; j+) 檢查A所有數(shù)能否被Bj整除并將其從A剔除;.3.1 /*輸出A 中所有沒(méi)有被剔除的數(shù)*/ .4 for (i = 2; i 25) module_3(); else module_4(); ,a,42,評(píng)價(jià): 與結(jié)構(gòu)化編程矛盾,生
11、成的代碼完全不可讀。 如果在一個(gè)模塊中對(duì)一個(gè)全局變量的聲明進(jìn)行修改,必須修改能夠訪問(wèn)該全局變量的每一個(gè)模塊。 公共環(huán)境耦合的模塊難于重用,必須提供一個(gè)全局變量的清單。 即使模塊本身不改變,它和產(chǎn)品中其他模塊之間公共環(huán)境耦合的實(shí)例數(shù)也會(huì)變化非常大。 潛在危險(xiǎn)很大。模塊暴露出必需要更多的數(shù)據(jù),難以控制數(shù)據(jù)存取,而且會(huì)導(dǎo)致計(jì)算機(jī)犯罪。 有些情況下公共環(huán)境耦合更好。,a,43,函數(shù)可重入的概念,可重入函數(shù)也可以這樣理解,重入即表示重復(fù)進(jìn)入,首先它意味著這個(gè)函數(shù)可以被中斷,其次意味著它除了使用自己棧上的變量以外不依賴于任何環(huán)境(包括static),這樣的函數(shù)就是purecode(純代碼)可重入,可以允許
12、有該函數(shù)的多個(gè)副本在運(yùn)行,由于它們使用的是分離的棧,所以不會(huì)互相干擾。如果確實(shí)需要訪問(wèn)全局變量(包括static),一定要注意實(shí)施互斥手段??芍厝牒瘮?shù)在并行運(yùn)行環(huán)境中非常重要,但是一般要為訪問(wèn)全局變量付出一些性能代價(jià),a,44,(6) 內(nèi)容耦合(content coupling) 最高程度的耦合是內(nèi)容耦合。如果出現(xiàn)下列情況之一,兩個(gè)模塊間就發(fā)生了內(nèi)容耦合: 一個(gè)模塊訪問(wèn)另一個(gè)模塊的內(nèi)部數(shù)據(jù); 一個(gè)模塊不通過(guò)正常入口轉(zhuǎn)到另一個(gè)模塊的內(nèi)部; 兩個(gè)模塊有一部分程序代碼重疊; 一個(gè)模塊有多個(gè)入口。,a,45,耦合是影響軟件復(fù)雜程度的一個(gè)重要因素。 應(yīng)該采取下述設(shè)計(jì)原則: 盡量使用數(shù)據(jù)耦合, 少用控制耦
13、合和特征耦合, 限制公共環(huán)境耦合的范圍, 完全不用內(nèi)容耦合。,a,46,2. 內(nèi)聚 內(nèi)聚:標(biāo)志一個(gè)模塊內(nèi)各個(gè)元素彼此結(jié)合的緊密程度,它是信息隱藏和局部化概念的自然擴(kuò)展。簡(jiǎn)單地說(shuō),理想內(nèi)聚的模塊只做一件事情。 要求:設(shè)計(jì)時(shí)應(yīng)該力求做到高內(nèi)聚,通常中等程度的內(nèi)聚也是可以采用的,而且效果和高內(nèi)聚相差不多;但是,低內(nèi)聚不要使用。 內(nèi)聚和耦合是密切相關(guān)的,模塊內(nèi)的高內(nèi)聚往往意味著模塊間的松耦合。實(shí)踐表明內(nèi)聚更重要,應(yīng)該把更多注意力集中到提高模塊的內(nèi)聚程度上。,a,47,內(nèi)聚程度的度量: (1) 偶然內(nèi)聚(coincidental cohesion) 如果一個(gè)模塊完成一組任務(wù),這些任務(wù)彼此間即使有關(guān)系,關(guān)
14、系也是很松散的,就叫做偶然內(nèi)聚。,a,48,評(píng)價(jià): 模塊內(nèi)各元素之間沒(méi)有實(shí)質(zhì)性聯(lián)系,很可能在一種應(yīng)用場(chǎng)合需要修改這個(gè)模塊,在另一種應(yīng)用場(chǎng)合又不允許這種修改,從而陷入困境; 可理解性差,可維護(hù)性產(chǎn)生退化; 模塊是不可重用的。 解決方案: 將模塊分成更小的模塊,每個(gè)小模塊執(zhí)行一個(gè)操作。,a,49,(2) 邏輯內(nèi)聚(logical cohesion) 如果一個(gè)模塊完成的任務(wù)在邏輯上屬于相同或相似的一類,則稱為邏輯內(nèi)聚。,a,50,評(píng)價(jià): 接口難以理解,造成整體上不易理解; 完成多個(gè)操作的代碼互相糾纏在一起,即使局部功能的修改有時(shí)也會(huì)影響全局,導(dǎo)致嚴(yán)重的維護(hù)問(wèn)題; 難以重用。 解決方案: 模塊分解。,
15、a,51,a,52,(3) 時(shí)間內(nèi)聚(temporal cohesion) 如果一個(gè)模塊包含的任務(wù)必須在同一段時(shí)間內(nèi)執(zhí)行,就叫時(shí)間內(nèi)聚。,a,53,評(píng)價(jià): 時(shí)間關(guān)系在一定程度上反映了程序某些實(shí)質(zhì),所以時(shí)間內(nèi)聚比邏輯內(nèi)聚好一些。 模塊內(nèi)操作之間的關(guān)系很弱,與其他模塊的操作卻有很強(qiáng)的關(guān)聯(lián)。 時(shí)間內(nèi)聚的模塊不太可能重用。,a,54,(4) 過(guò)程內(nèi)聚(procedural cohesion) 如果一個(gè)模塊內(nèi)的處理元素是相關(guān)的,而且必須以特定次序執(zhí)行,則稱為過(guò)程內(nèi)聚。 使用程序流程圖作為工具設(shè)計(jì)軟件時(shí),常常通過(guò)研究流程圖確定模塊的劃分,這樣得到的往往是過(guò)程內(nèi)聚的模塊。,a,55,a,56,評(píng)價(jià): 比時(shí)間
16、內(nèi)聚好,至少操作之間是過(guò)程關(guān)聯(lián)的。 仍是弱連接,不太可能重用模塊。 解決方案: 分割為單獨(dú)的模塊,每個(gè)模塊執(zhí)行一個(gè)操作。,a,57,(5) 通信內(nèi)聚(communicational cohesion) 如果模塊中所有元素都使用同一個(gè)輸入數(shù)據(jù)和(或)產(chǎn)生同一個(gè)輸出數(shù)據(jù),則稱為通信內(nèi)聚。即在同一個(gè)數(shù)據(jù)結(jié)構(gòu)上操作。 評(píng)價(jià): 模塊中各操作緊密相連,比過(guò)程內(nèi)聚更好。 不能重用。 解決方案: 分成多個(gè)模塊,每個(gè)模塊執(zhí)行一個(gè)操作。,a,58,a,59,(6) 順序內(nèi)聚(sequential cohesion) 如果一個(gè)模塊內(nèi)的處理元素和同一個(gè)功能密切相關(guān),而且這些處理必須順序執(zhí)行,則稱為順序內(nèi)聚。 評(píng)價(jià):
17、根據(jù)數(shù)據(jù)流圖劃分模塊時(shí),通常得到順序內(nèi)聚的模塊,這種模塊彼此間的連接往往比較簡(jiǎn)單。,a,60,(7) 功能內(nèi)聚(functional cohesion) 如果模塊內(nèi)所有處理元素屬于一個(gè)整體,完成一個(gè)單一的功能,則稱為功能內(nèi)聚。功能內(nèi)聚是最高程度的內(nèi)聚。 評(píng)價(jià): 模塊可重用,應(yīng)盡可能重用; 可隔離錯(cuò)誤,維護(hù)更容易; 擴(kuò)充產(chǎn)品功能時(shí)更容易。,a,61,七種內(nèi)聚的優(yōu)劣評(píng)分結(jié)果: 高內(nèi)聚:功能內(nèi)聚 10分 順序內(nèi)聚 9分 中內(nèi)聚:通信內(nèi)聚 7分 過(guò)程內(nèi)聚 5分 低內(nèi)聚:時(shí)間內(nèi)聚 3分 邏輯內(nèi)聚 1分 偶然內(nèi)聚 0分 設(shè)計(jì)時(shí)力爭(zhēng)做到高內(nèi)聚,并且能夠辨認(rèn)出低內(nèi)聚的模塊。,a,62,5.3 啟發(fā)規(guī)則,1.
18、改進(jìn)軟件結(jié)構(gòu)提高模塊獨(dú)立性 通過(guò)模塊分解或合并,降低耦合提高內(nèi)聚。 兩個(gè)方面: 模塊功能完善化。一個(gè)完整的模塊包含: 執(zhí)行規(guī)定的功能的部分 出錯(cuò)處理的部分 返回一個(gè)“結(jié)束標(biāo)志” 消除重復(fù)功能,改善軟件結(jié)構(gòu)。 完全相似 局部相似,a,63,a,64,2. 模塊規(guī)模應(yīng)該適中 經(jīng)驗(yàn)表明,一個(gè)模塊的規(guī)模不應(yīng)過(guò)大,最好能寫在一頁(yè)紙內(nèi)。通常規(guī)定50100行語(yǔ)句,最多不超過(guò)500行。數(shù)字只能作為參考,根本問(wèn)題是要保證模塊的獨(dú)立性。 過(guò)大的模塊往往是由于分解不充分,但是進(jìn)一步分解必須符合問(wèn)題結(jié)構(gòu),一般說(shuō)來(lái),分解后不應(yīng)該降低模塊獨(dú)立性。 過(guò)小的模塊開(kāi)銷大于有效操作,而且模塊數(shù)目過(guò)多將使系統(tǒng)接口復(fù)雜。,a,65,3. 深度、寬度、扇出和扇入都應(yīng)適當(dāng) 深度:軟件結(jié)構(gòu)中控制的層數(shù),它往往能粗略地標(biāo)志一個(gè)系統(tǒng)的大小和復(fù)雜程度。 寬度:軟件結(jié)構(gòu)內(nèi)同一個(gè)層次上
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 素描課程設(shè)計(jì)文案
- 液態(tài)氨冷卻課程設(shè)計(jì)
- 焊接專機(jī)課程設(shè)計(jì)
- 硫酸鉛在涂料工業(yè)中的應(yīng)用技術(shù)考核試卷
- 環(huán)保技術(shù)標(biāo)準(zhǔn)制定與實(shí)施效果評(píng)估考核試卷
- 石材行業(yè)市場(chǎng)營(yíng)銷案例分析考核試卷
- 牧場(chǎng)飼料加工機(jī)械制造考核試卷
- 橡膠制品市場(chǎng)營(yíng)銷與策略考核試卷
- 礦產(chǎn)勘查中的社區(qū)參與與溝通考核試卷
- 2024年度廣西壯族自治區(qū)國(guó)家保安員資格考試模擬考試試卷B卷含答案
- 有機(jī)合成化學(xué)3-基團(tuán)的保護(hù)與基團(tuán)的反應(yīng)性轉(zhuǎn)換
- 學(xué)校未成年人保護(hù)和預(yù)防犯罪工作實(shí)施方案
- 心內(nèi)科住院醫(yī)師規(guī)培出科考試9
- 危險(xiǎn)化學(xué)品生產(chǎn)企業(yè)安全生產(chǎn)管理制度編制導(dǎo)則
- DB23-T 3474-2023非煤智慧礦山信息系統(tǒng)技術(shù)規(guī)范
- 某金礦技改工程建設(shè)項(xiàng)目可行性研究報(bào)告
- 消化鏡之電子結(jié)腸鏡課件
- 2023-2024學(xué)年安徽省蕪湖市小學(xué)語(yǔ)文五年級(jí)期末自測(cè)考試題附參考答案和詳細(xì)解析
- 物流簽收回執(zhí)單
- 旋挖樁基泥漿護(hù)壁施工方案全套
- 資金管理審計(jì)
評(píng)論
0/150
提交評(píng)論