軟件開發(fā)方法與技術(shù)(動(dòng)態(tài)模型)_第1頁
軟件開發(fā)方法與技術(shù)(動(dòng)態(tài)模型)_第2頁
軟件開發(fā)方法與技術(shù)(動(dòng)態(tài)模型)_第3頁
軟件開發(fā)方法與技術(shù)(動(dòng)態(tài)模型)_第4頁
軟件開發(fā)方法與技術(shù)(動(dòng)態(tài)模型)_第5頁
已閱讀5頁,還剩63頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第4章動(dòng)態(tài)模型之

狀態(tài)圖、順序圖、協(xié)作圖和活動(dòng)圖§4.1狀態(tài)圖(StatechartDiagram)狀態(tài)圖:描述了一個(gè)特定對(duì)象在其生存期間的所有可能狀態(tài)以及引起狀態(tài)躍遷的事件。其中:1.“事件”是引起狀態(tài)躍遷(轉(zhuǎn)移)的內(nèi)部消息2.“狀態(tài)圖”主要用于描述一個(gè)對(duì)象在其生存期間的動(dòng)態(tài)行為,表現(xiàn)一個(gè)對(duì)象所經(jīng)歷的狀態(tài)序列,引起狀態(tài)轉(zhuǎn)移的事件(event),以及因狀態(tài)轉(zhuǎn)移而伴隨的動(dòng)作(action);3.所謂對(duì)象可以是類的實(shí)例、用例的實(shí)例或整個(gè)系統(tǒng)的實(shí)例.大多數(shù)面向?qū)ο蠹夹g(shù)用狀態(tài)圖描述單個(gè)對(duì)象(類的實(shí)例)在其生命周期中的動(dòng)態(tài)行為;4.狀態(tài)圖是對(duì)某個(gè)類對(duì)象的補(bǔ)充;5.狀態(tài)圖在檢查、調(diào)試和描述類的動(dòng)態(tài)行為時(shí)非常有用;6.狀態(tài)圖是UML中對(duì)系統(tǒng)的動(dòng)態(tài)行為建模的5個(gè)視圖之一一、狀態(tài)圖中的基本元素基本元素包括:狀態(tài)、關(guān)系(轉(zhuǎn)移)、判斷、事件和動(dòng)作。

1.狀態(tài)(State)狀態(tài):是指在對(duì)象的生命期中的某種狀況,在此期間對(duì)象將滿足某個(gè)條件、或執(zhí)行某個(gè)動(dòng)作、或等待某個(gè)事件。說明:每個(gè)對(duì)象都有狀態(tài),一個(gè)狀態(tài)表示該對(duì)象執(zhí)行了之前活動(dòng)后的結(jié)果。其中:狀態(tài)可以細(xì)分為不同的類型:

⑴初態(tài):⑵終態(tài):

說明:一個(gè)狀態(tài)圖只能有一個(gè)初態(tài)。但終態(tài)可以有一個(gè)或多個(gè),也可以沒有終態(tài)。

⑶一般狀態(tài):

活動(dòng)格式:

do/執(zhí)行的動(dòng)作

entry/執(zhí)行的動(dòng)作:入口動(dòng)作

exit/執(zhí)行的動(dòng)作:出口動(dòng)作例如:或狀態(tài)名狀態(tài)名活動(dòng)表說明:

當(dāng)進(jìn)入這個(gè)狀態(tài)時(shí)首先執(zhí)行“entry”動(dòng)作,所以一個(gè)狀態(tài)只能有一個(gè)“entry”動(dòng)作。習(xí)慣上把它放在其他動(dòng)作的最前面。

②當(dāng)退出這個(gè)狀態(tài)時(shí)再執(zhí)行“exit”這個(gè)動(dòng)作,所以一個(gè)狀態(tài)只能有一個(gè)“exit”動(dòng)作。習(xí)慣上把它放在其他動(dòng)作的最后面。③“do”動(dòng)作順次執(zhí)行,執(zhí)行完所有動(dòng)作(不包括“exit”這個(gè)動(dòng)作)后等待事件發(fā)生。⑷組合狀態(tài)(compositestate)組合狀態(tài):一個(gè)含有“子狀態(tài)(substate)”的狀態(tài)子狀態(tài):嵌套在另一個(gè)狀態(tài)中的狀態(tài)

