設(shè)計(jì)模式概述_第1頁
設(shè)計(jì)模式概述_第2頁
設(shè)計(jì)模式概述_第3頁
設(shè)計(jì)模式概述_第4頁
設(shè)計(jì)模式概述_第5頁
已閱讀5頁,還剩75頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

DesignPatterns設(shè)計(jì)模式概述2021/5/91引言歡迎進(jìn)入模式世界!2021/5/92設(shè)計(jì)模式的誕生與發(fā)展模式的誕生與定義模式(Pattern)起源于建筑業(yè)而非軟件業(yè)模式之父——美國加利佛尼亞大學(xué)環(huán)境結(jié)構(gòu)中心研究所所長ChristopherAlexander博士《APatternLanguage:Towns,Buildings,Construction》——253個(gè)建筑和城市規(guī)劃模式模式Context(模式可適用的前提條件)Theme或Problem(在特定條件下要解決的目標(biāo)問題)Solution(對目標(biāo)問題求解過程中各種物理關(guān)系的記述)2021/5/93設(shè)計(jì)模式的誕生與發(fā)展ChristopherAlexander2021/5/94設(shè)計(jì)模式的誕生與發(fā)展模式的誕生與定義Alexander給出了關(guān)于模式的經(jīng)典定義:每個(gè)模式都描述了一個(gè)在我們的環(huán)境中不斷出現(xiàn)的問題,然后描述了該問題的解決方案的核心,通過這種方式,人們可以無數(shù)次地重用那些已有的解決方案,無須再重復(fù)相同的工作

模式是在特定環(huán)境下人們解決某類重復(fù)出現(xiàn)問題的一套成功或有效的解決方案。Apatternisasuccessfulorefficientsolutiontoarecurringproblemwithinacontext.2021/5/95設(shè)計(jì)模式的誕生與發(fā)展軟件模式概述20世紀(jì)80年代末,軟件工程界開始關(guān)注ChristopherAlexander等在這一住宅、公共建筑與城市規(guī)劃領(lǐng)域的重大突破“四人組(GangofFour,GoF,分別是ErichGamma,RichardHelm,RalphJohnson和JohnVlissides)”于1994年歸納發(fā)表了23種在軟件開發(fā)中使用頻率較高的設(shè)計(jì)模式,旨在用模式來統(tǒng)一溝通面向?qū)ο蠓椒ㄔ诜治?、設(shè)計(jì)和實(shí)現(xiàn)間的鴻溝2021/5/96設(shè)計(jì)模式的誕生與發(fā)展GangofFour(GoF)2021/5/97設(shè)計(jì)模式的誕生與發(fā)展ErichGamma蘇黎世大學(xué)計(jì)算機(jī)科學(xué)博士,是Eclipse、JUnit等項(xiàng)目的負(fù)責(zé)人JohnVlissides斯坦福大學(xué)計(jì)算機(jī)科學(xué)博士,原IBM研究員,于2005年11月24日因腦瘤去世,享年44歲RalphJohnson

墨爾本大學(xué)計(jì)算機(jī)科學(xué)博士,原IBM研究員,現(xiàn)供職于波士頓顧問集團(tuán)RichardHelm康奈爾大學(xué)計(jì)算機(jī)科學(xué)博士,伊利諾伊大學(xué)教授GangofFour2021/5/98設(shè)計(jì)模式的誕生與發(fā)展軟件模式概述軟件模式:在一定條件下的軟件開發(fā)問題及其解法問題描述前提條件(環(huán)境或約束條件)解法效果2021/5/99設(shè)計(jì)模式的誕生與發(fā)展軟件模式概述2021/5/910設(shè)計(jì)模式的誕生與發(fā)展設(shè)計(jì)模式的發(fā)展從1995年至今,設(shè)計(jì)模式在軟件開發(fā)中得以廣泛應(yīng)用,在Sun的JavaSE/JavaEE平臺和Microsoft的.NET平臺設(shè)計(jì)中應(yīng)用了大量的設(shè)計(jì)模式輕量級框架:Struts、Spring、Hibernate、JUnit、NHibernate、NUnit……語言:C++、Java、C#、Objective-C、

VB.net、Smalltalk、PHP、

