Groovy使用場景

我們正在做的一個項目用到了,這是一個機器學習的平臺,平臺裏面可以接入各種機器學習的算法,目前已經支持30來種算法。每個算法有各種各樣的參數,爲了提高用戶友好性,讓用戶使用起來更方便,用戶在頁面上“填入”,“選擇”的參數值跟我們實際提交到集羣執行的參數往往不一樣,比如:用戶選擇一個算法的輸入表table1,而實際上我們提交給後臺集羣的時候需要加上當前project的名字(假如是project1):project1.table1。
又比如有些算法參數是不需要用戶輸入的,比如一個算法的輸出表,具體的表名用戶其實不關心,他只想我們把最後的結果告訴他,這時候我們需要給他自動生成輸出表名的參數。

這樣就需要一個【“參數轉換”】的過程,這些參數轉換邏輯雖然不復雜,但是它們有一個重要的特徵:不可枚舉。因此我們採用了【Groovy腳本來描述這個轉換算法】。而且我們機器學習平臺將來的目標是【允許用戶上傳自己編寫的算法,這個轉換邏輯的可配置化就顯得更必要了。】

都是因爲我們有一個叫洛笛的牛逼同事

//
groovy的生態中有gradle(安卓在使用), grails. gant, spock, Geb. Griffion。從生態上已經很全面了。最近又可以用groovy來開發Android了。如楊飛所答,有java的地方就可以有groovy。只是同時java也在進化,類庫等以java爲主。不會發生直接替代。但是groovy的應用也會越來越廣泛。

//
我們用來做規則引擎、流程引擎,可以做動態腳本環境,尤其是那些不需要發佈又經常變更的場合

參考知乎:

https://www.zhihu.com/question/23737708/answer/45175040

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章