WXYAB例如:⑸歷史狀態(tài)(historystate)歷史狀態(tài):是一個(gè)偽狀態(tài)(pseudostate),其目的是記住從組合狀態(tài)中退出時(shí)所處的子狀態(tài)。當(dāng)再次進(jìn)入組合狀態(tài)時(shí),可直接進(jìn)入這個(gè)子狀態(tài),而不是再次從組合狀態(tài)的初態(tài)開始。HH*其中:歷史狀態(tài)用符號(hào)或表示:是淺(shallow)歷史狀態(tài)的符號(hào),表示只記住最外層組合狀態(tài)的歷史H設(shè)置方法:在該狀態(tài)的Specification對(duì)畫框中的General頁面選擇

State/activityhistory。:是深(deep)歷史狀態(tài)的符號(hào),表示可記住任何深度的組合狀態(tài)的歷史。H*設(shè)置方法是在該狀態(tài)的Specification對(duì)畫框中的General頁面同時(shí)選擇:

State/activityhistory和Substate/activityhistory。說明:需要注意的是,如果一個(gè)組合狀態(tài)到達(dá)了其終態(tài),則會(huì)丟失歷史狀態(tài)中的信息,就好像還沒有進(jìn)入過這個(gè)組合狀態(tài)一樣2.關(guān)系

狀態(tài)與狀態(tài)之間的關(guān)系是標(biāo)有“事件”字符串的單向關(guān)聯(lián)關(guān)系。也可以沒有“事件”。3.并發(fā)和同步4.判定一個(gè)判定是一個(gè)狀態(tài)同兩個(gè)以上狀態(tài)之間的一種關(guān)系,工作流在此處分支轉(zhuǎn)移。判定符號(hào):例如:二、事件(event)“事件”是引起狀態(tài)躍遷(轉(zhuǎn)移)的內(nèi)部消息。(前面給出的)或者說是指已發(fā)生并可能引發(fā)某種活動(dòng)的一件事其中:事件產(chǎn)生的原因有調(diào)用、滿足條件的狀態(tài)的出現(xiàn)、到達(dá)時(shí)間點(diǎn)或經(jīng)歷某一時(shí)間段、發(fā)送信號(hào)等。事件的語法格式:

?事件名:包括“調(diào)用事件”、“變化事件”、“時(shí)間事件”名稱

?參數(shù)列表傳送的數(shù)據(jù)列表或是表達(dá)式

?監(jiān)護(hù)條件:當(dāng)該事件發(fā)生時(shí),是否躍遷到下一個(gè)狀態(tài)條件表達(dá)式

?動(dòng)作表達(dá)式:當(dāng)事件發(fā)生,監(jiān)護(hù)條件成立時(shí)所執(zhí)行的動(dòng)作。事件名(參數(shù)列表)[監(jiān)護(hù)條件]/動(dòng)作表達(dá)式

1.調(diào)用事件(Callevent):

?“調(diào)用(Call)”

是指在一個(gè)過程的執(zhí)行點(diǎn)激發(fā)一個(gè)操作,它將一個(gè)控制線程暫時(shí)從調(diào)用過程轉(zhuǎn)移到被調(diào)用過程。

?調(diào)用事件(Callevent)

指的是一個(gè)對(duì)象對(duì)調(diào)用(Call)的接收,這個(gè)對(duì)象利用狀態(tài)轉(zhuǎn)換而不是利用固定的處理流程實(shí)現(xiàn)操作。說明:調(diào)用事件分為同步調(diào)用和異步調(diào)用兩種;如果調(diào)用者需要等待操作的完成,則是同步調(diào)用;反之則是異步調(diào)用。調(diào)用事件的語法格式如下:過程名(實(shí)參列表)[監(jiān)護(hù)條件]/動(dòng)作表達(dá)式例:設(shè)有登錄窗口和Login類,Login類中暫時(shí)沒有屬性

其描述“準(zhǔn)備登錄”狀態(tài)到“登錄”狀態(tài)過程的狀態(tài)圖:123456******其描述“準(zhǔn)備登錄”狀態(tài)到“登錄”狀態(tài)過程的狀態(tài)圖:例:設(shè)有登錄窗口和Login類,Login類中有屬性

123456******

2.變化事件(ChangeEvent):變化事件指的是依賴于特定屬性值的布爾表達(dá)式的條件滿足時(shí),狀態(tài)發(fā)生改變。變化事件用關(guān)鍵字“when”表示,其語法格式如下:

when(布爾表達(dá)式)[監(jiān)護(hù)條件]/動(dòng)作表達(dá)式例:基于上例,Login類中增加屬性LoginTimes用來記錄登錄次數(shù)則描述“等待登錄”到“準(zhǔn)備登錄”狀態(tài)過程的狀態(tài)圖為:

3.時(shí)間事件(timeevent):

時(shí)間事件指的是滿足某一時(shí)間表達(dá)式的情況的出現(xiàn),例如到了某一時(shí)間點(diǎn)或經(jīng)過了某一時(shí)間段.

時(shí)間事件用關(guān)鍵字“after/when”表示,其語法格式如下:after(時(shí)間表達(dá)式)[監(jiān)護(hù)條件]/動(dòng)作表達(dá)式例:基于上例,Login類中再增加屬性CountTime用來記錄等待時(shí)間(秒).

則描述“等待登錄”到“終止?fàn)顟B(tài)”狀態(tài)過程的狀態(tài)圖為:OK例1:基于類Login的對(duì)象進(jìn)行登錄之狀態(tài)圖例2:殺毒軟件的定時(shí)殺毒過程可用狀態(tài)圖描述如下:例3:BOOLCEditDlg::OnInitDialog(){

CDialog::OnInitDialog();

//TODO:Addextrainitializationhere

EditRes.Open(CRecordset::snapshot,NULL,CRecordset::none);m_er1=EditRes.m_R1; m_er2=EditRes.m_R2;m_er3=EditRes.m_R3; m_er4=EditRes.m_R4;

UpdateData(FALSE);

returnTRUE;//returnTRUEunlessyousetthefocustoacontrol //EXCEPTION:OCXPropertyPagesshouldreturnFALSE}voidCEditDlg::OnCancel(){ //TODO:Addextracleanuphere

EditRes.Close();

CDialog::OnCancel();}voidCEditDlg::OnUpButton(){ //TODO:Addyourcontrolnotificationhandlercodehere

if(!EditRes.IsBOF())EditRes.MovePrev(); m_er1=EditRes.m_R1; m_er2=EditRes.m_R2;m_er3=EditRes.m_R3; m_er4=EditRes.m_R4;

UpdateData(FALSE); }voidCEditDlg::OnDownButton(){ //TODO:Addyourcontrolnotificationhandlercodehere

if(!EditRes.IsEOF())EditRes.MoveNext();m_er1=EditRes.m_R1;m_er2=EditRes.m_R2;m_er3=EditRes.m_R3;m_er4=EditRes.m_R4;

UpdateData(FALSE);}voidCEditDlg::OnOK(){ //TODO:Addextravalidationhere

UpdateData();//將編輯框中的值賦給對(duì)應(yīng)變量m_erl--m_er4

EditRes.Edit();EditRes.m_R1=m_er1; EditRes.m_R2=m_er2;EditRes.m_R3=m_er3; EditRes.m_R4=m_er4;

if(EditRes.CanUpdate()) {

EditRes.Update();

AfxMessageBox("修改成功!");}

EditRes.Close();

CDialog::OnOK();}CDialog::OnCancel()CDialog::OnOK()!EOF!BOF!BOF!EOF!EOFdo/close()注:作為課后練習(xí),建議課后用

Rose

重新構(gòu)造該圖三、狀態(tài)圖的用途及建模技術(shù)問題:在對(duì)對(duì)象(類、用例)建模時(shí),在什么樣的情況下使用狀態(tài)圖呢?回答:對(duì)反應(yīng)型對(duì)象建模一般使用狀態(tài)圖。反映型對(duì)象通常具有如下特點(diǎn):

