LabVIEW 助力優(yōu)化軟件開發(fā)實踐和源代碼控制
作為一款系統(tǒng)設(shè)計軟件(LabVIEW可以提供搭建最先進、最具技術(shù)挑戰(zhàn)性的系統(tǒng)所需的所有工程元素
本文引用地址:http://2s4d.com/article/161520.htm隨著工程應(yīng)用的挑戰(zhàn)性和復(fù)雜度日益增加(軟件工程的概念也融入了系統(tǒng)開發(fā)之中。所謂軟件工程就是可以保證軟件的可擴展性和可維護性的工程開發(fā)實踐。正確實施的軟件工程可以提高應(yīng)用程序的全局質(zhì)量(提高開發(fā)者的工作效率并且降低維護成本。在這篇文章中(可以學(xué)習(xí)到如何使用LabVIEW內(nèi)建專用的特性和工具來完成最佳的軟件開發(fā)實踐和程序源代碼控制管理。
源代碼控制管理
源代碼控制管理是軟件工程最基本的環(huán)節(jié)之一(因為它決定了如何對一個應(yīng)用程序的依賴關(guān)系進行存儲、組織管理以及在開發(fā)者之間共享,甚至?xí)苯佑绊懗绦虻牟渴稹_@樣的過程(source code control-SCC)及相應(yīng)的管理工具會在整個軟件生命周期中完成這些任務(wù),以減少人工完成這些任務(wù)可能帶來的損失和風(fēng)險。但是,如果沒有一個合理的計劃以及應(yīng)用架構(gòu)來保證項目自身的緊湊性和代碼的模塊化特點,只依靠軟件來管理,則效果實在有限,所以需要對相關(guān)的概念進行學(xué)習(xí)并通過NI認(rèn)證的LabVIEW系統(tǒng)架構(gòu)師考試。
對任何一個項目來說,無論項目復(fù)雜程度高低或團隊的人數(shù)多少,源代碼控制都是重要且必要的。目前,很多的供應(yīng)商都提供了各種不同的源代碼控制工具,它們都可以用來追蹤、存儲和管理LabVIEW的文件。
這些工具中可以既有免費且易用的解決方案(例如Subversion),也有商業(yè)級的、具有完整生命周期管理的解決方案(例如Perforce)。
代碼的重復(fù)利用對提高工作效率是非常有效的方法,但是它要求非常嚴(yán)格的源代碼管理措施。一些高級的工具,例如VI程序包管理器,可以幫助用戶有效地管理和創(chuàng)建可重復(fù)使用的庫文件或者VI程序包,還可以智能追蹤庫文件的版本變化、所需依賴關(guān)系變化以及該庫文件在多個LabVIEW版本之間的兼容性變化等。
應(yīng)用結(jié)構(gòu)化的開發(fā)方法
許多LabVIEW的程序員都經(jīng)歷過使用非結(jié)構(gòu)化開發(fā)方法所造成的不良后果,或者,至少受到過影響。一些程序框圖可以往任何一個方向進行滾動,一頁又一頁,沒有可辯識的標(biāo)志和足夠的連線的幫助,甚至可以讓人誤認(rèn)為那是一幅大都市的地圖。不幸的是,這樣的程序框圖往往又包含需要運行的代碼,所以如果有人接下了這樣的應(yīng)用程序,往往會覺得它令人難以添加功能和修正錯誤。除了程序運行風(fēng)險高以及內(nèi)含不可預(yù)知的程序缺陷以外,這種程序的維護成本還很高。所以,當(dāng)你在接受程序任務(wù)的時候,如果對方告訴你“我們需要對代碼進行重整”,那你一定要將它看成一個警告。軟件工程和一個有序的可擴展的應(yīng)用程序架構(gòu),可以有效地幫助你避免這樣的風(fēng)險以及這些風(fēng)險帶來的損失。
典型的軟件工程是指一種人為管理的、有序的軟件開發(fā)方法,在開發(fā)過程之前就已經(jīng)有擬定的審核清單,以及在軟件生命周期的不同階段應(yīng)該完成的任務(wù),而這個開發(fā)實踐需要做到何種程度,以及需要哪些開發(fā)工具,則是由這個工程項目自身的特點來決定的。但是,有些要素卻是任何類型項目的開發(fā)都需要的。通常來說,前期的規(guī)劃、開發(fā)耗時的預(yù)計都是會提前計劃的,當(dāng)然,這些計劃同時也會增加時間和成本的消耗。
評論