Delphi、JavaScript、Ruby……得到越來越多的企業(yè)和高校的關(guān)注與重視越來越多的書籍和網(wǎng)站2021/5/911設(shè)計(jì)模式的定義與分類設(shè)計(jì)模式的定義設(shè)計(jì)模式(DesignPattern)一套被反復(fù)使用的、多數(shù)人知曉的、經(jīng)過分類編目的、代碼設(shè)計(jì)經(jīng)驗(yàn)的總結(jié)是一種用于對軟件系統(tǒng)中不斷重現(xiàn)的設(shè)計(jì)問題的解決方案進(jìn)行文檔化的技術(shù)是一種共享專家設(shè)計(jì)經(jīng)驗(yàn)的技術(shù)目的:為了可重用代碼、讓代碼更容易被他人理解、提高代碼可靠性2021/5/912設(shè)計(jì)模式的定義與分類設(shè)計(jì)模式的定義設(shè)計(jì)模式是在特定環(huán)境下為解決某一通用軟件設(shè)計(jì)問題提供的一套定制的解決方案,該方案描述了對象和類之間的相互作用。Designpatternsaredescriptionsofcommunicatingobjectsandclassesthatarecustomizedtosolveageneraldesign

probleminaparticularcontext.2021/5/913設(shè)計(jì)模式的定義與分類設(shè)計(jì)模式的分類根據(jù)目的(模式是用來做什么的)可分為創(chuàng)建型(Creational),結(jié)構(gòu)型(Structural)和行為型(Behavioral)三類:創(chuàng)建型模式主要用于創(chuàng)建對象結(jié)構(gòu)型模式主要用于處理類或?qū)ο蟮慕M合行為型模式主要用于描述類或?qū)ο笕绾谓换ズ驮鯓臃峙渎氊?zé)2021/5/914GoF設(shè)計(jì)模式簡介范圍\目的創(chuàng)建型模式結(jié)構(gòu)型模式行為型模式類模式工廠方法模式(類)適配器模式解釋器模式模板方法模式對象模式抽象工廠模式建造者模式原型模式單例模式(對象)適配器模式橋接模式組合模式裝飾模式外觀模式享元模式代理模式職責(zé)鏈模式命令模式迭代器模式中介者模式備忘錄模式觀察者模式狀態(tài)模式策略模式訪問者模式2021/5/915設(shè)計(jì)模式的優(yōu)點(diǎn)融合了眾多專家的經(jīng)驗(yàn),并以一種標(biāo)準(zhǔn)的形式供廣大開發(fā)人員所用提供了一套通用的設(shè)計(jì)詞匯和一種通用的語言,以方便開發(fā)人員之間進(jìn)行溝通和交流,使得設(shè)計(jì)方案更加通俗易懂讓人們可以更加簡單方便地復(fù)用成功的設(shè)計(jì)和體系結(jié)構(gòu)使得設(shè)計(jì)方案更加靈活,且易于修改將提高軟件系統(tǒng)的開發(fā)效率和軟件質(zhì)量,且在一定程度上節(jié)約設(shè)計(jì)成本有助于初學(xué)者更深入地理解面向?qū)ο笏枷?,方便閱讀和學(xué)習(xí)現(xiàn)有類庫與其他系統(tǒng)中的源代碼,還可以提高軟件的設(shè)計(jì)水平和代碼質(zhì)量2021/5/916單例模式工廠模式代理模式命令模式策略模式2021/5/917單例模式概述Windows任務(wù)管理器在正常情況下只能打開唯一一個(gè)任務(wù)管理器!2021/5/918單例模式概述如何保證一個(gè)類只有一個(gè)實(shí)例并且這個(gè)實(shí)例易于被訪問?(1)全局變量:可以確保對象隨時(shí)都可以被訪問,但不能防止創(chuàng)建多個(gè)對象(2)讓類自身負(fù)責(zé)創(chuàng)建和保存它的唯一實(shí)例,并保證不能創(chuàng)建其他實(shí)例,它還提供一個(gè)訪問該實(shí)例的方法單例模式2021/5/919單例模式概述單例模式的定義單例模式:確保一個(gè)類只有一個(gè)實(shí)例,并提供一個(gè)全局訪問點(diǎn)來訪問這個(gè)唯一實(shí)例。SingletonPattern:Ensureaclasshasonlyoneinstance,andprovideaglobalpointofaccesstoit.Onlyone!2021/5/920單例模式概述單例模式的定義要點(diǎn):某個(gè)類只能有一個(gè)實(shí)例必須自行創(chuàng)建這個(gè)實(shí)例必須自行向整個(gè)系統(tǒng)提供這個(gè)實(shí)例2021/5/921單例模式的結(jié)構(gòu)與實(shí)現(xiàn)單例模式的結(jié)構(gòu)2021/5/922單例模式的結(jié)構(gòu)與實(shí)現(xiàn)單例模式的結(jié)構(gòu)單例模式只包含一個(gè)單例角色:Singleton(單例)2021/5/923單例模式的結(jié)構(gòu)與實(shí)現(xiàn)單例模式的實(shí)現(xiàn)私有構(gòu)造函數(shù)靜態(tài)私有成員變量(自身類型)靜態(tài)公有的工廠方法classSingleton{privatestaticSingletoninstance=null;//靜態(tài)私有成員變量//私有構(gòu)造函數(shù)privateSingleton(){ }

//靜態(tài)公有工廠方法,返回唯一實(shí)例publicstaticSingletonGetInstance(){if(instance==null)instance=newSingleton(); returninstance;}}2021/5/924簡單工廠模式概述簡單工廠模式示意圖客戶端工廠產(chǎn)品參數(shù)2021/5/925簡單工廠模式概述簡單工廠模式基本實(shí)現(xiàn)流程具體產(chǎn)品類:將需要?jiǎng)?chuàng)建的各種不同產(chǎn)品對象的相關(guān)代碼封裝到具體產(chǎn)品類中抽象產(chǎn)品類:將具體產(chǎn)品類公共的代碼進(jìn)行抽象和提取后封裝在一個(gè)抽象產(chǎn)品類中工廠類:提供一個(gè)工廠類用于創(chuàng)建各種產(chǎn)品,在工廠類中提供一個(gè)創(chuàng)建產(chǎn)品的工廠方法,該方法可以根據(jù)所傳入?yún)?shù)的不同創(chuàng)建不同的具體產(chǎn)品對象客戶端:只需調(diào)用工廠類的工廠方法并傳入相應(yīng)的參數(shù)即可得到一個(gè)產(chǎn)品對象2021/5/926簡單工廠模式概述簡單工廠模式的定義簡單工廠模式(SimpleFactoryPattern):定義一個(gè)工廠類,它可以根據(jù)參數(shù)的不同返回不同類的實(shí)例,被創(chuàng)建的實(shí)例通常都具有共同的父類。2021/5/927簡單工廠模式概述簡單工廠模式的定義在簡單工廠模式中用于創(chuàng)建實(shí)例的方法通常是靜態(tài)(static)方法,因此又被稱為靜態(tài)工廠方法(StaticFactoryMethod)模式要點(diǎn):如果需要什么,只需要傳入一個(gè)正確的參數(shù),就可以獲取所需要的對象,而無須知道其創(chuàng)建細(xì)節(jié)2021/5/928簡單工廠模式的結(jié)構(gòu)與實(shí)現(xiàn)簡單工廠模式的結(jié)構(gòu)2021/5/929簡單工廠模式的結(jié)構(gòu)與實(shí)現(xiàn)簡單工廠模式的結(jié)構(gòu)簡單工廠模式包含以下3個(gè)角色:Factory(工廠角色)Product(抽象產(chǎn)品角色)ConcreteProduct(具體產(chǎn)品角色)2021/5/930簡單工廠模式的結(jié)構(gòu)與實(shí)現(xiàn)簡單工廠模式的實(shí)現(xiàn)典型的抽象產(chǎn)品類代碼:abstractclassProduct{//所有產(chǎn)品類的公共業(yè)務(wù)方法publicvoidMethodSame(){//公共方法的實(shí)現(xiàn)}//聲明抽象業(yè)務(wù)方法publicabstractvoidMethodDiff();}2021/5/931簡單工廠模式的結(jié)構(gòu)與實(shí)現(xiàn)簡單工廠模式的實(shí)現(xiàn)典型的具體產(chǎn)品類代碼:classConcreteProductA:Product{//實(shí)現(xiàn)業(yè)務(wù)方法publicoverridevoidMethodDiff(){//業(yè)務(wù)方法的實(shí)現(xiàn)}}2021/5/932簡單工廠模式的結(jié)構(gòu)與實(shí)現(xiàn)簡單工廠模式的實(shí)現(xiàn)典型的工廠類代碼:classFactory{//靜態(tài)工廠方法publicstaticProductGetProduct(stringarg){Productproduct=null;if(arg.Equals("A")){product=newConcreteProductA();//初始化設(shè)置product}elseif(arg.Equals("B")){product=newConcreteProductB();//初始化設(shè)置product}returnproduct;}}2021/5/933簡單工廠模式的結(jié)構(gòu)與實(shí)現(xiàn)簡單工廠模式的實(shí)現(xiàn)典型的客戶端代碼:classProgram{staticvoidMain(string[]args){Productproduct;product=Factory.GetProduct("A");//通過工廠類創(chuàng)建產(chǎn)品對象product.MethodSame();product.MethodDiff();}}2021/5/934工廠方法模式概述使用簡單工廠模式設(shè)計(jì)的按鈕工廠2021/5/935工廠方法模式概述使用工廠方法模式改進(jìn)后的按鈕工廠2021/5/936工廠方法模式概述分析工廠方法模式:不再提供一個(gè)按鈕工廠類來統(tǒng)一負(fù)責(zé)所有產(chǎn)品的創(chuàng)建,而是將具體按鈕的創(chuàng)建過程交給專門的工廠子類去完成如果出現(xiàn)新的按鈕類型,只需要為這種新類型的按鈕定義一個(gè)具體的工廠類就可以創(chuàng)建該新按鈕的實(shí)例開閉原則2021/5/937工廠方法模式概述工廠方法模式的定義工廠方法模式:定義一個(gè)用于創(chuàng)建對象的接口,但是讓子類決定將哪一個(gè)類實(shí)例化。工廠方法模式讓一個(gè)類的實(shí)例化延遲到其子類。FactoryMethodPattern:Defineaninterfaceforcreatinganobject,butletsubclassesdecidewhichclasstoinstantiate.FactoryMethodletsaclassdeferinstantiationtosubclasses.2021/5/938工廠方法模式的結(jié)構(gòu)與實(shí)現(xiàn)工廠方法模式的結(jié)構(gòu)2021/5/939工廠方法模式的結(jié)構(gòu)與實(shí)現(xiàn)工廠方法模式的結(jié)構(gòu)工廠方法模式包含以下4個(gè)角色:Product(抽象產(chǎn)品)ConcreteProduct(具體產(chǎn)品)Factory(抽象工廠)ConcreteFactory(具體工廠)2021/5/940工廠方法模式的結(jié)構(gòu)與實(shí)現(xiàn)工廠方法模式的實(shí)現(xiàn)典型的抽象工廠類代碼:interfaceFactory{ProductFactoryMethod();}2021/5/941工廠方法模式的結(jié)構(gòu)與實(shí)現(xiàn)工廠方法模式的實(shí)現(xiàn)典型的具體工廠類代碼:classConcreteFactory:Factory{publicProductFactoryMethod(){returnnewConcreteProduct();}}2021/5/942工廠方法模式的結(jié)構(gòu)與實(shí)現(xiàn)工廠方法模式的實(shí)現(xiàn)典型的客戶端代碼片段:……Factoryfactory;factory=newConcreteFactory();//可通過配置文件實(shí)現(xiàn)Productproduct;product=factory.FactoryMethod();……2021/5/943抽象工廠工廠方法模式每個(gè)具體工廠只有一個(gè)或者一組重載的工廠方法,只能生產(chǎn)一種產(chǎn)品,可能會(huì)導(dǎo)致系統(tǒng)中存在大量的工廠類,勢必會(huì)增加系統(tǒng)的開銷抽象工廠模式一個(gè)工廠可以生產(chǎn)一系列產(chǎn)品(一族產(chǎn)品),極大減少了工廠類的數(shù)量2021/5/944產(chǎn)品等級結(jié)構(gòu)與產(chǎn)品族概念產(chǎn)品等級結(jié)構(gòu):產(chǎn)品等級結(jié)構(gòu)即產(chǎn)品的繼承結(jié)構(gòu)產(chǎn)品族:產(chǎn)品族是指由同一個(gè)工廠生產(chǎn)的,位于不同產(chǎn)品等級結(jié)構(gòu)中的一組產(chǎn)品五個(gè)產(chǎn)品族,分屬于三個(gè)不同的產(chǎn)品等級結(jié)構(gòu)2021/5/945抽象工廠模式概述抽象工廠模式的定義抽象工廠模式:提供一個(gè)創(chuàng)建一系列相關(guān)或相互依賴對象的接口,而無須指定它們具體的類。AbstractFactoryPattern:Provideaninterfaceforcreatingfamiliesofrelatedordependentobjectswithoutspecifyingtheirconcreteclasses.2021/5/946抽象工廠模式的結(jié)構(gòu)與實(shí)現(xiàn)抽象工廠模式的結(jié)構(gòu)2021/5/947抽象工廠模式的結(jié)構(gòu)與實(shí)現(xiàn)抽象工廠模式的結(jié)構(gòu)抽象工廠模式包含以下4個(gè)角色:AbstractFactory(抽象工廠)ConcreteFactory(具體工廠)AbstractProduct(抽象產(chǎn)品)ConcreteProduct(具體產(chǎn)品)2021/5/948抽象工廠模式的結(jié)構(gòu)與實(shí)現(xiàn)抽象工廠模式的實(shí)現(xiàn)典型的抽象工廠類代碼:abstractclassAbstractFactory{publicabstractAbstractProductACreateProductA();//工廠方法一publicabstractAbstractProductBCreateProductB();//工廠方法二……}2021/5/949抽象工廠模式的結(jié)構(gòu)與實(shí)現(xiàn)抽象工廠模式的實(shí)現(xiàn)典型的具體工廠類代碼:classConcreteFactory1:AbstractFactory{

//工廠方法一publicoverrideAbstractProductACreateProductA(){returnnewConcreteProductA1();}//工廠方法二publicoverrideAbstractProductBCreateProductB(){returnnewConcreteProductB1();}……}2021/5/950代理模式概述商品代購示意圖2021/5/951代理模式概述分析代購商品:顧客代購網(wǎng)站商品軟件開發(fā):客戶端代理對象真實(shí)對象客戶端代理對象真實(shí)對象2021/5/952代理模式概述類型遠(yuǎn)程代理保護(hù)代理虛擬代理緩沖代理智能引用代理……代理模式2021/5/953代理模式概述代理模式的定義代理模式:給某一個(gè)對象提供一個(gè)代理或占位符,并由代理對象來控制對原對象的訪問。ProxyPattern:Provideasurrogateorplaceholderforanotherobjecttocontrolaccesstoit.2021/5/954代理模式概述代理模式的定義引入一個(gè)新的代理對象代理對象在客戶端對象和目標(biāo)對象之間起到中介的作用去掉客戶不能看到的內(nèi)容和服務(wù)或者增添客戶需要的額外的新服務(wù)2021/5/955代理模式的結(jié)構(gòu)與實(shí)現(xiàn)代理模式的結(jié)構(gòu)2021/5/956代理模式的結(jié)構(gòu)與實(shí)現(xiàn)代理模式的結(jié)構(gòu)代理模式包含以下3個(gè)角色:Subject(抽象主題角色)Proxy(代理主題角色)RealSubject(真實(shí)主題角色)2021/5/957代理模式的結(jié)構(gòu)與實(shí)現(xiàn)代理模式的實(shí)現(xiàn)抽象主題類典型代碼:abstractclassSubject{publicabstractvoidRequest();}2021/5/958代理模式的結(jié)構(gòu)與實(shí)現(xiàn)代理模式的實(shí)現(xiàn)真實(shí)主題類典型代碼:classRealSubject:Subject{publicoverridevoidRequest(){//業(yè)務(wù)方法具體實(shí)現(xiàn)代碼}}2021/5/959代理模式的結(jié)構(gòu)與實(shí)現(xiàn)代理模式的實(shí)現(xiàn)代理類典型代碼:classProxy:Subject{privateRealSubjectrealSubject=newRealSubject();//維持一個(gè)對真實(shí)主題對象的引用publicvoidPreRequest(){…...}publicoverridevoidRequest(){PreRequest();realSubject.Request();//調(diào)用真實(shí)主題對象的方法

PostRequest();}publicvoidPostRequest(){……}}2021/5/960命令模式概述開關(guān)與電燈、排氣扇示意圖2021/5/961命令模式概述分析現(xiàn)實(shí)生活相同的開關(guān)可以通過不同的電線來控制不同的電器開關(guān)請求發(fā)送者電燈請求的最終接收者和處理者開關(guān)和電燈之間并不存在直接耦合關(guān)系,它們通過電線連接在一起,使用不同的電線可以連接不同的請求接收者2021/5/962命令模式概述分析軟件開發(fā)按鈕請求發(fā)送者事件處理類請求的最終接收者和處理者發(fā)送者與接收者之間引入了新的命令對象(類似電線),將發(fā)送者的請求封裝在命令對象中,再通過命令對象來調(diào)用接收者的方法相同的按鈕可以對應(yīng)不同的事件處理類2021/5/963命令模式概述動(dòng)機(jī)將請求發(fā)送者和接收者完全解耦發(fā)送者與接收者之間沒有直接引用關(guān)系發(fā)送請求的對象只需要知道如何發(fā)送請求,而不必知道如何完成請求命令模式2021/5/964命令模式概述命令模式的定義命令模式:將一個(gè)請求封裝為一個(gè)對象,從而讓你可以用不同的請求對客戶進(jìn)行參數(shù)化,對請求排隊(duì)或者記錄請求日志,以及支持可撤銷的操作。CommandPattern:Encapsulatearequestasanobject,therebylettingyouparameterizeclientswithdifferentrequests,queueorlogrequests,andsupport