(1)響應(yīng)外部事件,即來自對(duì)象語境外的事件;例如,窗口中的菜單和按鈕命令

(2)在對(duì)某事件做出反映后,它又會(huì)變回空閑狀態(tài),等待下一個(gè)事件;

窗口菜單選擇退出IdleWorking例如:

(3)具有清晰的生命期,可以被建模為狀態(tài)、躍遷和事件的演化;

例如,時(shí)間事件或變化事件的發(fā)生

(4)當(dāng)前行為和過去行為存在著依賴關(guān)系。例如,“目標(biāo)狀態(tài)”返回到“源狀態(tài)”在使用狀態(tài)圖對(duì)系統(tǒng)反映型對(duì)象建模時(shí),可以參照以下步驟進(jìn)行:

(1)識(shí)別一個(gè)要對(duì)其生命周期進(jìn)行描述的參與行為的類;

(2)對(duì)狀態(tài)建模,即確定對(duì)象可能存在的狀態(tài);

(3)對(duì)事件建模,即確定對(duì)象可能存在的事件;

(4)對(duì)動(dòng)作建模,即確定當(dāng)轉(zhuǎn)變被激活時(shí),相應(yīng)被執(zhí)行的動(dòng)作;

(5)對(duì)建模結(jié)果進(jìn)行精化和細(xì)化。狀態(tài)圖作用是輔助確定類中的:

(1)屬性、方法

(2)方法和方法之間的關(guān)系

(3)對(duì)方法中的算法設(shè)計(jì)也起著指導(dǎo)作用說明:在實(shí)際建模應(yīng)用中狀態(tài)圖用的并不多,使用較多的有:時(shí)序圖、協(xié)作圖和活動(dòng)圖;但學(xué)習(xí)、建立和理解狀態(tài)圖對(duì)基于事件驅(qū)動(dòng)的程序設(shè)計(jì)和對(duì)程序的分析、調(diào)試是很重要的。§4.2順序圖(sequencediagram)

順序圖:也稱時(shí)序圖,它是一種描述對(duì)象之間按照時(shí)間順序進(jìn)行交互的圖,它由一組相互協(xié)作的對(duì)象以及它們之間可發(fā)送的消息組成,它強(qiáng)調(diào)消息之間的順序。順序圖組成:主要有橫向和縱向兩個(gè)軸。其中:橫向軸排列的是參與交互的對(duì)象,縱向軸表示時(shí)間。例如:

對(duì)象時(shí)間說明:1.對(duì)象間的排列順序并不重要,但一般把表示參與者的對(duì)象放在圖的兩側(cè),主要參與者放在最左邊,次要參與者放在最右邊(或表示人的參與者放在最左邊,表示系統(tǒng)的參與者放在最右邊);2.縱向軸按時(shí)間順序列出各對(duì)象所發(fā)出和接受的消息。順序圖建模元素:對(duì)象(object)生命線(lifeline)控制焦點(diǎn)(focusofcontrol)或激活期(activation)消息(message)其中:

1.對(duì)象的命名方式主要有以下三種:其中:第一種命名方式包括對(duì)象名和類名;第二種命名方式只顯示類名不顯示對(duì)象名,即表示這是一個(gè)匿名對(duì)象;第三種命名方式只顯示對(duì)象名不顯示類名,即不關(guān)心對(duì)象屬于什么類。

2.消息包含普通消息、調(diào)用消息、異步消息和返回消息等多種(1)普通消息(Simple)

(2)調(diào)用消息(Procedurecall)

