




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、LabVIEW編程規(guī)范Intelligent Electronics InstituteHuazhong University of Science & TechnologyHttp:/2目錄編程規(guī)范的重要性前面板創(chuàng)建規(guī)范背面板創(chuàng)建規(guī)范VI圖標和連接器創(chuàng)建規(guī)范Http:/3編程規(guī)范的重要性 編程規(guī)范編程規(guī)范 是指某種計算機編程語言的基本風格或典范模式,或者說是將計算機要執(zhí)行的任務(wù),按某種編程語言的基本風格或典范模式,形成概念化和結(jié)構(gòu)化設(shè)計框架與實現(xiàn)方式Http:/4編程規(guī)范的重要性 軟件是一個復雜復雜的體系 好的軟件程序應(yīng)當具備以下特性: 易用性易用性、高效性高效性、可讀性可讀性 可維護性可維
2、護性、健壯性、簡潔性健壯性、簡潔性Http:/5編程規(guī)范的重要性 對一個給定的具體軟件任務(wù),也許有多種實現(xiàn)方式去完成同一功能。 個人的偏好個人的偏好、編程的風格編程的風格、軟件的需求軟件的需求對程序開發(fā)有著重要的影響,并且開發(fā)人員的意向開發(fā)人員的意向直接影響程序應(yīng)用的實際效果。 軟件程序要達到以上的諸多特性,開發(fā)團隊人員之間必須要有一種通用的規(guī)定約束,以盡量減少個人的主觀隨意性色彩。Http:/6編程規(guī)范的重要性 LabVIEW提供多種方式來創(chuàng)造程序的樣式,而且在實際開發(fā)應(yīng)用中也可看到許多不同的編程規(guī)范,好的規(guī)范可以開發(fā)出更優(yōu)秀的程序。 兼顧編程規(guī)范與軟件開發(fā)時間的平衡選取Http:/7編程規(guī)
3、范的重要性 形成良好編程規(guī)范習慣,需要進行前期準備工作,主要包括以下4個方面 寫需求說明。 構(gòu)建軟件設(shè)計架構(gòu)。 配置LabVIEW環(huán)境。 制定項目工程管理規(guī)范。Http:/8前面板創(chuàng)建規(guī)范 布局 配色 幫助信息 Http:/9前面板創(chuàng)建規(guī)范布局 一個項目所需的設(shè)計主要包括用戶界面設(shè)計、程序結(jié)構(gòu)設(shè)計、接口設(shè)計、模塊設(shè)計等。對于編寫 LabVIEW程序,通常先做用戶界面設(shè)計,可以使界面不受程序?qū)崿F(xiàn)的影響先設(shè)計程序結(jié)構(gòu),再設(shè)計界面,難免會朝著簡化編碼工作方向去努力,但是這樣的界面設(shè)計往往不是最方便用戶使用的狀態(tài)Http:/10前面板創(chuàng)建規(guī)范布局 對于界面設(shè)計的評價 首先,看這個界面是否完成了其交互功
4、能,用戶可以通過界面為程序提供必要的信息;可以通過界面接收到需要的信息。 其次,通過這個界面用戶可以簡單直觀地輸入或獲取信息。 最后,才是界面的美觀程度。Http:/11前面板創(chuàng)建規(guī)范布局 好的用戶界面都有一些共同的特點: 使用恰當?shù)臄?shù)據(jù)類型和控件類型 控件的分類排布合理、簡潔 顏色搭配科學 有必要的文檔說明和注釋Http:/12前面板創(chuàng)建規(guī)范布局關(guān)于布局的幾條基本原則: 最重要控件放在最醒目位置最重要控件放在最醒目位置對于布局,就是將最重要部分放在最顯眼的地方,這是一個非常重要的規(guī)范。根據(jù)大多數(shù)人的閱讀習慣,總是從左到右、從上到下,因此要把最重要的部分放在左上角。LabVIEW提供了排列控件
5、、控件對齊、等間隔這些工具,通過這些工具,程序設(shè)計人員就可以非常方便地布置界面上的控件。Http:/13前面板創(chuàng)建規(guī)范布局 同一類控件進行歸類和相似控件的尺寸保持一致同一類控件進行歸類和相似控件的尺寸保持一致除了使用布局工具將控件對稱排列整齊,編程人員還需要將同一類控件進行歸類,并且相似控件的尺寸最好保持一致,這樣就可使界面看上去更加有層次感。LabVIEW編程提供了可通過多種裝飾控件、空白間隔、選項卡和簇來對控件進行歸類的方法,使不同控件看上去有豐富的層次感。Http:/14前面板創(chuàng)建規(guī)范布局 正確調(diào)控窗口大小進行窗口大小調(diào)控是非常重要的。一般而言,程序員在一個分辨率的顯示器下開發(fā)的程序,如
6、果在另外一個不同分辨率的顯示器上運行時,就有可能使界面兩端的空白區(qū)域顯示出來。為了解決這個問題,LabVIEW編程軟件在“VI屬性”菜單欄的窗口大小中有兩個選項:第一個選項可以讓程序在不同分辨率下保持窗口比例;第二個選項可以根據(jù)窗口的尺寸,自動調(diào)節(jié)界面中控件的大小。Http:/15前面板創(chuàng)建規(guī)范布局圖示是我們智能電子學研究所(IEI)完成的程序開發(fā)項目。對于程序設(shè)計人員來說,版權(quán)是最重要的,所以我們將研究所的圖徽放在了左上角。整個界面雖然控件很多,但是排列整齊,而且對功能類似的控件進行了有效的分類,讓人一看上去就清晰、明了Http:/16前面板創(chuàng)建規(guī)范布局圖形用戶界面GUIGUI,即圖形用戶界
7、面,是指采用圖形方式顯示的用戶操作界面GUI分為桌面GUI和工業(yè)GUI。桌面GUI,主要提供給個人在辦公室、私人實驗室或其他個人計算環(huán)境下使用;工業(yè)GUI,使用場合是與儀器設(shè)備相關(guān),實現(xiàn)工業(yè)測試測量、嵌入式控制、設(shè)計典型應(yīng)用環(huán)境Http:/17前面板創(chuàng)建規(guī)范布局關(guān)于GUI的幾點布局規(guī)范 工業(yè)GUI VI中主VI面板顯示最大化工業(yè)GUI常作為監(jiān)視和控制工業(yè)設(shè)備的專門接口,不希望提供可視的操作系統(tǒng)接入,以避免用戶訪問與應(yīng)用無關(guān)的資源。因此,對于工業(yè)GUI VI,應(yīng)該將主VI面板最大化。大多數(shù)工業(yè)GUI VI都會隨PC啟動而自動運行,并且主VI面板會占據(jù)整個屏幕。該功能是通過設(shè)置“窗口運行時最大化”
8、屬性來實現(xiàn)的,可通過“文件VI屬性”選取,然后從“類別”中選擇“窗口運行時位置”,在位置選項中選擇“最大化”。Http:/18前面板創(chuàng)建規(guī)范布局 正確設(shè)置正確設(shè)置GUI VIGUI VI分辨率分辨率在某一個分辨率下開發(fā)的程序,在另一個分辨率下運行時,如果顯示分辨率增加,前面板的一些附加部分會顯示出來,這就有可能暴露了在開發(fā)過程中需要對用戶隱藏的控件部分。因此,如果不想讓用戶看見這些控件,就要保證控件對用戶是不可見的。Http:/19前面板創(chuàng)建規(guī)范布局 GUI VI面板中對話框設(shè)置和使用對話框VI前面板的顯示應(yīng)該居中并且小于全屏尺寸,這樣既可以讓用戶很容易識別出它們是對話框,還可以在面板打開時總
9、出現(xiàn)在屏幕的中央。一般可以通過VI屬性中“窗口運行時位置”中設(shè)置屬性為窗口中心來實現(xiàn)。與此同時,對話框VI也必須注意分辨率的設(shè)置問題,而且還應(yīng)考慮幾個對話框同步打開時的情況。Http:/20前面板創(chuàng)建規(guī)范布局 工業(yè)工業(yè)GUI GUI 自定義對話框自定義對話框VIVILabVIEW用戶可以根據(jù)具體需求自定義對話框。自定義對話框VI對桌面GUI和工業(yè)GUI都是適用的。對于桌面GUI而言,從“文件VI屬性窗口外觀”中設(shè)置對話框的窗口外觀屬性、面板背景顏色、模式行為及其他屬性,選擇一個與操作系統(tǒng)對話框類似的對話框,盡量保持與操作系統(tǒng)對話框的一致。對于工業(yè)GUI,需要較大的面板、控件和文本,3D風格的控
10、件會經(jīng)常用在工業(yè)GUI的界面設(shè)計中,并且還要根據(jù)重要性來調(diào)節(jié)工業(yè)GUI的大小和位置。Http:/21前面板創(chuàng)建規(guī)范布局桌面GUI和工業(yè)GUI的區(qū)別示例Http:/22前面板創(chuàng)建規(guī)范布局關(guān)于GUI VI還有幾點值得提醒 在滿足應(yīng)用需求前提下,界面盡可能簡潔,不要重疊控件,也不能因為控件多而出現(xiàn)界面重疊的現(xiàn)象 適度隱藏開發(fā)界面上所有調(diào)試按鈕工具欄,特別是為程序添加一個停止按鈕。不要使用開發(fā)界面提供的中止運行按鈕,可以用一個停止控件來退出需要關(guān)閉的程序 給完成的GUI設(shè)計放上一個圖標Http:/23前面板創(chuàng)建規(guī)范布局子VI對于子VI面板上的控件、文本基本上采用默認的外觀,簡單明了,方便判斷其是否為子
11、VI即可Http:/24前面板創(chuàng)建規(guī)范配色關(guān)于顏色的搭配,有幾個重要的原則 總體協(xié)調(diào),局部對比總體協(xié)調(diào),局部對比設(shè)計一個LabVIEW前面板,其整體的色調(diào)應(yīng)該是協(xié)調(diào)的,而局部或者小范圍內(nèi),可以使用一些亮色來形成對比。經(jīng)??吹揭恍〨UI的配色讓人感到不舒服,其存在的一個共同問題是顏色太多。所以,程序開發(fā)人員要謹慎地使用顏色。界面的配色就像穿衣時的顏色搭配一樣,總體上不要超過3種,否則會給人一種眼花繚亂的視覺。Http:/25前面板創(chuàng)建規(guī)范配色 相關(guān)控件采用同一種顏色,同一個應(yīng)用程序的所相關(guān)控件采用同一種顏色,同一個應(yīng)用程序的所有有VIVI界面,可采用一致的配色方案,一般子界面,可采用一致的配色方
12、案,一般子VIVI的面的面板和控件不需要配色板和控件不需要配色前面提到要對相關(guān)的控件進行歸類,突出層次感,對控件顏色的使用也是很好的歸類方式之一。同一個應(yīng)用程序中應(yīng)該保持一致的顏色主題,對于子VI的前面板就不需要顏色了,只需保持默認的外觀,有助于將其識別為子VI即可。Http:/26前面板創(chuàng)建規(guī)范配色 遵循通用的慣例遵循通用的慣例我們經(jīng)常使用的一些亮色,比如紅色、黃色、綠色,在使用中盡量遵循工業(yè)標準的一些規(guī)范,比如說紅色表示警告,用來表示一些非常緊急的情況,黃色用來引起注意,綠色表示整個工作是非常正常的狀態(tài)。Http:/27前面板創(chuàng)建規(guī)范配色 黑、白色是經(jīng)典配色黑、白色是經(jīng)典配色黑、白色是不會
13、過時最經(jīng)典的顏色,當打開一個VI的前面板,不知道如何下手設(shè)計時,首先可以將前面板的背景設(shè)置為全黑或者全白,然后根據(jù)個人的創(chuàng)意搭配一些局部的小的亮色,同樣也能設(shè)計出美觀的界面。Http:/28前面板創(chuàng)建規(guī)范配色 最重要的是對界面顏色的設(shè)計,必須建立在保最重要的是對界面顏色的設(shè)計,必須建立在保證應(yīng)用程序功能正確的基礎(chǔ)上證應(yīng)用程序功能正確的基礎(chǔ)上大多數(shù)LabVIEW應(yīng)用程序基本目的是測試、測量和控制,在關(guān)鍵的應(yīng)用需求得到滿足后,若時間允許,才會考慮配色方案的設(shè)計。Http:/29前面板創(chuàng)建規(guī)范幫助信息幫助信息主要是指為了幫助新手而提供的一些說明文檔。任何描述結(jié)構(gòu)、組件、系統(tǒng)操作、應(yīng)用程序及源代碼的文
14、件都稱為說明文檔。說明文檔的具體內(nèi)容因應(yīng)用類型、開發(fā)人員、用戶的不同而相異。前面板的說明文檔一般包括控件標簽、描述、提示條和自由標簽Http:/30前面板創(chuàng)建規(guī)范幫助信息說明文檔的通用規(guī)范 盡量減少在前面板中使用說明文檔盡量減少在前面板中使用說明文檔直觀的前面板一般是圖形化設(shè)計的,而不是文本式描述的。因而,無論是用戶還是程序開發(fā)者,都不想在前面板看到太多的文本式描述。相比之下,通俗易懂的按鈕、控件、圖標和圖片,則會更受歡迎。因此,應(yīng)該避免在標簽和控件中加入太多的文本。Http:/31前面板創(chuàng)建規(guī)范幫助信息 創(chuàng)建直觀、明了的創(chuàng)建直觀、明了的GUIGUI來減少文本的使用來減少文本的使用在創(chuàng)建GUI
15、時,對于不可避免的文檔說明,盡量使用Help菜單或標簽為Help的按鈕。還可以根據(jù)要求從LabVIEW載入幫助信息,如在線文檔、LabVIEW Context Help窗口、在外部文檔或編寫的幫助文件內(nèi)創(chuàng)建用戶手冊或幫助標題。Http:/32前面板創(chuàng)建規(guī)范幫助信息特別提醒特別提醒對于一個大項目的開發(fā),往往是一個團隊的工作,團隊每位開發(fā)人員可能會在自己的任務(wù)VI中為同事留下注釋文本,幫助理解和閱讀程序。對于這些文本,在整個開發(fā)任務(wù)結(jié)束時,是應(yīng)該刪掉的。Http:/33前面板創(chuàng)建規(guī)范幫助信息說明文檔撰寫應(yīng)該注意的事項 對于同一個應(yīng)用程序,應(yīng)該采用一致的字體,可對于同一個應(yīng)用程序,應(yīng)該采用一致的字體
16、,可以通過改變尺寸、粗細和顏色來達到多種文本樣式以通過改變尺寸、粗細和顏色來達到多種文本樣式通常,應(yīng)用程序需要多種類型文本來區(qū)分不同類型的數(shù)據(jù)和事件。比如,通常在工業(yè)GUI內(nèi),會用大號粗體來顯示重要數(shù)據(jù)或者標題,對那些報警、警告之類的重要信息,則會采用強對比的顏色,此時應(yīng)該注意到,太多的文本類型會使整個界面顯得雜亂。Http:/34前面板創(chuàng)建規(guī)范幫助信息 同一個應(yīng)用程序,不同的文本樣式最好不要超同一個應(yīng)用程序,不同的文本樣式最好不要超過過3 3種,否則界面就會變得難以分辨且分散用戶的種,否則界面就會變得難以分辨且分散用戶的注意力注意力前面講到關(guān)于控件的歸類,對類似的控件、標簽盡量使用一致的文本
17、樣式,這樣既有層次感,又減少了文本樣式的使用。選擇一致的文本樣式既可以節(jié)省開發(fā)時間,又能提高程序的易用性。Http:/35前面板創(chuàng)建規(guī)范幫助信息 使用簡潔、直觀的控件標簽使用簡潔、直觀的控件標簽在LabVIEW的應(yīng)用程序中,有一種看起來最醒目的文本類型,即控件標簽。使用簡潔、直觀的控件標簽對程序的易用性是很重要的。另外,盡量為每個代表物理參數(shù)的控件附加上默認值和單位。當需要使用很長的描述或者GUI標簽的設(shè)計與控件標簽不同時,盡量使用標題。如果通過標簽還不能將對象的性質(zhì)表述清楚,那就需要輸入一兩行的描述性文本,也可以是具有描述性短語的提示條,當鼠標光標放在控件上時,提示條就會顯示簡略的描述。Ht
18、tp:/36前面板創(chuàng)建規(guī)范幫助信息 子子VIVI的說明文檔采用默認值為宜的說明文檔采用默認值為宜子VI的說明文檔一般使用默認值即可。除了商用子VI,如儀器驅(qū)動和開發(fā)工具箱,其所有的控件和指示器應(yīng)該是粗體的,而在附加的默認值和單位則是普通文本。而工業(yè)GUI,根據(jù)其應(yīng)用場合,一般需要采用較大的文本來顯示命令按鈕和重要數(shù)據(jù),文本的顏色也應(yīng)該和背景色有很高的對比度。對于多平臺應(yīng)用程序,需要在標簽和對象之間留下額外的空間。Http:/37背面板創(chuàng)建規(guī)范 布局 連線 數(shù)據(jù)流 程序注釋 Http:/38背面板創(chuàng)建規(guī)范布局背面板上顯示的是程序框圖,雖然不像前面板的控件那樣直接與用戶交互,但是良好的背面板布局,
19、對于程序的可讀性是很重要的LabVIEW作為圖形化系統(tǒng)設(shè)計編程語言,應(yīng)當考慮將源代碼控制在一屏能顯示的范圍內(nèi)Http:/39背面板創(chuàng)建規(guī)范布局在背面板布局時,應(yīng)當遵循以下一些規(guī)范 不要給程序框圖著色界面的背景色和每個結(jié)構(gòu)的子界面都默認為白色,數(shù)據(jù)流向非常容易識別。對象盡量布局緊湊,但同時對象不能靠得太近從而引起對象和連線重疊。盡量縮小程序框圖大小使之能在一個屏幕顯示出來。在某些情況下,比如說某些復雜的程序包含很多個并行循環(huán),要滿足這個限定非常困難。在這種情況下,調(diào)整程序框圖,或者將一些循環(huán)變成子VI來減小所占的背面板空間,使背面板僅在一個方向上滑動。Http:/40背面板創(chuàng)建規(guī)范布局 采用從上
20、至下和自下而上相結(jié)合的方法,來構(gòu)采用從上至下和自下而上相結(jié)合的方法,來構(gòu)建多層次結(jié)構(gòu)關(guān)系建多層次結(jié)構(gòu)關(guān)系VIVIVI的層次結(jié)構(gòu)可以通過選擇“查看VI層次結(jié)構(gòu)”來查看。窗口的工具條包括VI Lib、全局變量和自定義類型,只顯示自己提供的用戶VI。通常的幾何形狀包括直線型和圓角型。除了非常簡單的應(yīng)用程序外,VI層次結(jié)構(gòu)中在頂層VI之下應(yīng)包含多行子VI。Http:/41背面板創(chuàng)建規(guī)范布局 應(yīng)用程序可采用大量的數(shù)值屬性節(jié)點來控制應(yīng)用程序可采用大量的數(shù)值屬性節(jié)點來控制GUIGUI行為行為許多屬性節(jié)點的讀/寫操作都是由GUI事件觸發(fā)的。因此,事件結(jié)構(gòu)是理想的處理屬性節(jié)點結(jié)構(gòu)。因為事件結(jié)構(gòu)為每個事件分支分配
21、一個單獨的子程序,一個事件分支的程序不會跑到其他事件分支。然而,多事件分支需要許多個相同的屬性節(jié)點,其值因每次讀/寫操作而不同。將這些普通的屬性節(jié)點模塊化為子VI,通過控件引用和屬性值傳遞到子VI中,每個子VI程序代表在內(nèi)存中同一屬性節(jié)點的備份,這減小了內(nèi)存使用和程序復雜性。Http:/42背面板創(chuàng)建規(guī)范布局 創(chuàng)建可見子創(chuàng)建可見子VIVI可為程序開發(fā)節(jié)省背面板空間可為程序開發(fā)節(jié)省背面板空間子VI非常有用,因為相對于一個大型程序來說,它易于開發(fā)、測試、調(diào)試、維護和代碼重用。因而,子VI也為程序開發(fā)中節(jié)省了可觀的背面板空間。總之,如果同一函數(shù)、屬性節(jié)點、程序被多次調(diào)用,將這些重復代碼換成子VI將使
22、程序開發(fā)變得簡單。Http:/43背面板創(chuàng)建規(guī)范布局 記住為每個子記住為每個子VIVI創(chuàng)建一個有含義的圖標和相應(yīng)創(chuàng)建一個有含義的圖標和相應(yīng)的描述的描述圖標和描述信息能幫助在調(diào)用這些子VI的程序時,可通過幫助窗口的文字識別這些子VI。這些描述可以促使程序設(shè)計人員進行內(nèi)聚性測試:如果程序設(shè)計人員不能通過兩到三句話總結(jié)子VI的功能,那么子VI可能包含了太多的子代碼。Http:/44背面板創(chuàng)建規(guī)范連線在布線規(guī)則上,LabVIEW編程人員應(yīng)該遵循一些基本原則,主要包括: 盡量使程序中彎折線最少、不要形成扭結(jié)和圈 保持并行連線之間的間隔 不要遮擋連線和節(jié)點、避免重疊程序框中的對象Http:/45背面板創(chuàng)建
23、規(guī)范連線 LabVIEWLabVIEW編程中有自動和手動布線兩種方式來連編程中有自動和手動布線兩種方式來連線和清除連線線和清除連線自動方式優(yōu)先考慮水平接線端,并且以多余的曲線為代價來避免對象重疊。為了使彎折線最少,必須采用手動方式進行程序連線。此外,在現(xiàn)有的連線上,右擊選擇“整理連線”,會自動減少扭結(jié)、圈和彎折線。Http:/46背面板創(chuàng)建規(guī)范連線 隧道連線通過結(jié)構(gòu)左側(cè)邊界進入結(jié)構(gòu),并從結(jié)隧道連線通過結(jié)構(gòu)左側(cè)邊界進入結(jié)構(gòu),并從結(jié)構(gòu)的右側(cè)邊界穿過結(jié)構(gòu)構(gòu)的右側(cè)邊界穿過結(jié)構(gòu)不要讓隧道在結(jié)構(gòu)的頂部或底部穿過,同樣如果結(jié)構(gòu)內(nèi)部未使用到也不要讓連線穿過結(jié)構(gòu)。Http:/47背面板創(chuàng)建規(guī)范連線 避免在程序框
24、圖中重疊連線和節(jié)點避免在程序框圖中重疊連線和節(jié)點將偶爾交叉的連線改為橫向和縱向,有時能很好地解決這些問題。例如,通常位于循環(huán)結(jié)構(gòu)的左下腳的周期端子,必須連接到右上方的位置。而許多其他的數(shù)據(jù)流連線,需要經(jīng)由隧道或移位寄存器在水平方向穿過整個結(jié)構(gòu),如錯誤簇就是一個典型例子。此外,不要將連線和一個對象或節(jié)點重疊,因為連線在函數(shù)或子VI下面流動會被誤認為是節(jié)點的輸入和輸出,從而影響程序可讀性。Http:/48背面板創(chuàng)建規(guī)范連線 切勿使用局部變量或全局變量來作為一種減少切勿使用局部變量或全局變量來作為一種減少連線的方法連線的方法變量增加處理開銷、內(nèi)存使用和程序的復雜性。此外,使用變量破壞了LabVIEW
25、數(shù)據(jù)流原則,掩蓋了實際的數(shù)據(jù)來源。當變量從程序的多個位置讀/寫時,就難以確定哪個在實際影響數(shù)據(jù)值。當使用連線時,很容易追蹤到數(shù)據(jù)唯一的源終端。Http:/49背面板創(chuàng)建規(guī)范連線 將沒有連線的前面板控件在程序框圖上放在一起,將沒有連線的前面板控件在程序框圖上放在一起,程序開發(fā)人員就能非常容易找到程序開發(fā)人員就能非常容易找到布爾控件設(shè)置為觸發(fā)動作后,控件自身不能自動重置。如果接線端的控件與事件結(jié)構(gòu)中的注冊事件相關(guān),將控件的接線端放在事件結(jié)構(gòu)中,這能保證接線端的值,能夠在事件每次發(fā)生時被程序正確讀取。對于那些與事件結(jié)構(gòu)無關(guān)的而且沒有連線的接線端,只需將其簡單地放置在程序框圖主結(jié)構(gòu)的左邊。Http:/
26、50背面板創(chuàng)建規(guī)范連線 使用簇來組織相關(guān)數(shù)據(jù),減少連線的數(shù)量使用簇來組織相關(guān)數(shù)據(jù),減少連線的數(shù)量若能夠減少面板中的連線,程序的可讀性將得到很大的提高。所以,通常使用簇來組織相關(guān)數(shù)據(jù),減少連線的數(shù)量。在框圖的任何一個地方,如果涉及許多相互關(guān)聯(lián)的數(shù)據(jù),可以用簇來將其替換掉,并且這樣做能方便地將數(shù)據(jù)傳遞到子VI中。但要特別提醒,簇中的元素必須是相關(guān)的,或是有相同的目的地。Http:/51背面板創(chuàng)建規(guī)范數(shù)據(jù)流數(shù)據(jù)流編程是LabVIEW區(qū)別于其他文本編程語言的顯著特征之一。所謂數(shù)據(jù)流,指在LabVIEW中,數(shù)據(jù)沿著連線,從源端流向終端;程序框圖中,一個節(jié)點只有在其所有的輸入端都接收到數(shù)據(jù)后才會執(zhí)行;執(zhí)行
27、完畢后,數(shù)據(jù)再接著從其輸出端沿著數(shù)據(jù)流方向流向下一個節(jié)點。Http:/52背面板創(chuàng)建規(guī)范數(shù)據(jù)流數(shù)據(jù)流編程應(yīng)該遵循以下一些基本原則 數(shù)據(jù)流總是從左流到右除采用反饋節(jié)點和順序局部變量編程外,LabVIEW數(shù)據(jù)流都是沿著連線從左端流向右端的。反饋節(jié)點和順序局部變量均是LabVIEW中自帶的結(jié)構(gòu),但有違背數(shù)據(jù)流流向的原則。然而正確使用反饋節(jié)點,相比移位寄存器來說,是能夠降低混亂連線的。順序局部變量只與層疊順序結(jié)構(gòu)相關(guān),在LabVIEW編程中應(yīng)該盡量避免使用。Http:/53背面板創(chuàng)建規(guī)范數(shù)據(jù)流 避免出現(xiàn)數(shù)據(jù)類型強制轉(zhuǎn)換避免出現(xiàn)數(shù)據(jù)類型強制轉(zhuǎn)換為避免在數(shù)據(jù)傳輸過程中數(shù)據(jù)類型的不匹配,可以選擇在節(jié)點的端子
28、上右擊直接創(chuàng)建輸入控件、顯示控件或常量。通過右擊需要創(chuàng)建控件的節(jié)點連線端,在菜單中選擇“創(chuàng)建常量/輸入控件/顯示控件”,與連線段數(shù)據(jù)類型相符的常量、輸入控件或顯示控件就創(chuàng)建完成了。Http:/54背面板創(chuàng)建規(guī)范數(shù)據(jù)流 除非必須,盡量避免使用順序結(jié)構(gòu),特別是能除非必須,盡量避免使用順序結(jié)構(gòu),特別是能夠并行執(zhí)行的函數(shù),不要使用順序結(jié)構(gòu)去替換它夠并行執(zhí)行的函數(shù),不要使用順序結(jié)構(gòu)去替換它將程序編寫為能夠獨立并行的函數(shù),能夠有效提高程序的運行效率。Http:/55背面板創(chuàng)建規(guī)范數(shù)據(jù)流 避免使用超過避免使用超過3 3層的嵌套結(jié)構(gòu)層的嵌套結(jié)構(gòu)嵌套結(jié)構(gòu)就是放置在結(jié)構(gòu)體中的結(jié)構(gòu)體。超過兩層或三層的嵌套結(jié)構(gòu)會掩蓋
29、底層的邏輯和數(shù)據(jù)流信息。一般來講,過多使用嵌套結(jié)構(gòu)、過度使用順序結(jié)構(gòu)是一種有失規(guī)范的設(shè)計模式。最大化地使用數(shù)據(jù)流方式和最小化地使用順序結(jié)構(gòu),能夠有效地避免過多的嵌套,提高程序可讀性,降低錯誤發(fā)生的概率。Http:/56背面板創(chuàng)建規(guī)范程序注釋程序注釋其實也是一種說明文檔,只不過是對背面板源代碼的說明。程序的注釋文檔與源代碼的可讀性、可維護性和可用性直接相關(guān),是非常重要的。LabVIEW的源代碼是圖形化的,本身就沒有漢字,而文檔增加了圖形源代碼的可讀性。Http:/57背面板創(chuàng)建規(guī)范程序注釋圖示是一個不帶任何說明文檔的程序,其主要功能是對測量儀器進行配置。示例中沒有任何的標簽或注釋,對數(shù)據(jù)的信息比
30、較少,整個程序的可讀性很差,維護起來也很不方便。Http:/58背面板創(chuàng)建規(guī)范程序注釋針對上圖進行了改進后。首先,各個控件的標簽進行可見的設(shè)置;其次,移位寄存器左端連線進行了標注,并且每個條件結(jié)構(gòu)中也進行了注釋。修改后的程序框圖相比之前清晰了很多,可以很容易看出每個控件的意義和每個條件結(jié)構(gòu)實現(xiàn)的功能。Http:/59背面板創(chuàng)建規(guī)范程序注釋再進一步完善。主要包括直觀的標簽、枚舉條件結(jié)構(gòu)、使用按名稱捆綁。程序中采用定義儀器名稱的枚舉型變量替換掉“儀器類型”數(shù)值型變量,因此,儀器名稱也出現(xiàn)在了條件結(jié)構(gòu)的選擇區(qū)域里。由于使用了枚舉型和條件結(jié)構(gòu),節(jié)省了大量結(jié)構(gòu)中的注釋,儀器的信息可以從條件選擇區(qū)域中直觀
31、考察。Http:/60VI圖標和連接器創(chuàng)建規(guī)范 圖標 連接器 Http:/61VI圖標和連接器創(chuàng)建規(guī)范圖標圖標是LabVIEW源代碼中的重要特點之一,主要包含各種圖形和文本的組合顯示,用于子VI的識別,提高其可讀性,有助于對主程序框圖說明一個成功的圖標是對一個VI直觀的描述,一個圖標就能代表一個函數(shù)、一個程序在LabVIEW中,圖標是通過圖標編輯器工具畫出來的,或者是現(xiàn)有的圖片文件,或者是應(yīng)用程序中復制出來的Http:/62VI圖標和連接器創(chuàng)建規(guī)范圖標關(guān)于圖標創(chuàng)建的一些規(guī)范 制作通俗、易懂、有特定意義圖標制作通俗、易懂、有特定意義圖標由于LabVIEW中圖標都是3232像素的,所以,圖標里的內(nèi)
32、容必須小而精煉,要在有限的空間內(nèi),制作出清晰易讀且有意義的圖片和字體。正如日常生活中見到的一些符號,如公共標志或是交通信號等,都是圖形和文字結(jié)合得很好的例子。LabVIEW圖標制作時也應(yīng)該具有通俗、易懂、有特定意義。Http:/63VI圖標和連接器創(chuàng)建規(guī)范圖標 在圖標內(nèi)容小且精煉的前提下,圖標中的文本就在圖標內(nèi)容小且精煉的前提下,圖標中的文本就必須統(tǒng)一字體格式要求必須統(tǒng)一字體格式要求一般對于大多數(shù)的文本推薦使用8磅或10磅的字體。LabVIEW中應(yīng)用程序默認的字體是13磅,如果使用默認字體,那么圖標中每行就只能寫5個字母,這就占了圖標高度的1/3,這種字體只適用于包含少量大寫字母的圖標。而將所
33、有的文本設(shè)為8磅或10磅的小字體,將會使圖標上的文本在大小合適、清晰可辨的前提下數(shù)量最大化。假如使用8磅小字體的大寫字母,就能在每行寫入7個字母,而且只會占用圖標高度的1/4。Http:/64VI圖標和連接器創(chuàng)建規(guī)范圖標 好圖標應(yīng)該是圖片、顏色和文本合成的整體符號好圖標應(yīng)該是圖片、顏色和文本合成的整體符號為了描述更多的內(nèi)容,用4行文本將圖標填滿,也是不可取的方式。因此,推薦使用8磅或10磅小字體,因為在使用相同文本的前提下,將為圖片和空白區(qū)域提供更多的空間。幾種不同圖標字體大寫字母效果的對比Http:/65VI圖標和連接器創(chuàng)建規(guī)范圖標 關(guān)于圖標設(shè)計與開發(fā)時間的平衡問題關(guān)于圖標設(shè)計與開發(fā)時間的平衡問題總原則是:對于重用率很高的VI,如產(chǎn)品的開發(fā)工具包或儀器的驅(qū)動,就值得投入大量的時間和精力去設(shè)計一個構(gòu)思精妙的圖標;如果要在短期內(nèi)開發(fā)大量的VI,并且這些VI沒有重復使用的可能,那就無須花大量的精力在圖標的設(shè)計上,而是可以用快捷有效的方法設(shè)計出一個有特定含義的圖標即可。Http:/6
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 個人二手車合同樣本
- 鄉(xiāng)鎮(zhèn)企業(yè)員工勞務(wù)合同樣本
- 一完整合同樣本購房
- 債務(wù)置換合同標準文本
- 烏魯木齊吊車買賣合同樣本
- 企業(yè)反擔保合同樣本
- 代理做賬合同樣本
- vi系統(tǒng)合同樣本
- 中藥代理合同標準文本
- 二手房購房合同標準文本有抵押
- 《營養(yǎng)與肥胖》課件
- 綠色生態(tài)中小學生校服
- 全宋詞目錄完整版本
- 支付寶解除賬戶支付申請書
- 桂林電子科技大學國防科技泄密事件報告表
- 單原子催化劑
- 特許經(jīng)營管理手冊范本(餐飲)
- 手術(shù)室護理實踐指南之術(shù)中保溫(手術(shù)科培訓課件)術(shù)中低體溫的預(yù)防
- 市場管理能力筆試測試題
- 學習探究診斷 化學 必修二
- 八年級道德與法治下冊 (公民基本義務(wù)) 課件
評論
0/150
提交評論