undoableoperations.2021/5/965命令模式的結(jié)構(gòu)與實(shí)現(xiàn)命令模式的結(jié)構(gòu)2021/5/966命令模式的結(jié)構(gòu)與實(shí)現(xiàn)命令模式的結(jié)構(gòu)命令模式包含以下4個(gè)角色:Command(抽象命令類)ConcreteCommand(具體命令類)Invoker(調(diào)用者)Receiver(接收者)2021/5/967命令模式的結(jié)構(gòu)與實(shí)現(xiàn)命令模式的實(shí)現(xiàn)命令模式的本質(zhì)是對請求進(jìn)行封裝一個(gè)請求對應(yīng)于一個(gè)命令,將發(fā)出命令的責(zé)任和執(zhí)行命令的責(zé)任分開命令模式允許請求的一方和接收的一方獨(dú)立開來,使得請求的一方不必知道接收請求的一方的接口,更不必知道請求如何被接收、操作是否被執(zhí)行、何時(shí)被執(zhí)行,以及是怎么被執(zhí)行的2021/5/968命令模式的結(jié)構(gòu)與實(shí)現(xiàn)命令模式的實(shí)現(xiàn)典型的抽象命令類代碼:abstractclassCommand{publicabstractvoidExecute();}2021/5/969命令模式的結(jié)構(gòu)與實(shí)現(xiàn)命令模式的實(shí)現(xiàn)典型的調(diào)用者(請求發(fā)送者)類代碼:classInvoker{privateCommandcommand;

//構(gòu)造注入publicInvoker(Commandcommand){mand=command;}

publicCommandCommand{get{returncommand;}//設(shè)值注入set{command=value;}} //業(yè)務(wù)方法,用于調(diào)用命令類的方法publicvoidCall(){command.Execute();}}2021/5/970命令模式的結(jié)構(gòu)與實(shí)現(xiàn)命令模式的實(shí)現(xiàn)典型的具體命令類代碼:classConcreteCommand:Command{ privateReceiverreceiver;//維持一個(gè)對請求接收者對象的引用 publicoverridevoidExecute() { receiver.Action();//調(diào)用請求接收者的業(yè)務(wù)處理方法Action() }}2021/5/971命令模式的結(jié)構(gòu)與實(shí)現(xiàn)命令模式的實(shí)現(xiàn)典型的請求接收者類代碼:classReceiver{ publicvoidAction() {

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論