調(diào)用消息:指發(fā)送者把控制傳遞給消息的接收者,然后停止活動(dòng),等待消息接收者放棄或返回控制。調(diào)用消息的表示符號(hào)如下圖所示:①調(diào)用消息可以用來表示同步的意義,事實(shí)上,在UML規(guī)范說明的早期版本中,就是采用“同步消息”這個(gè)術(shù)語的。②一般地,調(diào)用消息的接收者必須是一個(gè)被動(dòng)對(duì)象(passiveobject),即它是一個(gè)需要通過消息驅(qū)動(dòng)才能執(zhí)行動(dòng)作的對(duì)象。③另外調(diào)用消息必有一個(gè)配對(duì)的返回消息,為了圖的簡(jiǎn)潔和清晰,與調(diào)用消息配對(duì)的返回消息可以不用畫出。說明:(3)異步消息(Asynchronous)異步消息指發(fā)送者通過消息把信號(hào)傳遞給消息的接收者,然后繼續(xù)自己的活動(dòng),不等待接收者返回消息或控制異步消息的表示符號(hào)如下圖所示:說明:異步消息的接收者和發(fā)送者是并行工作的。(4)返回消息(Return)

返回消息的表示符號(hào)如下圖所示:說明:如果是從調(diào)用(同步)消息返回,則返回消息是隱含的,所以返回消息可以不用畫出來。對(duì)于非調(diào)用(同步)消息,如果有返回消息,必須明確表示出來。

ROSE中順序圖消息圖形符號(hào)列表:英文名稱中文名稱符號(hào)simple普通消息synchronous同步消息balking阻止消息timeoue超時(shí)消息Procedurecall調(diào)用消息asynchronous異步消息return返回消息對(duì)象的創(chuàng)建和撤銷

1.對(duì)象的創(chuàng)建(兩種形式)

如果對(duì)象在圖的頂部(默認(rèn)位置),說明對(duì)象在交互開始之前就已經(jīng)存在了(關(guān)聯(lián))。如果對(duì)象是在交互過程中創(chuàng)建的,那末應(yīng)當(dāng)位于圖的中間(依賴)2.對(duì)象的撤銷建立時(shí)序圖遵循的指導(dǎo)性的原則:

(1)確定交互的語境語境:可以是系統(tǒng)、子系統(tǒng)和用例等

(2)確定參與交互作用的角色—對(duì)象,根據(jù)對(duì)象的重要性,將其從左向右的方向放在時(shí)序圖中。

(3)設(shè)置每個(gè)對(duì)象的生命線。一般情況下,對(duì)象存在于交互的整個(gè)過程,但它也可以在交互過程中創(chuàng)建和撤銷。

(4)從引發(fā)某個(gè)交互的信息開始,在生命線之間按從上向下的順序畫出隨后的消息。

(5)如果需要設(shè)置時(shí)間或空間的約束,可以為每個(gè)消息附上合適的時(shí)間和空間約束。

(6)給某控制流的每個(gè)消息附上前置或后置條件,這可以更詳細(xì)地說明這個(gè)控制流。例1:基于“學(xué)生成績(jī)管理系統(tǒng)”之“登錄”語境建立順序圖控制焦點(diǎn)的嵌套:Tools

Options

Diagram設(shè)置了“顯示”中的“控制焦點(diǎn)”+“分級(jí)消息”后的視圖:例2:基于“圖書館管理系統(tǒng)”之“登錄”、“借書業(yè)務(wù)”語境建立順序圖借助上述順序圖的進(jìn)一步分析和設(shè)計(jì),可將概念層類圖細(xì)化為如下說明層類圖:注意:不完備界面設(shè)計(jì)登錄界面:借書業(yè)務(wù)界面:§4·3協(xié)作圖(CollaborrationDiagram)消息消息流圖形表示為:

顯示兩個(gè)對(duì)象之間的信息流:協(xié)作圖:描述系統(tǒng)成份如何協(xié)同工作,它強(qiáng)調(diào)參加交互的各對(duì)象的組織結(jié)構(gòu)?!f(xié)作圖組成:主要由對(duì)象、關(guān)聯(lián)和消息流3種成份組成。其中:關(guān)聯(lián)就是關(guān)聯(lián)關(guān)系,其圖形符號(hào)為:·建立協(xié)作圖遵循的指導(dǎo)性的原則:

(1)確定交互過程的語境(上下文))。

(2)識(shí)別參與交互過程的對(duì)象。

(3)確定對(duì)象之間的鏈(Link),以及沿著鏈的消息。

(4)從引發(fā)這個(gè)交互過程的初始消息開始,將隨后的每個(gè)消息附到相應(yīng)的鏈上。順序圖到協(xié)作圖自動(dòng)轉(zhuǎn)換:

