




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
狀態(tài)(State)模式狀態(tài)(State)模式狀態(tài)模式主要解決的是當(dāng)控制一個(gè)對(duì)象狀態(tài)轉(zhuǎn)換的條件表達(dá)式過于復(fù)雜時(shí)的情況。把狀態(tài)的判斷邏輯轉(zhuǎn)移到表示不同狀態(tài)的一系列類當(dāng)中,可以把復(fù)雜的邏輯簡化。狀態(tài)模式主要解決的是當(dāng)控制一個(gè)對(duì)象狀態(tài)轉(zhuǎn)換的條件表達(dá)式過于復(fù)工作狀態(tài)publicclassWork{//鐘點(diǎn)
privateinthour;publicintHour{get{returnhour;}set{hour=value;}}//任務(wù)完成
privateboolfinish=false;publicboolTaskFinished{get{returnfinish;}set{finish=value;}}工作狀態(tài)publicclassWorkpublicvoidWriteProgram(){if(hour<12){Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)上午工作,精神百倍",hour);}elseif(hour<13){Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)餓了,午飯;犯困,午休。",hour);}elseif(hour<17){Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)下午狀態(tài)還不錯(cuò),繼續(xù)努力",hour);}
publicvoidWriteProgrelse{if(finish){Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)下班回家了",hour);}else{if(hour<21){Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)加班哦,疲累之極",hour);}else{Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)不行了,睡著了。",hour);}}}}elseclassProgram{staticvoidMain(string[]args){//緊急項(xiàng)目
WorkemergencyProjects=newWork();emergencyProjects.Hour=9;emergencyProjects.WriteProgram();emergencyProjects.Hour=10;emergencyProjects.WriteProgram();emergencyProjects.Hour=12;emergencyProjects.WriteProgram();emergencyProjects.Hour=13;emergencyProjects.WriteProgram();emergencyProjects.Hour=14;emergencyProjects.WriteProgram();emergencyProjects.Hour=17;classProgram//emergencyProjects.TaskFinished=true;emergencyProjects.TaskFinished=false;emergencyProjects.WriteProgram();emergencyProjects.Hour=19;emergencyProjects.WriteProgram();emergencyProjects.Hour=22;emergencyProjects.WriteProgram();Console.Read();}}//emergencyProjects.方法過長是壞味道面向?qū)ο笤O(shè)計(jì)其實(shí)就是希望做到代碼的責(zé)任分解上例違背了“單一職責(zé)原則”、“開放-封閉原則”方法過長是壞味道狀態(tài)模式允許一個(gè)對(duì)象在其內(nèi)部狀態(tài)改變時(shí)改變它的行為,這個(gè)對(duì)象看起來似乎修改了它的類。狀態(tài)模式主要解決的是當(dāng)控制一個(gè)對(duì)象狀態(tài)轉(zhuǎn)換的條件表達(dá)式過于復(fù)雜時(shí)的情況。把狀態(tài)的判斷邏輯轉(zhuǎn)移到表示不同狀態(tài)的一系列類當(dāng)中,可以把復(fù)雜的邏輯簡化。狀態(tài)模式允許一個(gè)對(duì)象在其內(nèi)部狀態(tài)改變時(shí)改變它的行為,這個(gè)對(duì)象每個(gè)人、事物在不同的狀態(tài)下會(huì)有不同表現(xiàn)(動(dòng)作),而一個(gè)狀態(tài)又會(huì)在不同的表現(xiàn)下轉(zhuǎn)移到下一個(gè)不同的狀態(tài)(State)。一個(gè)生活中的例子:地鐵入口處,如果你放入正確的地鐵票,門就會(huì)打開讓你通過。在出口處也是驗(yàn)票,如果正確你就可以O(shè)K,否則就不讓你通過。每個(gè)人、事物在不同的狀態(tài)下會(huì)有不同表現(xiàn)(動(dòng)作),而一個(gè)狀態(tài)又有限狀態(tài)自動(dòng)機(jī)(FSM)也是一個(gè)典型的狀態(tài)不同,對(duì)輸入有不同的響應(yīng)(狀態(tài)轉(zhuǎn)移)。通常我們在實(shí)現(xiàn)這類系統(tǒng)會(huì)使用到很多的Switch--Case語句或者If—Else語句,Case某種狀態(tài),發(fā)生某種動(dòng)作,Case另外一種狀態(tài),則發(fā)生另外一種動(dòng)作。但是這種實(shí)現(xiàn)方式至少有以下兩個(gè)問題:有限狀態(tài)自動(dòng)機(jī)(FSM)也是一個(gè)典型的狀態(tài)不同,對(duì)輸入有不同當(dāng)狀態(tài)數(shù)目不是很多的時(shí)候,Switch--Case可能可以搞定。但是當(dāng)狀態(tài)數(shù)目很多的時(shí)候(實(shí)際系統(tǒng)中也正是如此),維護(hù)一大組的Switch--Case語句將是一件異常困難并且容易出錯(cuò)的事情。狀態(tài)邏輯和動(dòng)作實(shí)現(xiàn)沒有分離。在很多的系統(tǒng)實(shí)現(xiàn)中,動(dòng)作的實(shí)現(xiàn)代碼直接寫在狀態(tài)的邏輯當(dāng)中。這帶來的后果就是系統(tǒng)的擴(kuò)展性和維護(hù)得不到保證。當(dāng)狀態(tài)數(shù)目不是很多的時(shí)候,Switch--Case可能可以搞State模式就是被用來解決上面列出的兩個(gè)問題的,在State模式中我們將狀態(tài)邏輯和動(dòng)作實(shí)現(xiàn)進(jìn)行分離。當(dāng)一個(gè)操作中要維護(hù)大量的分支語句,并且這些分支依賴于對(duì)象的狀態(tài)。State模式將每一個(gè)分支都封裝到獨(dú)立的類中。State模式典型的結(jié)構(gòu)圖為:State模式就是被用來解決上面列出的兩個(gè)問題的,在Stat16設(shè)計(jì)模式教學(xué)課件示例性代碼定義一個(gè)接口或抽象類,以封裝與Context的一個(gè)特定狀態(tài)相關(guān)的行為abstractclassState{publicabstractvoidHandle(Contextcontext);}示例性代碼定義一個(gè)接口或抽象類,以封裝與Context的一具體狀態(tài)每一個(gè)子類實(shí)現(xiàn)一個(gè)與Context的一個(gè)狀態(tài)相關(guān)的行為classConcreteStateA:State{publicoverridevoidHandle(Contextcontext){context.State=newConcreteStateB();}}classConcreteStateB:State{publicoverridevoidHandle(Contextcontext){context.State=newConcreteStateA();}}具體狀態(tài)每一個(gè)子類實(shí)現(xiàn)一個(gè)與Context的一個(gè)狀態(tài)相關(guān)的行Context類
classContext{privateStatestate;publicContext(Statestate){this.state=state;}publicStateState{get{returnstate;}set{state=value;Console.WriteLine("當(dāng)前狀態(tài):"+state.GetType().Name);}}publicvoidRequest(){state.Handle(this);}}Context類classContext客戶端
classProgram{staticvoidMain(string[]args){Contextc=newContext(newConcreteStateA());c.Request();c.Request();c.Request();c.Request();Console.Read();}}客戶端classProgram工作狀態(tài)-狀態(tài)模式版工作狀態(tài)-狀態(tài)模式版工作(Context)
publicclassWork{privateStatecurrent;publicWork(){current=newForenoonState();}privatedoublehour;publicdoubleHour{get{returnhour;}set{hour=value;}}工作(Context)publicclassWorkprivateboolfinish=false;publicboolTaskFinished{get{returnfinish;}set{finish=value;}}publicvoidSetState(States){current=s;}publicvoidWriteProgram(){current.WriteProgram(this);}}privateboolfinish=抽象狀態(tài)publicabstractclassState{publicabstractvoidWriteProgram(Workw);}抽象狀態(tài)publicabstractclassStat具體狀態(tài)
publicclassForenoonState:State{publicoverridevoidWriteProgram(Workw){if(w.Hour<12){Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)上午工作,精神百倍",w.Hour);}else{w.SetState(newNoonState());w.WriteProgram();}}}具體狀態(tài)publicclassForenoonStat
publicclassNoonState:State{publicoverridevoidWriteProgram(Workw){if(w.Hour<13){Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)餓了,午飯;犯困,午休。",w.Hour);}else{w.SetState(newAfternoonState());w.WriteProgram();}}}publicclassNoonState:Stat
publicclassAfternoonState:State{publicoverridevoidWriteProgram(Workw){if(w.Hour<17){Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)下午狀態(tài)還不錯(cuò),繼續(xù)努力",w.Hour);}else{w.SetState(newEveningState());w.WriteProgram();}}}publicclassAfternoonState:
publicclassEveningState:State{publicoverridevoidWriteProgram(Workw){if(w.TaskFinished){w.SetState(newRestState());w.WriteProgram();}else{if(w.Hour<21){Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)加班哦,疲累之極",w.Hour);}else{w.SetState(newSleepingState());w.WriteProgram();}}}}publicclassEveningState:S
publicclassSleepingState:State{publicoverridevoidWriteProgram(Workw){Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)不行了,睡著了。",w.Hour);}}
publicclassRestState:State{publicoverridevoidWriteProgram(Workw){Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)下班回家了",w.Hour);}}publicclassSleepingState:classProgram{staticvoidMain(string[]args){WorkemergencyProjects=newWork();emergencyProjects.Hour=9;emergencyProjects.WriteProgram();emergencyProjects.Hour=10;emergencyProjects.WriteProgram();emergencyProjects.Hour=12;emergencyProjects.WriteProgram();emergencyProjects.Hour=13;emergencyProjects.WriteProgram();emergencyProjects.Hour=14;emergencyProjects.WriteProgram();emergencyProjects.Hour=17;
classProgram/*如果要員工必須在20點(diǎn)之前離開公司,只需添加下面的“強(qiáng)制下班狀態(tài)”,并改動(dòng)EveningState類的判斷就可以了
emergencyProjects.WorkFinished=true;*/emergencyProjects.TaskFinished=false;emergencyProjects.WriteProgram();emergencyProjects.Hour=19;emergencyProjects.WriteProgram();emergencyProjects.Hour=22;emergencyProjects.WriteProgram();Console.Read();}}/*如果要員工必須在20點(diǎn)之前離開公司,只需添加下面的“強(qiáng)制狀態(tài)模式優(yōu)點(diǎn)將與特定狀態(tài)相關(guān)的行為局部化,并且將不同狀態(tài)的行為分割開來消除龐大的條件分支語句,把各種狀態(tài)轉(zhuǎn)移邏輯分布到State的子類之間,減少了相互間的依賴。顯式化進(jìn)行狀態(tài)轉(zhuǎn)換:為不同的狀態(tài)引入獨(dú)立的對(duì)象,使得狀態(tài)的轉(zhuǎn)換變得更加明確。而且狀態(tài)對(duì)象可以保證上下文不會(huì)發(fā)生內(nèi)部狀態(tài)不一致的狀況,因?yàn)樯舷挛闹兄挥幸粋€(gè)變量來記錄狀態(tài)對(duì)象,只要為這一個(gè)變量賦值就可以了。狀態(tài)模式優(yōu)點(diǎn)將與特定狀態(tài)相關(guān)的行為局部化,并且將不同狀態(tài)的行狀態(tài)模式缺點(diǎn)State模式問題主要是邏輯分散化,狀態(tài)邏輯分布到了很多的State的子類中,很難看到整個(gè)的狀態(tài)邏輯圖,這也帶來了代碼的維護(hù)問題。狀態(tài)模式缺點(diǎn)State模式問題主要是邏輯分散化,狀態(tài)邏輯分布本質(zhì)根據(jù)狀態(tài)來分離和選擇行為狀態(tài)模式是狀態(tài)驅(qū)動(dòng),由上下文負(fù)責(zé)本質(zhì)根據(jù)狀態(tài)來分離和選擇行為State模式和Strategy模式簡單比較State模式和Strategy模式有很大程度上的相似:它們都有一個(gè)Context類,都是通過委托(組合)給一個(gè)具有多個(gè)派生類的多態(tài)基類實(shí)現(xiàn)Context的算法邏輯兩者最大的差別就是State模式中派生類持有指向Context對(duì)象的引用,并通過這個(gè)引用調(diào)用Context中的方法,但在Strategy模式中就沒有這種情況。State模式和Strategy模式簡單比較State模式和實(shí)例一在線投票同一個(gè)用戶只能投一票如果一個(gè)用戶反復(fù)投票,而且投票次數(shù)超過5次,判定為惡意投票,要取消該用戶的投票資格,并取消他所投的票若超過8次,將進(jìn)入黑名單,禁止再登錄和使用系統(tǒng)。實(shí)例一在線投票實(shí)例二工作流中的請(qǐng)假流程某人提出請(qǐng)假申請(qǐng),先由項(xiàng)目經(jīng)理審批,如果項(xiàng)目經(jīng)理不同意,審批就直接結(jié)束如項(xiàng)目經(jīng)理同意,再看是否超過3天,如果三天以內(nèi),審批直接結(jié)束否則,交給部門經(jīng)理,部門經(jīng)理審核后,無論是否同意,審批直接結(jié)束實(shí)例二工作流中的請(qǐng)假流程狀態(tài)(State)模式狀態(tài)(State)模式狀態(tài)模式主要解決的是當(dāng)控制一個(gè)對(duì)象狀態(tài)轉(zhuǎn)換的條件表達(dá)式過于復(fù)雜時(shí)的情況。把狀態(tài)的判斷邏輯轉(zhuǎn)移到表示不同狀態(tài)的一系列類當(dāng)中,可以把復(fù)雜的邏輯簡化。狀態(tài)模式主要解決的是當(dāng)控制一個(gè)對(duì)象狀態(tài)轉(zhuǎn)換的條件表達(dá)式過于復(fù)工作狀態(tài)publicclassWork{//鐘點(diǎn)
privateinthour;publicintHour{get{returnhour;}set{hour=value;}}//任務(wù)完成
privateboolfinish=false;publicboolTaskFinished{get{returnfinish;}set{finish=value;}}工作狀態(tài)publicclassWorkpublicvoidWriteProgram(){if(hour<12){Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)上午工作,精神百倍",hour);}elseif(hour<13){Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)餓了,午飯;犯困,午休。",hour);}elseif(hour<17){Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)下午狀態(tài)還不錯(cuò),繼續(xù)努力",hour);}
publicvoidWriteProgrelse{if(finish){Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)下班回家了",hour);}else{if(hour<21){Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)加班哦,疲累之極",hour);}else{Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)不行了,睡著了。",hour);}}}}elseclassProgram{staticvoidMain(string[]args){//緊急項(xiàng)目
WorkemergencyProjects=newWork();emergencyProjects.Hour=9;emergencyProjects.WriteProgram();emergencyProjects.Hour=10;emergencyProjects.WriteProgram();emergencyProjects.Hour=12;emergencyProjects.WriteProgram();emergencyProjects.Hour=13;emergencyProjects.WriteProgram();emergencyProjects.Hour=14;emergencyProjects.WriteProgram();emergencyProjects.Hour=17;classProgram//emergencyProjects.TaskFinished=true;emergencyProjects.TaskFinished=false;emergencyProjects.WriteProgram();emergencyProjects.Hour=19;emergencyProjects.WriteProgram();emergencyProjects.Hour=22;emergencyProjects.WriteProgram();Console.Read();}}//emergencyProjects.方法過長是壞味道面向?qū)ο笤O(shè)計(jì)其實(shí)就是希望做到代碼的責(zé)任分解上例違背了“單一職責(zé)原則”、“開放-封閉原則”方法過長是壞味道狀態(tài)模式允許一個(gè)對(duì)象在其內(nèi)部狀態(tài)改變時(shí)改變它的行為,這個(gè)對(duì)象看起來似乎修改了它的類。狀態(tài)模式主要解決的是當(dāng)控制一個(gè)對(duì)象狀態(tài)轉(zhuǎn)換的條件表達(dá)式過于復(fù)雜時(shí)的情況。把狀態(tài)的判斷邏輯轉(zhuǎn)移到表示不同狀態(tài)的一系列類當(dāng)中,可以把復(fù)雜的邏輯簡化。狀態(tài)模式允許一個(gè)對(duì)象在其內(nèi)部狀態(tài)改變時(shí)改變它的行為,這個(gè)對(duì)象每個(gè)人、事物在不同的狀態(tài)下會(huì)有不同表現(xiàn)(動(dòng)作),而一個(gè)狀態(tài)又會(huì)在不同的表現(xiàn)下轉(zhuǎn)移到下一個(gè)不同的狀態(tài)(State)。一個(gè)生活中的例子:地鐵入口處,如果你放入正確的地鐵票,門就會(huì)打開讓你通過。在出口處也是驗(yàn)票,如果正確你就可以O(shè)K,否則就不讓你通過。每個(gè)人、事物在不同的狀態(tài)下會(huì)有不同表現(xiàn)(動(dòng)作),而一個(gè)狀態(tài)又有限狀態(tài)自動(dòng)機(jī)(FSM)也是一個(gè)典型的狀態(tài)不同,對(duì)輸入有不同的響應(yīng)(狀態(tài)轉(zhuǎn)移)。通常我們在實(shí)現(xiàn)這類系統(tǒng)會(huì)使用到很多的Switch--Case語句或者If—Else語句,Case某種狀態(tài),發(fā)生某種動(dòng)作,Case另外一種狀態(tài),則發(fā)生另外一種動(dòng)作。但是這種實(shí)現(xiàn)方式至少有以下兩個(gè)問題:有限狀態(tài)自動(dòng)機(jī)(FSM)也是一個(gè)典型的狀態(tài)不同,對(duì)輸入有不同當(dāng)狀態(tài)數(shù)目不是很多的時(shí)候,Switch--Case可能可以搞定。但是當(dāng)狀態(tài)數(shù)目很多的時(shí)候(實(shí)際系統(tǒng)中也正是如此),維護(hù)一大組的Switch--Case語句將是一件異常困難并且容易出錯(cuò)的事情。狀態(tài)邏輯和動(dòng)作實(shí)現(xiàn)沒有分離。在很多的系統(tǒng)實(shí)現(xiàn)中,動(dòng)作的實(shí)現(xiàn)代碼直接寫在狀態(tài)的邏輯當(dāng)中。這帶來的后果就是系統(tǒng)的擴(kuò)展性和維護(hù)得不到保證。當(dāng)狀態(tài)數(shù)目不是很多的時(shí)候,Switch--Case可能可以搞State模式就是被用來解決上面列出的兩個(gè)問題的,在State模式中我們將狀態(tài)邏輯和動(dòng)作實(shí)現(xiàn)進(jìn)行分離。當(dāng)一個(gè)操作中要維護(hù)大量的分支語句,并且這些分支依賴于對(duì)象的狀態(tài)。State模式將每一個(gè)分支都封裝到獨(dú)立的類中。State模式典型的結(jié)構(gòu)圖為:State模式就是被用來解決上面列出的兩個(gè)問題的,在Stat16設(shè)計(jì)模式教學(xué)課件示例性代碼定義一個(gè)接口或抽象類,以封裝與Context的一個(gè)特定狀態(tài)相關(guān)的行為abstractclassState{publicabstractvoidHandle(Contextcontext);}示例性代碼定義一個(gè)接口或抽象類,以封裝與Context的一具體狀態(tài)每一個(gè)子類實(shí)現(xiàn)一個(gè)與Context的一個(gè)狀態(tài)相關(guān)的行為classConcreteStateA:State{publicoverridevoidHandle(Contextcontext){context.State=newConcreteStateB();}}classConcreteStateB:State{publicoverridevoidHandle(Contextcontext){context.State=newConcreteStateA();}}具體狀態(tài)每一個(gè)子類實(shí)現(xiàn)一個(gè)與Context的一個(gè)狀態(tài)相關(guān)的行Context類
classContext{privateStatestate;publicContext(Statestate){this.state=state;}publicStateState{get{returnstate;}set{state=value;Console.WriteLine("當(dāng)前狀態(tài):"+state.GetType().Name);}}publicvoidRequest(){state.Handle(this);}}Context類classContext客戶端
classProgram{staticvoidMain(string[]args){Contextc=newContext(newConcreteStateA());c.Request();c.Request();c.Request();c.Request();Console.Read();}}客戶端classProgram工作狀態(tài)-狀態(tài)模式版工作狀態(tài)-狀態(tài)模式版工作(Context)
publicclassWork{privateStatecurrent;publicWork(){current=newForenoonState();}privatedoublehour;publicdoubleHour{get{returnhour;}set{hour=value;}}工作(Context)publicclassWorkprivateboolfinish=false;publicboolTaskFinished{get{returnfinish;}set{finish=value;}}publicvoidSetState(States){current=s;}publicvoidWriteProgram(){current.WriteProgram(this);}}privateboolfinish=抽象狀態(tài)publicabstractclassState{publicabstractvoidWriteProgram(Workw);}抽象狀態(tài)publicabstractclassStat具體狀態(tài)
publicclassForenoonState:State{publicoverridevoidWriteProgram(Workw){if(w.Hour<12){Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)上午工作,精神百倍",w.Hour);}else{w.SetState(newNoonState());w.WriteProgram();}}}具體狀態(tài)publicclassForenoonStat
publicclassNoonState:State{publicoverridevoidWriteProgram(Workw){if(w.Hour<13){Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)餓了,午飯;犯困,午休。",w.Hour);}else{w.SetState(newAfternoonState());w.WriteProgram();}}}publicclassNoonState:Stat
publicclassAfternoonState:State{publicoverridevoidWriteProgram(Workw){if(w.Hour<17){Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)下午狀態(tài)還不錯(cuò),繼續(xù)努力",w.Hour);}else{w.SetState(newEveningState());w.WriteProgram();}}}publicclassAfternoonState:
publicclassEveningState:State{publicoverridevoidWriteProgram(Workw){if(w.TaskFinished){w.SetState(newRestState());w.WriteProgram();}else{if(w.Hour<21){Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)加班哦,疲累之極",w.Hour);}else{w.SetState(newSleepingState());w.WriteProgram();}}}}publicclassEveningState:S
publicclassSleepingState:State{publicoverridevoidWriteProgram(Workw){Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)不行了,睡著了。",w.Hour);}}
publicclassRestState:State{publicoverridevoidWriteProgram(Workw){Console.WriteLine("當(dāng)前時(shí)間:{0}點(diǎn)下班回家了",w.Hour);
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025高考生物備考教學(xué)設(shè)計(jì):生物技術(shù)的安全性和倫理問題
- 篷房搭建合同范本
- 13 胡蘿卜先生的長胡子 教學(xué)設(shè)計(jì)-2024-2025學(xué)年統(tǒng)編版語文三年級(jí)上冊
- Unit 1 Teenage Life Listening and Speaking 教學(xué)設(shè)計(jì) -2024-2025學(xué)年高中英語人教版2019 必修第一冊
- 10《吃飯有講究》第2課時(shí)(教學(xué)設(shè)計(jì))-2024-2025學(xué)年統(tǒng)編版道德與法治一年級(jí)上冊
- Module 7 Unit 2 I'll be home at seven o'clock. (教學(xué)設(shè)計(jì))-2023-2024學(xué)年外研版(三起)英語五年級(jí)下冊
- 11-1《過秦論》(教學(xué)設(shè)計(jì))高二語文同步高效課堂(統(tǒng)編版 選擇性必修中冊)
- 7的乘法口訣(教學(xué)設(shè)計(jì))-2024-2025學(xué)年二年級(jí)上冊數(shù)學(xué)人教版
- 軍訓(xùn)結(jié)束匯報(bào)表演上新生代表的演講稿
- 公司推廣策劃合同范本
- 電氣控制與PLC應(yīng)用技術(shù)(FX5U) 課件 模塊3 基本邏輯指令的應(yīng)用
- 電氣自動(dòng)化技術(shù)專業(yè)人才需求崗位分析及崗位職責(zé)能力分析報(bào)告
- 2024年江蘇食品藥品職業(yè)技術(shù)學(xué)院單招職業(yè)技能測試題庫附答案
- 《實(shí)變函數(shù)》電子教案
- HYT 215-2017 近岸海域海洋生物多樣性評(píng)價(jià)技術(shù)指南
- 學(xué)校安全教育培訓(xùn)省公開課金獎(jiǎng)全國賽課一等獎(jiǎng)微課獲獎(jiǎng)?wù)n件
- SHT 3005-2016 石油化工自動(dòng)化儀表選型設(shè)計(jì)規(guī)范
- 2024年蘇州衛(wèi)生職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性測試題庫及答案解析
- 陽光分級(jí)閱讀 Letters for Mr James 課件
- 占道作業(yè)交通安全設(shè)施設(shè)置技術(shù)要求
- 《肝豆?fàn)詈俗冃浴氛n件
評(píng)論
0/150
提交評(píng)論