14.BlockDiagramTheLabVIEWblockdiagramexcelsatconveyingsourcecode.Areallygooddiagramisenlightening,evenawe-inspiring,likeaworkofart.Acarelessdiagram,however,canappearasjumbledasabowlofspaghetti.Indeed,thesetwoextremesaredepictedbyMeticulousVIandSpaghettiVIinChapter1,TheSignificanceofStyle.Somewhereinthemiddlebetweenartworkandspaghettiiswheremostapplicationsreside.Somedevelopershaveneatwiringpracticesbutlarge,flatdiagrams.Othershaveoverlymodulardiagramsthatdisguisethearchitecture.Stillothersprefervariablesoverdataflow.Many,manydevelopersskimpondocumentationtosavetime.Moreover,mostdiagramsarecharacterizedbytradeoffsbetweengoodstyleandshortcutsdeemednecessarytogetthejobdone.Theoveralloutcomeisacompromiseamongattractiveappearance,personalpreferences,andfunctionalperformance.4程序框图LabVIEW的程序框图长于源代码表述。一个真正好的程序是发人深省的,甚至是令人敬畏的,就是一件艺术品一样。而一个差的程序,看起来就像一碗意大利面条那样凌乱。事实上,这两种极端的情况就像第一章《风格的重要性》中MeticulousVI和SpaghettiVI所表现的那样。而大部分程序处于艺术品和意大利面条之间。一些程序开发者有连线整齐的习惯,但程序框图往往却大而宽泛。其他的一些程序开发者却过度使用模块化编程,就像自己在搭建筑一样。而仍有一些编程人员喜欢使用变量方式而非数据流方式。很多很多开发人员在文档上节省时间。此外,很多程序是在好的风格和节约时间两者之间取得平衡下为特征下完成工作的。总体结论就是在吸引人的程序外观,个人喜好和程序功能上取得折中。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我们能快速的开发优秀的LabVIEW程序大多数开发人员都错误认为吸引人的程序编写上受到许多束缚使开发进度变慢,而现实中程序开发都有时间限制。似乎快速开发程序的和程序具有美感是相矛盾的。事实上,多花些时间来优化复杂程序的外观是可能的,而我们大多数人则辩解到这样做会使我们内心不安。然而,长远看来,我们将在调试和修改代码上花费更多的时间。定理1.1指出,采取好的编程风格将在整个软件生命周期极大的减少我们花费的时间和精力。此外,好的程序开发习惯并不会多花费我们的时间。如果你知道什么才是好的风格所要遵循的规则和如何执行这些规则,你将会在程序开发中更加轻松。2这一章提出的风格能确保我们实际应用中在规定时间内开发出整洁,结构清晰的程序。结合其他章节所讲述的规则,我们能开发出可读性好的,易于维护的LabView源代码。而且,遵守这些好的编程风格所要求的准则将可能会使我们开发出令人赞叹的LabView程序。4.1.LayoutThissectioncoversrulesforblockdiagramlayout,includinglayoutbasics,andsubVImodularization.Thefollowingrulespertaintothegenerallayoutoftheblockdiagram.4.1布局这一节包含程序框图的布局规则,包括布局的基本原理和子VI的模块化。下面的规则属于程序框图布局的基本知识Rule4.1Use1280x1024displayresolution规则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.屏幕分辨率决定程序开发人员在开发程序时的可见区域和程序移植到用户计算机后的界面显示。因此,将程序分辨率统一是非常有好处的,那样应用程序在使用相同分辨率的PC上打开时窗口界面将保存一致。程序分辨率设置得越高,界面上的控件将根据屏幕大小相应的缩小,屏幕上也能容纳更多的程序代码。合适的屏幕分辨率是不仅要能使程序的可见区域最大化,而且不能让你的眼睛不3舒服。LabView开发环境设定的最小程序分辨率为1024*768。与PC显示技术发展相适应的1280*1024的屏幕分辨率能提供更多的可视区域。不要采用高于1280*1024的分辨率,因为当前还不广泛支持如此高的分辨率,更大的工作区域也意味者程序框图更大,模块化程度降低。同时,取决于显示器的大小,如果过高的分辨率容易使你的眼睛疲劳。虽然几年前,我还有20/20的视力,但使用LabView开发环境一段时间后我不得不带上眼镜来矫正视力。要避免我同样的问题,需要随着显示技术的不断发展,调整到合适的屏幕分辨率。今天许多计算机都支持多显示器。在LabView开发环境采用两个显示器是非常有好处的。使用一个显示器来显示前面板,另外一个显示器来显示程序框图。这样就能同时看到这两个窗口,而不需要在前面板和程序框图之间进行切换。Rule4.2Leavethebackgroundcolorwhite规则4.2使用白色作为背景色Rule4.3Useahighobjectdensity规则4.3把对象尽量放密集些Rule4.4Limitthediagramsizetoonevisiblescreen,orlimitscrollingtoonedirection程序框图不要超过一个显示屏的范围,如果代码过多应使界面只能在一个方向上滑动。Donotcolorthediagrams.Leavethebackgroundofthediagram,andeverysubdiagramofeverystructure,defaultwhite