The LabVIEW Style Book譯文共享(第四章)_第1頁
The LabVIEW Style Book譯文共享(第四章)_第2頁
The LabVIEW Style Book譯文共享(第四章)_第3頁
The LabVIEW Style Book譯文共享(第四章)_第4頁
The LabVIEW Style Book譯文共享(第四章)_第5頁
已閱讀5頁,還剩35頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

PAGEPAGE404.BlockDiagramTheLabVIEWblockdiagramexcelsatconveyingsourcecode.Areallygooddiagramisenlightening,evenawe-inspiring,likeaworkofart.Acarelessdiagram,however,canappearasjumbledasabowlofspaghetti.Indeed,thesetwoextremesaredepictedbyMeticulousVIandSpaghettiVIinSomewhereinthemiddlebetweenartworkandspaghettiiswheremostapplicationsreside.Somedevelopershaveneatwiringpracticesbutlarge,flatdiagrams.Othershaveoverlymodulardiagramsthatdisguisethearchitecture.Stillothersprefervariablesoverdataflow.Many,manydevelopersskimpondocumentationtosavetime.Moreover,mostdiagramsarecharacterizedbytradeoffsbetweengoodstyleandshortcutsdeemednecessarytogetthejobdone.Theoveralloutcomeisacompromiseamongattractiveappearance,personalpreferences,andfunctionalperformance.4程序框圖LabVIEW的程序框圖長于源代碼表述。一個真正好的程序是發(fā)人深省的,甚至是令人敬畏的,就是一件藝術(shù)品一樣。而一個差的程序,看起來就像一碗意大利面條那樣凌亂。事實上,這兩種極端的情況就像第一章《風(fēng)格的重要性》中MeticulousVI和SpaghettiVI所表現(xiàn)的那樣。而大部分程序處于藝術(shù)品和意大利面條之間。一些程序開發(fā)者有連線整齊的習(xí)慣,但程序框圖往往卻大而寬泛。其他的一些程序開發(fā)者卻過度使用模塊化編程,就像自己在搭建筑一樣。而仍有一些編程人員喜歡使用變量方式而非數(shù)據(jù)流方式。很多很多開發(fā)人員在文檔上節(jié)省時間。此外,很多程序是在好的風(fēng)格和節(jié)約時間兩者之間取得平衡下為特征下完成工作的??傮w結(jié)論就是在吸引人的程序外觀,個人喜好和程序功能上取得折中。Theorem4.1GreatLabVIEWdiagramscanbeexpeditiouslydeveloped.Manydeveloperswrongfullyassumethatattractivediagramsrequirealeveloftoilthatisimpracticalforreal-worldapplicationsthathavetightdeadlines.Itseemsfasterandmoreproductivetoavoidgettingcaughtupindiagramaesthetics.Indeed,itispossibletoexpendexcessivetimeoptimizingtheappearanceofacomplexdiagram,andmostofusmustpleadguiltyfordoingthisonoccasion.However,itisalwaysmuchmoretimeconsuming,inthelongrun,todebugandmodifysloppycode.PerTheorem1.1,applyinggoodstylesignificantlyreducestimeandeffortthroughoutanapplication'slifecycle.Additionally,neatdevelopmentpracticesneednotbeoverlytimeconsuming.Ifyouknowthestylerulesandhowtoimplementthem,youeliminatethetoil.Thischapterpresentsstylerulesthatensureneatandorganizeddiagramsthatarepracticaltoimplementinrealapplicationswithtightdeadlines.Combinedwiththerulesinotherchapters,theyensurereadableandmaintainableLabVIEWsourcecode.Moreover,masteryofthesestylerulesmayleadtoawe-inspiringLabVIEWdiagrams.4.1我們能快速的開發(fā)優(yōu)秀的LabVIEW程序大多數(shù)開發(fā)人員都錯誤認(rèn)為吸引人的程序編寫上受到許多束縛使開發(fā)進(jìn)度變慢,而現(xiàn)實中程序開發(fā)都有時間限制。似乎快速開發(fā)程序的和程序具有美感是相矛盾的。事實上,多花些時間來優(yōu)化復(fù)雜程序的外觀是可能的,而我們大多數(shù)人則辯解到這樣做會使我們內(nèi)心不安。然而,長遠(yuǎn)看來,我們將在調(diào)試和修改代碼上花費更多的時間。定理1.1指出,采取好的編程風(fēng)格將在整個軟件生命周期極大的減少我們花費的時間和精力。此外,好的程序開發(fā)習(xí)慣并不會多花費我們的時間。如果你知道什么才是好的風(fēng)格所要遵循的規(guī)則和如何執(zhí)行這些規(guī)則,你將會在程序開發(fā)中更加輕松。這一章提出的風(fēng)格能確保我們實際應(yīng)用中在規(guī)定時間內(nèi)開發(fā)出整潔,結(jié)構(gòu)清晰的程序。結(jié)合其他章節(jié)所講述的規(guī)則,我們能開發(fā)出可讀性好的,易于維護(hù)的LabView源代碼。而且,遵守這些好的編程風(fēng)格所要求的準(zhǔn)則將可能會使我們開發(fā)出令人贊嘆的LabView程序。4.1.LayoutThissectioncoversrulesforblockdiagramlayout,includinglayoutbasics,andsubVImodularization.Thefollowingrulespertaintothegenerallayoutoftheblockdiagram.4.1布局這一節(jié)包含程序框圖的布局規(guī)則,包括布局的基本原理和子VI的模塊化。下面的規(guī)則屬于程序框圖布局的基本知識Rule4.1Use1280x1024displayresolution規(guī)則4.1使用1280*1024的屏幕分辨率Thedisplayresolutionaffectsthevisibleareathedeveloperhastoworkwithandhowthediagramappearswhenopenedonagiventargetcomputer.ItisbeneficialtostandardizeononedisplayresolutionsothatthediagramwindowmaintainsaconsistentappearancewhenopenedonPCswithsimilardisplaycapabilities.Thehighertheresolutionsetting,thesmallerthediagramobjectsshrinkrelativetothescreensize,andthemorecodefitsononescreen.Afairlyhighresolutionisrecommendedtomaximizetheviewablediagramareawithoutstrainingyoureyes.TheLabVIEWdevelopmentenvironmentisdesignedforaminimum1024x768resolution.Aresolutionof1280x1024providesadditionalrealestatewhilemaintainingcompatibilitywithmainstreamPCdisplaytechnology.Avoidresolutionsmuchhigherthan1280x1024becausehigherresolutionsarelessuniversallysupported,andthelargerworkareapromoteslargerdiagramsandpotentiallylessmodularity.Also,dependingonthemonitorsize,veryhighresolutionsmaystrainyoureyes.AlthoughIhave20/20vision,severalyearsago,IwentthroughaphasewhereIworetintedprescriptionglassesduringLabVIEWdevelopment.Anadjustmenttotheresolutionsetting,alongwithgeneralimprovementsindisplaytechnology,eliminatedthisproblemforme.Todaymanycomputerssupportmultiplemonitors.ItisparticularlyusefultoutilizetwomonitorsforLabVIEWdevelopment.Thisallowsyoutodedicateonemonitortothefrontpanelandtheothermonitortotheblockdiagram,andhavebothwindowssimultaneouslyvisiblewithouthavingtonavigatebetweenthem.屏幕分辨率決定程序開發(fā)人員在開發(fā)程序時的可見區(qū)域和程序移植到用戶計算機(jī)后的界面顯示。因此,將程序分辨率統(tǒng)一是非常有好處的,那樣應(yīng)用程序在使用相同分辨率的PC上打開時窗口界面將保存一致。程序分辨率設(shè)置得越高,界面上的控件將根據(jù)屏幕大小相應(yīng)的縮小,屏幕上也能容納更多的程序代碼。合適的屏幕分辨率是不僅要能使程序的可見區(qū)域最大化,而且不能讓你的眼睛不舒服。LabView開發(fā)環(huán)境設(shè)定的最小程序分辨率為1024*768。與PC顯示技術(shù)發(fā)展相適應(yīng)的1280*1024的屏幕分辨率能提供更多的可視區(qū)域。不要采用高于1280*1024的分辨率,因為當(dāng)前還不廣泛支持如此高的分辨率,更大的工作區(qū)域也意味者程序框圖更大,模塊化程度降低。同時,取決于顯示器的大小,如果過高的分辨率容易使你的眼睛疲勞。雖然幾年前,我還有20/20的視力,但使用LabView開發(fā)環(huán)境一段時間后我不得不帶上眼鏡來矯正視力。要避免我同樣的問題,需要隨著顯示技術(shù)的不斷發(fā)展,調(diào)整到合適的屏幕分辨率。今天許多計算機(jī)都支持多顯示器。在LabView開發(fā)環(huán)境采用兩個顯示器是非常有好處的。使用一個顯示器來顯示前面板,另外一個顯示器來顯示程序框圖。這樣就能同時看到這兩個窗口,而不需要在前面板和程序框圖之間進(jìn)行切換。Rule4.2Leavethebackgroundcolorwhite規(guī)則4.2使用白色作為背景色Rule4.3Useahighobjectdensity規(guī)則4.3把對象盡量放密集些Rule4.4Limitthediagramsizetoonevisiblescreen,orlimitscrollingtoonedirection程序框圖不要超過一個顯示屏的范圍,如果代碼過多應(yīng)使界面只能在一個方向上滑動。Donotcolorthediagrams.Leavethebackgroundofthediagram,andeverysubdiagramofeverystructure,defaultwhite.Dataflowmustbeeasytovisualize.Ahighdensityofobjectsisdesired,withoutcrowdingobjectstoocloseandcausingwiresandobjectstooverlap.Ingeneral,trytolimitthediagramsizetoonedisplayscreen.Insomesituations,itisdifficulttoworkwithinthisconstraint,suchasacomplexdiagramcontainingmultipleparallelloops.Inthiscase,organizethelargediagramsothatitmaybeviewedbyscrollinginonlyonedirection,ormodularizetheloopsintosubVIstoreducespace.Loop-subVIsarediscussedinAvoidlargediagramsthatrequirebothhorizontalandverticalscrollingbecausethisiscumbersometonavigate.不要給程序框圖著色。界面的背景色和每個結(jié)構(gòu)的子界面都默認(rèn)為白色。數(shù)據(jù)流向必須非常容易識別。我們希望對象盡量布局緊湊,但同時不希望對象靠得太近引起對象和連線重疊。總之,盡量縮小程序框圖大小使之能在一個屏幕顯示出來。在某些情況下,比如說某些復(fù)雜的程序包含很多個并行循環(huán),要滿足這個限定非常困難。在這種情況下,調(diào)整程序框圖,或者將一些循環(huán)變成子VI來減小所占背面板空間,使背面板僅在一個方向上滑動。循環(huán)-子VI將在第8章《樣式設(shè)計》被討。避免界面同時包含了水平和垂直滾動條,因為這樣看起來很不方便。Figure4-1containstwofunctionallyequivalentimplementationsofaVIthatevaluatesacalibrationinterval.ThediagramofFigure4-1Aisoverlydenseandsloppy.Asyoucansee,severalofthefunctionsandwiresoverlap,andthediagramappearsconfusing.InFigure4-1B,thesameVIisrevisedforimprovedreadability.Thefunctionsareneatlyspaced,thewiringisclear,afewcommentsandenumerationsareincluded,andtheerrorclusterpropagatesthroughoutthediagram.TheimplementationofFigure4-1BismuchmorereadablethanFigure4-1A.Werevisitthisexampleveryshortly.圖4-1包含了兩個功能上相同的估計校準(zhǔn)區(qū)間的vi。圖4-1A過度緊湊且凌亂。正如你看到的那樣,幾個函數(shù)和連線重疊了,整個程序看起來讓人費解。圖4-1B,相同的VI經(jīng)過改進(jìn)后程序可讀性提高了。函數(shù)之間整齊的被隔開,連線上也很清楚,并且包含了少量的注釋和枚舉常量,錯誤簇沿整個程序框圖傳遞。圖4-1B執(zhí)行上的可讀性遠(yuǎn)好于圖4-1A。我們再讀程序時將花費更少的時間。Figure4-1A.ThediagramforaVIthatevaluatesacalibrationintervalisoverlydenseandconfusing.[Viewfullsizeimage]圖4-1ACalibrationIntervalVI程序框圖過度緊湊和令人費解。Figure4-1B.AdifferentimplementationoftheCalibrationIntervalVIcontainsappropriatespacing,clearwiring,anddocumentation.圖4-1B另一種方式實現(xiàn)的CalibrationIntervalVI,包含適當(dāng)?shù)拈g隙,清晰的連線和文檔。[Viewfullsizeimage]Ifyourdiagramscommonlyextendbeyondonewindow,maximizedonamonitorwith1280x1024resolution,yoursourcecodeisnotsufficientlymodular.IftheNavigationWindowisintegraltoyourdevelopment,youdefinitelyneedmoresubVIs!如果你的程序在1280*1024的顯示分辨率下超過了一個屏幕,那說明你的程序源代碼模塊化程度還不夠。如果導(dǎo)航窗口在你的程序開發(fā)來中是完整的,你肯定需要將程序分散成更多的子VI以節(jié)省空間。Rule4.5CreateamultilayerhierarchyofsubVIsStriveforamodularityindexgreaterthan3.0規(guī)則4.5子VI采用多層次結(jié)構(gòu)努力使模塊化率超過3.0DevelopyourapplicationsasamultilayerhierarchyofsubVIsusingacombinationoftop-downandbottom-updesignanddevelopmenttechniques.TheVIHierarchyisviewedbyselectingView?VIHierarchy.DeselectIncludeVILib,IncludeGlobals,andIncludetypedeffromthetoolbartoremovetheseitemsfromthewindow,andviewonlythehierarchyofuserVIsthatyouprovided.Commongeometriesincludepyramid,diamond,andoval.Exceptforverysimpleapplications,theVIHierarchyshouldcontainmultiplerowsofsubVIsbelowthetop-levelVI.Inandrespectively.記住為每個子VI創(chuàng)建一個有含義的圖標(biāo)和相結(jié)合的描述。再怎么強(qiáng)調(diào)它的重要性都是不夠的。這是我們最神圣的信條。圖標(biāo)和描述信息能幫助我們在調(diào)用這些子VI的程序時通過幫助窗口的文字識別這些子VI。這些描述迫使我們進(jìn)行內(nèi)聚性測試。如果你不能通過2到3句話總結(jié)子VI的功能,子VI可能包含了太多的子代碼。圖標(biāo)和函數(shù)功能描述將在第五章《圖標(biāo)和連線端》和第9章《文檔》分別作詳細(xì)討論。4.2.WiringThissectioncoversrulesforwiring,includingclearwiringtechniques,andclustermodularization.4.2連線這一章節(jié)涵蓋了布線的規(guī)則,包括清除導(dǎo)線技術(shù)和簇的模塊化。Rule4.11Minimizewirebends;eliminatekinksandloops規(guī)則4.11盡量使彎線更少:不要形成扭結(jié)和圈Thefewerbends,kinks,andloopsyourwireshave,themorefluidyourdiagramsappear.Therearemanualandautomaticmethodsofwireroutingandcleaning.Iprefermanualwireroutingbecausetheautomaticmethodsprioritizehorizontalterminalentriesandavoidingoverlaps,attheexpenseofcreatingextrabends.Tominimizethebends,itisnecessarytoroutewiresmanually.Autowireroutingcanbedisabledtemporarilyorforallnewwires.Todisableandenableautowireroutingon-the-fly,togglethe<A>keyatanytimeafteryouinitiateanewwire.Todisableautowireroutingforallnewwires,navigatetoTools?Options,selectBlockDiagramfromtheCategorylist,anddeselecttheEnableautowiringcheckbox.Mypreferenceistofirstconnectthewiresmanuallyandthenconsiderrepositioningnodesandindividualwiresegmentstominimizeoverlaps.Theresultisfewerbendsandoverlaps.Additionally,right-clickonanexistingwireandselectCleanUpWiretoautomaticallyreducekinks,loops,andbends.曲線,扭結(jié),圈越少,程序流就越清晰。有手動和自動方式來連線和清除連線。我更喜歡手動方式來連線因為自動方式優(yōu)先考慮水平接線端,并且已多余的曲線為代價來避免重疊。為了使曲線最少,必須手動為程序連線。為了不讓所有新連線自動連線,打開Tools?Options,在類別中選擇BlockDiagram,取消勾選啟動自動連線單選框。我個人喜歡的方式是:首先手動連線,然后考慮重新安排節(jié)點和個別連線來減少重疊。這樣做的好處是能讓曲線和重疊最少。此外,在現(xiàn)有的連線上鼠標(biāo)右擊選擇整理連線會自動減少扭結(jié),圈和曲線。Rule4.12MaintainevenspacingofparallelwiresWhenpropagatingparallelwires,maintainconsistent,evenspacingbetweeneachnodeorbend.Therearetwousefultechniquesforensuringevenspacing.First,usesimilarconnectorpatternandterminalassignmentsforallsubVIsthatareintendedtobeusedtogether.Connectorpatternconventionsarecoveredin\l"ch05"Chapter5.Second,alignthenodeshorizontallybeforewiring.SimplyselectthenodesandchooseanyofthehorizontalalignmenttoolsfromtheAlignObjectsmenuonthetoolbar.InFigure4-4,adataloggingroutineisdevelopedusingseveralFileI/Ofunctionsthatcompriseadataflowsequence.Thefilerefnumanderrorclusterarepropagatedusingparallelwires.TheFileI/Ofunctionshavesimilarconnectorpatterns,whichhelpsfacilitateevenspacing.However,evenslightoffsetsinthehorizontalalignmentcausewirekinks.InFigure4-4A,thediagramisinitiatedbydroppingthefunctionsfromthepalettesontothediagram.InFigure4-4B,theBottomEdgesalignmenttoolsnapsthenodesintoperfecthorizontalalignment.Youcanalsodistributethenodeswithevenhorizontalgapusingthehorizontaldistributiontool.Inthisexample,anasymmetrichorizontalgapisdesiredtoprovideextraspacingwithintheWhileLoop.InFigure4-4C,clearwiringproceedswithevenverticalspacing,withoutkinksorbends.InFigure4-4D,thewiringiscompletedandthehorizontalgapsbetweennodesaremanuallyadjusted.規(guī)則4.12在平行連線保持適當(dāng)?shù)木嚯x當(dāng)平行連線傳送數(shù)據(jù)時,在節(jié)點或曲線之間保存一致的,適當(dāng)?shù)木嚯x。有兩個有用的技巧來確保適當(dāng)?shù)目臻g。第一,為所有的將一起使用的子VI選擇相同的接線端模式和端口分配。接線端模式的內(nèi)容在第五章涉及。第二,在接線之前水平排列接線端。僅僅只需選擇節(jié)后點并選用分布對象工具條中任何一個水平方向調(diào)整工具。在圖4-4中,一個數(shù)據(jù)日志程序選用了幾個文件I/O函數(shù),其中包含數(shù)據(jù)流順序。文件引用端和錯誤簇傳遞數(shù)據(jù)時選用平行連線。文件I/O函數(shù)采用相同的接線端模式,這有助于平行連線之間保持相等距離。但是,即使在水平方向很小的偏移也會導(dǎo)致曲線扭結(jié)。在圖4-4A中,程序框圖中開始時放置了函數(shù)選板上的幾個函數(shù)。在圖4-4B中,使用對齊對象工具欄中下邊緣對齊將這些函數(shù)調(diào)整到合適的水平位置。你也可以用水平分布工具中的水平間距來調(diào)整這些節(jié)點。在這個例子,在while循環(huán)中要求為非對稱水平間隔提供額外的空間。在圖4-4C中,清楚的連線也確保了相等的垂直空間上,沒有扭結(jié)和彎曲。在圖4-4D,連線完成并且通過手動調(diào)整使節(jié)點之間水平間距相等。Figure4-4A.Adataloggingroutineconsistsofseveralfunctionscontainingsimilarconnectorpatternsandterminalassignments.圖4-4A一個數(shù)據(jù)日志程序包含幾個具有相同的接線端模式和端口分配的函數(shù)。[Viewfullsizeimage]Figure4-4B.ThefunctionsarealignedhorizontallyusingtheBottomEdgesalignmenttool.圖4-4B中使用對齊對象工具欄中下邊緣對齊函數(shù)在水平方向上對齊。[Viewfullsizeimage]Figure4-4C.Wiresforfilerefnumanderrorclusterproceedwithevenspacingandwithoutkinksorbends.圖4-4C中.在文件引用和錯誤簇的連線為其提供了相等的間距,并且沒有扭結(jié)和彎曲。[Viewfullsizeimage]Figure4-4D.Thewiringiscompletedandthehorizontalgapsbetweennodesaremanuallyadjusted.圖4-4D連線完成并對節(jié)點間的水平間距進(jìn)行手動調(diào)整。[Viewfullsizeimage]Rule4.13TunnelwiresthroughleftandrightbordersofstructuresRule4.14DonotwirethroughstructuresunnecessarilyTunnelwiresintostructuresthroughtheirleftborder,andoutofstructuresthroughtheirrightborder.Avoidtunnelingwiresthroughthetopandbottomborders.Alsoavoidpassingwiresthroughstructuresiftheyarenotutilizedwithinthestructure,unlesstheirpurposeisclearlylabeled.Itisparticularlyannoyingtoflipthroughmanyframesofamultiframestructure,suchasaCaseoranEventstructure,searchingforplaceswherethedatainthewireismodified.However,sometimesitisusefultopassafewsparewiresthroughaCasestructure,suchasthestatemachinedesignpatternsthatarediscussedin\l"ch08"Chapter8.Thispracticereducesmaintenancewhenadditionalwiresareneeded.BesuretoclearlylabelunusedwiresasUnused,orSpare.規(guī)則4.13隧道連線從結(jié)構(gòu)的左邊和右邊穿過規(guī)則4.14在非必須的情況下,不要將連線穿過結(jié)構(gòu)。隧道連線通過結(jié)構(gòu)左側(cè)邊界進(jìn)入結(jié)構(gòu),并從結(jié)構(gòu)的右側(cè)邊界穿過結(jié)構(gòu)。不要讓隧道在結(jié)構(gòu)的頂部或底部穿過。同樣如果結(jié)構(gòu)內(nèi)部未使用到也不要讓連線穿過結(jié)構(gòu),除非其目的是為了標(biāo)示清楚。特別令人困苦的是瀏覽一個多幀結(jié)構(gòu)的許多幀時,要去尋找那些在連線上被修改的數(shù)據(jù),比如說條件結(jié)構(gòu)或者是事件結(jié)構(gòu)。然而,有時條件結(jié)構(gòu)通過一些額外的連線線是非常有用的。比如說在第八章討論的如狀態(tài)機(jī)的設(shè)計模式。當(dāng)這些額外連線需要時,這樣做降低了程序的可維護(hù)性。必須清楚標(biāo)示出那些不用的或多余的連線。Rule4.15NeverobstructtheviewofwiresandnodesAvoidoverlappingdiagramobjectsAvoidobstructingtheviewofwiresandnodesbyoverlappingthemonthediagram.Anoccasionalcrossoverofawireroutedhorizontallywithawireroutedverticallyisunavoidable.Forexample,sometimesitisnecessarytowiretheiterationterminalofaloopingstructure,normallylocatedatthebottomleftofthestructure,toalocationaboveandtotheright.Manyofthesesameloopshavewiresroutedhorizontallyacrosstheentirestructure,viaeithertunnelsorshiftregisters.Theerrorclusterisaprimeexample.Iftheiterationterminalistoremainonthebottomleft,theremaybenochoicebuttocrossoverthehorizontalwires.Theobstructionisminimizediftheverticalwireisroutedthroughalocationofminimumwiredensity,overlappingasfewwiresaspossible.Additionally,neveroverlapawirewithanobjectoranode.AwirerunningunderneathafunctionorsubVIresemblesaninputandoutputtothenode.規(guī)則4.15不要擋住連線和節(jié)點避免重疊程序框中的對象避免在程序框圖中因重疊連線和節(jié)點而擋住它們。將偶爾交叉的連線改為橫向和縱向連線是不可避免的。舉例來說,有時通常位于循環(huán)結(jié)構(gòu)的左下腳的周期端子必須連接到右上方的位置。許多這樣相同的循環(huán)經(jīng)由隧道或移位寄存器在水平方向連線穿過整個結(jié)構(gòu)。錯誤簇就是一個典型例子。如果周期端子保留在左下腳,可能只有從水平連線穿過(形成交叉)。如果垂直線經(jīng)過的是一個連線最少的地方,造成的阻塞是最小的,連線重疊的可能性也是最小的。此外,不要將連線和一個對象或節(jié)點重疊。連線在函數(shù)或子VI下面流動就像節(jié)點的輸入和輸出一樣。Rule4.16Limitwirelengthssuchthatsourceanddestinationarevisibleononescreen規(guī)則4.16為了程序代碼能夠在一個屏幕顯示,盡量縮短連線的長度。Rule4.17Neveruselocalandglobalvariablesforwiringconvenience規(guī)則4.17不要為了使連線方便而去使用局部和全局變量。Rule4.18LabellongwiresandwiresfromhiddensourceterminalsIdeally,thesourceanddestinationofeverywireshouldbereadilyvisiblewithoutscrollingthediagramwindow.However,thisisnotalwayspossible,evenifthediagramislimitedtoonescreen.Forexample,theterminalsmaybehiddenwithintheframesofamultiframestructure.Inthissituation,besuretolabelthewireintheframesorareaswherethesourceterminalisnotvisible.Whilelimitingwirelengthsisdesirable,longwiresarepreferredovernowires.Neveruselocalorglobalvariablesasamethodofreducingwireclutter.Variablesincreaseprocessingoverhead,memoryuse,andcomplexity.Moreover,variablesundermineLabVIEW'sdataflowprinciplesbyobscuringtheactualsourceofthedata.Whenvariablesarewrittenandreadfrommorethanonelocationonthediagram,it

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論