使用No Code 工具需要的基礎知識(一) - 資料格式、變數及資料結構
近來No Code 工具興起,從不會寫程式就能建立網站的Webflow、自動化流程的Parabola到開發APP的Xano, retool等,這些工具讓使用者能夠不寫程式、快速地解決需求。但由於所有的No Code 工具的基礎都是將寫程式的過程視覺化,初學者在入門No Code 工具的過程中,經常會因為缺乏對程式世界的基礎知識,甚至也不知道要用什麼關鍵字去Google搜尋,而無法很快上手使用這些工具。
我們想運用過去從程式小白進化成No Code 開發者的血淚經驗 ,整理成中文網路世界上第一篇No Code 入門基礎知識系列文,讓新手可以用最快的速度入門、運用No Code 工具更快、更輕鬆地完成自己的工作!
資料格式
不同的No Code 工具支援的資料儲存格式可能會略有差異,這裏我們會介紹最通用的7種資料格式,讓大家能快速入門,以下將以Xano (No Code 後端開發工具)常用的資料格式為範例:
1. Text 文字
通常用於儲存名字、描述跟網址,值得注意的是數字123如果是用文字格式做儲存,會被視為文字,沒辦法做加減乘除的運算喔。
2. Integer 整數
通常用儲存整數,如:年齡、信用卡號碼。
3. Decimal 浮點數
通常用於可能出現小數點的數字,如:百分比、訂單金額,只要有可能出現小數點數字的欄位都建議使用Decimal。
4. Boolean 布林
通常用於儲存作為條件判斷用的 true / false 值。
5. Timestamp 時間戳記
用 Unix timestamp 格式儲存,可以被輕易轉換成各種日期時間格式。那什麼是時間戳記呢? 請參考以下Youtils 時間戳轉換工具的說明:
Unix時間戳(Unix timestamp)是一種時間表示方式,定義為從格林威治時間1970年01月01日00時00分00秒起到現在的總秒數。時間戳的特性是,不管在哪個時區,當下算出的時間戳都會是同樣的數值。這點對於應用程式非常有用,不管是要追蹤時間、計算時間差或是對日期進行排序,都可以利用時間戳來進行。在將時間戳轉換為時間時,也可以根據時區計算出當地的時間,是一種在程式界應用已經相當廣泛的一種技術。
6. Enum 列舉
可儲存事先定義好的可使用的值,如系統角色欄位可設定為Enum格式,只接受管理員、一般用戶、付費用戶等事先定義好的角色。
7. Object 物件
物件是初學者比較不容易理解的抽象概念,基本的組成為Key(鍵/屬性)跟Value(值),一個物件裡面通常會有多組Key/Value,以下為物件的範例:
Object = {key1 : value1, key2 : value2, key3 : value3 }
以生活中的概念來打比方,如果車子是個物件,車子的顏色、型號、重量就是它的屬性Key,對應的值就是它的Value。由於每個Key 對應的值可能是不同的資料格式,Key1(顏色)對應的值可能是白色,以文字格式做儲存,Key2(重量)對應的值可能是100,以整數或浮點數格式做儲存。因此在一開始定義物件時,就需要依據後續資料處理的需求,將各個Key對應的Value的資料格式定義清楚,避免後續開發的困擾。
變數 Variable
你可以想像變數是一個箱子,你可以在這個箱子裡暫時存放文字、整數、物件、浮點數、布林值、陣列、時間戳記等資料,並且你可以為這個變數命名,好的命名規則可以幫助你在維護你的No Code 專案時更加容易。
舉一個變數常見的使用情境- 計數,假設我們要計算訂單的總體營收,因此我們先建立了一個初始值為0的變數 total_revenue = 0,當在計算逐筆訂單的營收,我們會把計算結果再加入total_revenue的變數裡 total_revenue = total_revenue + 100,最後計算完成時,total_revenue 變數裡的數值就會是訂單的總體營收。
資料結構 Array
陣列是在No Code 世界裡最常使用到的資料結構類型,在現實世界中,資料經常不是單一出現的。舉例來說,訂單編號在訂單的資料裡面,通常不會只有一筆,而是成千、上萬筆,這時我們就可以把所有的訂單編號放進一個陣列裡,而陣列就像是一個從0開始有Index順序編號的櫃子,被放入陣列中的資料,只要知道他的index編號,就能取得對應的的資料。
每一種資料格式的資料都能被放進陣列裡,可以有物件的陣列、文字的陣列、時間戳記的陣列等等,原則上一個陣列裡面的資料格式要統一,不然後續資料處理很容易搞混喔。