iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 14
0

寫程式最害怕的就是蟲蟲危機,錯誤遍佈整個應用程式卻無從定位,無從下手除蟲。今天文章想跟大家分享怎麼在低代碼平台上順利除蟲,讓開發的過程上少走些冤枉路。

好用小道具

  • 官方文件中的錯誤代碼解釋:

在按Preview( 在Mendix Studio上) 或 Run Locally (在Mendix Studio Pro上) 後,系統會在偵測到錯誤時丟出錯誤回報,這時可以在Error list上查看細節。

https://ithelp.ithome.com.tw/upload/images/20200928/20129530VKC74s6pW1.png

在Error list上可以循著錯誤回到的代碼到官方文件上找相應的代碼指示。
https://ithelp.ithome.com.tw/upload/images/20200928/20129530XJcS6tVXmT.png

例如: 錯誤代碼CE0488

https://ithelp.ithome.com.tw/upload/images/20200928/20129530LZWzVZKrFi.png

  • 問題討論平台(Forum):

不要錯過找人好好的資深工程師求救的機會,通常會出現的問題在討論區都有解答。

https://ithelp.ithome.com.tw/upload/images/20200928/201295304S1nXkgLgn.png

  • Google:

還沒聽說過嗎? 身為專業工程師的獨家技秘笈就是Google!!

https://ithelp.ithome.com.tw/upload/images/20200928/20129530oZ8tOSD9R2.jpg

開始除錯

哈哈,不管怎樣,該除的蟲還是要除。
不管是這樣?
https://ithelp.ithome.com.tw/upload/images/20200928/20129530b8GxtwfcPq.jpg

還是這樣?
https://ithelp.ithome.com.tw/upload/images/20200928/20129530eM9mlICWmN.jpg

我們在低代碼平台上也是需要好好維持程式的運行。

Microflows的蟲怎麼抓

首先我們要看microflows背後代表的程式碼(JavaScript),例如:

https://ithelp.ithome.com.tw/upload/images/20200928/20129530IMshkzclkJ.png

每個microflows都是一個類似函數(function)的存在,每一個microflows也都有自己的閉包(closure),照理說除錯應該可用我們平常寫程式的方式來找,但問題是Mendix平台上並沒有console.log()可以使用,也就是說出現錯誤時,我們沒有辦法直接把內容印出來看一看。
不過,Mendix上有一種debug功能可以使用。前往view,選擇Debug Windows,再來將包括Breakpoints, Debugger, Variables,如以下圖示這樣通通都開起來。

https://ithelp.ithome.com.tw/upload/images/20200928/20129530n3gwxy6aGH.png

https://ithelp.ithome.com.tw/upload/images/20200928/20129530szUuliOsgd.png

https://ithelp.ithome.com.tw/upload/images/20200928/20129530P8qyoLZKfK.png

https://ithelp.ithome.com.tw/upload/images/20200928/20129530VYxjiwz7ek.png

如此一來除蟲的視窗就開好了!
Mendix平台上主要有兩種除蟲方式,一種是local debug,另一種是remote debug

Local Debug

  1. 首先,在想要檢查的動作上按滑鼠右鍵,選擇Add breakpoint

https://ithelp.ithome.com.tw/upload/images/20200928/20129530JWQlUoLXtU.png

  1. 再來,點選畫面上方的Run Locally

https://ithelp.ithome.com.tw/upload/images/20200928/20129530Yun6bdkaqg.png

3.最後會看到類似的以下畫面

https://ithelp.ithome.com.tw/upload/images/20200928/201295309JTMvzylVd.png

Remote Debug

步驟與local debug相似,但在run 應用程式方面要選擇在雲端上run。

https://ithelp.ithome.com.tw/upload/images/20200928/20129530ktoZaG4CGL.png

總結,小心三日不除蟲,程式面目可憎。


上一篇
我只是想要好好地把資料刪除,有那麼難嗎?
下一篇
Mendix裡的XPath怎麼用?
系列文
Mendix從入門到了解,工程師和業務都要知道低代碼平台是什麼30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言