BrowseCreate

CollaborrationDiagram或F5協(xié)作圖到順序圖自動(dòng)轉(zhuǎn)換:

BrowseCreate

SequenceDiagram或F5例:順序圖和協(xié)作圖的比較

1.順序圖和協(xié)作圖都屬于交互圖,都用于描述系統(tǒng)中對(duì)象之間的動(dòng)態(tài)關(guān)系。

2.順序圖和協(xié)作圖在語義上是等價(jià)的,兩者之間可以相互轉(zhuǎn)換,但兩者并不能完全相互代替。

3.兩者強(qiáng)調(diào)的重點(diǎn)不同。順序圖強(qiáng)調(diào)的是消息的時(shí)間順序;協(xié)作圖強(qiáng)調(diào)的是參與交互的對(duì)象的組織。

4.順序圖可以表示某些協(xié)作圖無法表示的信息,同樣,協(xié)作圖也可以表示某些順序圖無法表示的信息。說明:可根據(jù)交互圖補(bǔ)充提取類操作?;顒?dòng)圖:是狀態(tài)圖的擴(kuò)展,其擴(kuò)展包括以下兩方面:內(nèi)部增加以下等元素:動(dòng)作狀態(tài)(原有“狀態(tài)”)和“活動(dòng)狀態(tài)”;對(duì)象及與對(duì)象的關(guān)聯(lián)(用依賴關(guān)系)外部增加有:泳道(不同對(duì)象的活動(dòng)區(qū))●說明:活動(dòng)圖同狀態(tài)圖一樣也是一種特殊的狀態(tài)機(jī),

整個(gè)活動(dòng)圖起始于起始狀態(tài)●終止于結(jié)束狀態(tài)§4.4活動(dòng)圖(ActivityDiagram)一、組成元素1.動(dòng)作狀態(tài)動(dòng)作狀態(tài):表示活動(dòng)圖的原子動(dòng)作,即:結(jié)構(gòu)上不能再被分解,工作上不能被中斷的狀態(tài)。動(dòng)作狀態(tài)的圖形符號(hào)為:如:說明:動(dòng)作狀態(tài)是構(gòu)造活動(dòng)圖的最小單位(原子動(dòng)作),不能再分解;動(dòng)作狀態(tài)是不可以中斷的狀態(tài);

動(dòng)作狀態(tài)是瞬時(shí)行為,它所占用的處理時(shí)間極短,有時(shí)可以忽略不計(jì);動(dòng)作狀態(tài)不能同對(duì)象直接建立聯(lián)系,即不可以創(chuàng)建、撤銷一個(gè)對(duì)象;動(dòng)作狀態(tài)不可以有入口動(dòng)作、出口動(dòng)作和子狀態(tài)機(jī)

2.活動(dòng)狀態(tài)活動(dòng)狀態(tài):是非原子的,也即是可以分解的,可被中斷的狀態(tài)。說明:

(1)活作狀態(tài)是可以被中斷的狀態(tài);

(2)活動(dòng)狀態(tài)可以有入口動(dòng)作、出口動(dòng)作、狀態(tài)動(dòng)作和子狀態(tài)機(jī)

(3)活作狀態(tài)可以同對(duì)象直接建立聯(lián)系,即活動(dòng)狀態(tài)可以創(chuàng)建、撤銷一個(gè)對(duì)象。活動(dòng)狀態(tài)的圖形符號(hào)為:

如:3.躍遷躍遷:由一個(gè)狀態(tài)轉(zhuǎn)向下一個(gè)狀態(tài),不需要事件的觸發(fā)。用關(guān)聯(lián)線表示:4.分支(Branch)分支:規(guī)定了基于布爾表達(dá)式的替換路徑。圖形表示為:5.分叉和匯合(ForkandJoin)分叉:分叉表示將單一的控制流分成兩個(gè)或多個(gè)并發(fā)的控制流匯合:代表了兩個(gè)或多個(gè)并發(fā)(異步)控制流的同步,聯(lián)結(jié)有多個(gè)輸入躍遷和一個(gè)

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論