本文將依 Options API、Composition API、<script setup> 的順序,先條列式三者的特徵,後面再附上最基本的程式碼比較其語法差異。
Options API
- 使用 <script> 標籤
- 比較舊
- 效能或安全性與 Composition API 並無差異
- 較不適合 TypeScript
- 大型元件用 Options API 較難管理
- 程式碼的可重用性較差
本文將依 Options API、Composition API、<script setup> 的順序,先條列式三者的特徵,後面再附上最基本的程式碼比較其語法差異。
妥善建立索引可提升資料庫的讀取效能。在 MongoDB 的 CLI 當中可使用下列指令建立索引。
# 建立排序規則為 ASC 的索引
db.collection_name.createIndex({field: 1})
# 建立排序規則為 DESC 的索引
db.collection_name.createIndex({field: -1})
上述指令可建立一般索引。如果建立索引的目的是提升查找文本(text)的效能,
則可考慮建立文本索引(Text Index),指令如下:
# 透過文本索引讀取資料
db.collection_name.find({$text: {$search: "string"}})
以英文句子「I am running in the park」為例,
am、the 等單獨存在時無法表達有實際意義的詞彙稱為 Stop Words(停用詞)。
文本索引主要參考 Stop Words 以外的詞與構成,而非儲存資料當中的一字一句。
根據文本索引篩選資料時,篩選的依據是傳入 Filter 當中的詞幹(Stem)。
以 running 為例,其詞幹為 run,而 runs 也可能被視為相同的詞幹。
總而言之,善用停用詞與詞幹的特性,都是有助於節省儲存空間或計算資源的方法。
覆蓋查詢(Covered Queries)係指在資料庫執行查詢時,
僅使用索引資料或索引結構就能回應該查詢,無需查詢實際的資料。
覆蓋查詢的優點是減少磁碟與記憶體的 I/O 操作,可提高查詢的執行速度和效率。
特別適用於大型資料集和複雜的查詢,可以減少系統的負載和資源消耗。
要實現覆蓋查詢,通常需要適當的資料庫設計與索引策略。
開發人員需要仔細考慮查詢中使用的欄位和索引的設置,
以確保索引能涵蓋所需的資料,進而實現覆蓋查詢的效果。
$ touch Dockerfile
$ docker build .
若說 int, rune, byte, bool 等儲存單一值的型別為核心型別,
能儲存多個值的陣列(array)、切片(slice)、映射表(map)就可稱為集合型別。
// var 陣列名稱 [陣列容量]儲存型別
var array0 [10]int
fmt.Println(array0) // [0 0 0 0 0 0 0 0 0 0]
// 已宣告陣列 = [陣列容量]儲存型別{值1, 值2, 值3, ...}
array0 = [10]int{
1, 2, 3, 4, 5,
}
fmt.Println(array0) // [1 2 3 4 5 0 0 0 0 0]