康耐視Visionpro-容器類工具ToolBlock-C# Advanced Script規(guī)范腳本-兩種腳本執(zhí)行思路

1、簡單、明了、清晰:
代碼寫出來重點是給人看的,因此簡單、明了、清晰是第一要務!代碼的可閱讀性要高于
代碼的性能(除非你的代碼以后不需要維護,那你寫成啥樣都無所謂)。簡單、明了、清晰的代碼
也利于后期維護,尤其是當你寫的代碼交給他人去維護的時候,請不要禍害別人!
2、精簡
代碼越長越難看懂,這個大家應該都深有體會,一個?1000?多行的函數(shù)和一個最多?100?行的
函數(shù)哪個好看?所以盡量將把函數(shù)寫的精簡。而且代碼越長越容易出錯,沒有用的代碼,變量
等一定要及時的清理掉!功能類似或者重復的代碼應盡可能提煉成一個函數(shù)。
3、保持第三方代碼風格
公司內(nèi)部代碼風格必須做到統(tǒng)一,方便維護,如果有第三方代碼(比如?HAL?庫、FATFS、emWIN、各種?OS、TGFX、Lwip、各種?Lib?等),出現(xiàn)風格沖突,應用程序還是以公司代碼風
格編寫,與第三方代碼的接口程序允許兩種風格并存,切記不要去修改第三方代碼風格。
4、減少封裝
我們做嵌入式教學源碼的時候,切忌對第三方代碼庫進行再封裝,不要為了讓第三方代碼
和我們的風格統(tǒng)一,而去修改第三方源碼風格,或者重新寫一套接口函數(shù),以便和我們代碼風
格統(tǒng)一。
為了統(tǒng)一而再次封裝第三方代碼會對我們的教學產(chǎn)生不利影響,會給初學者帶來困惑,比
如?ST?官方的?Cube?庫里面就為了兼容自己的代碼風格,對?FreeRTOS?的?API?函數(shù)做了封裝,結(jié)
果很多客戶就問我們?yōu)楹?ST?官方所調(diào)用的任務創(chuàng)建函數(shù)和我們的?FreeRTOS?教程不同!他們之
間有什么區(qū)別?他們之間沒有任何區(qū)別,只是?ST?對其做了一個簡單的封裝,結(jié)果給學習者帶
來了困惑!如果不做這個封裝的話雖然影響到了代碼風格的統(tǒng)一,但是卻給學習者減少了困惑,
提高了學習效率,而提高客戶的學習效率是我們的第一宗旨!
本章主要使用ToolBlock-C# Advanced Script腳本來編寫程序,也是大多數(shù)使用康耐視Visionpro現(xiàn)場工程師使用的?Advanced Script腳本,
第一步驟:打開:


第二步驟:

第三步驟:打開的默認界面如圖:

VisionPro通過”多態(tài)”技術(shù)實現(xiàn)腳本功能,VisionPro 的每一Job、toolGroup、toolBlock對象都含有一個接口對象,用戶通過重寫接口方法實現(xiàn)自定義拓展功能。以toolBlock為例, CogToolBlockAdvancedScriptBase接口中定義了子類中必須實現(xiàn)的函數(shù),當toolBlock執(zhí)行到某一節(jié)點(工具準備運行、工具運行完成等)時會調(diào)用相應的接口函數(shù)實現(xiàn)用戶指定的功能。
第一種思路

第二種思路:

