原创 Flutter 容器盒子模型詳解

在網頁開發中,有盒子模型,號稱統一三端的 Flutter 也不例外,而且和 HTML 的盒子模型幾乎是一樣的,本篇文章通過簡單的例子說明一下 Flutter 的盒子模型,方便以後再做界面時可以更好的理解佈局。 在講 Flutter 的盒

原创 我的第一個 Flutter 應用之旅

參考官網的的開始使用,配置好開發環境即可進行 Flutter 開發了,當然開發前還是有必要了解一下 Dart 這門語言的,接下來涉及到與其他開發語言不太相同的地方會在文章裏提出來。本教程使用的 flutter 版本爲穩定版本 v2.0.6。

原创 Flutter 設置應用主題色和字體

App 開發過程中,肯定希望給用戶帶來一致的體驗,這其中最基礎的就是色調、字體保持一致。在 Flutter 中,可以設置全局的主題色調和字體,從而在其他頁面引用主色調和字體,實現頁面展示層面的一致。 Flutter 的主題色和字體可以在

原创 MongoDB 常用的十條指令

1. 顯示全部可用數據庫 > show dbs; 該命令將展示 mongo 的全部數據庫名稱,並列出來。 2. 切換數據庫 > use mydb; 該命令會選擇一個指定的數據庫,如果數據庫不存在,則會自動創建一個。但是需要注意,由於此時

原创 MongoDB 數據庫 Mac OS、Windows 及 Linux安裝指南

Mac OS安裝 Mac OS 安裝有兩種方式,手動安裝或使用 homebrew。 homebrew 安裝 在終端運行如下命令: $ brew install mongodb 手動安裝 從 MongoDB 官網下載最新穩定版MongoD

原创 MySQL數據表優化設計(七):範式和反範式數據庫設計說的是啥?

在數據庫設計規範中,範式和反範式經常被提到。瞭解範式的概念和原則對我們設計數據表很有幫助,然而,範式並不是完美的,在實際開發中,經常是依據範式設計,再根據實際業務情況加入反範式設計,形成混合模式。也就是實際上很少會有完全的範式設計或完全的

原创 MySQL 數據表優化設計(八):如何設計統計數據表?

有些時候,改進數據表查詢性能的最佳方式是在同一張數據表中冗餘一些繼承的數據。然而,有些時候需要新建完全獨立的統計或緩存數據表,尤其是在需要反覆查詢的需求情況下。如果業務允許一些時間上的誤差的話,那麼這種方式會更好。 緩存型數據表通常在統

原创 MySQL 數據表優化設計(二):數值字段類型如何選擇?

在MySQL 中有兩種數值類型,整型和實數(即帶有小數的數字)。整型可以通過 TINYINT、SMALLINT、MEDIUMINT、INT 或 BIGINT 表示,分別對應8bit、16bit、24bit、32bit 和64bit 的存儲

原创 MySQL 數據表優化設計(三):CHAR 和 VARCHAR 怎麼選?

MySQL 支持字符串的數據類型並不多,但是卻有多種變化形式。MySQL 5.0以後更是支持每一列字符串可以有自己的字符集以及排序規則,這使得數據表設計更爲複雜。本篇介紹字符類型的數據表字段 CHAR 和 VARCHAR 該如何選擇。

原创 MySQL數據表優化設計(四):利用枚舉節省存儲空間

枚舉在實際數據表使用中不太多,但是在某些場合卻是可以發揮更好的性能,例如使用枚舉替換有限的字符串值。需要注意的是枚舉的存儲結構有點特殊,本篇介紹枚舉的應用場合及優勢。 枚舉在 MySQL 中的存儲方式十分精簡,依據枚舉值的多少使用1-2

原创 MySQL 數據表優化設計(五):id 該如何選擇數據類型?

爲 id 列選擇一個好的數據類型非常重要,id 列會經常用於做比較(例如聯合查詢的條件),以及用於查找其他列。而且,id 也經常用於外鍵。因此,id 列的數據類型不僅僅關係自身數據表,也關係到與之關聯的其他數據表。因此,id 用何種數據類

原创 MySQL 數據表優化設計(六):常見的數據表設計誤區整理

雖然會有一些常規意義上的數據表錯誤設計和優秀設計原則,但是同樣也會有 MySQL 特定的一些情況,這會導致我們犯一些 MySQL 特定的錯誤。本篇討論常見的設計誤區。 誤區一:過多的數據列 MySQL 存儲引擎的 API 是按照行緩衝區

原创 MySQL 數據表優化設計(一):數據類型選擇

MySQL支持大量的數據類型,選擇正確的類型對性能十分關鍵。本篇介紹了MySQL 的數據類型選擇原則,可以根據這些基本的原則確定數據表字段的具體數據類型。 小而美 通常來說,儘可能使用佔用存儲空間小的數據類型來存儲數據。這類數據類型通常

原创 MySQL 高級特性(八):使用事件(Events)自動完成計劃任務

事件(Events) 是在 MySQL 5.1後引入的,有點類似操作系統的計劃任務(cron),但是週期性任務是內置在 MySQL 服務端執行的。可以指定單次或以一定的間隔執行 SQL 代碼。通常是將複雜的 SQL 語句使用存儲過程封裝好

原创 MySQL 高級特性(9):全文索引使用指南

在 MySQL 中,我們經常使用 WHERE 條件用於進行值的相等比較、範圍過濾。然而,我們也會使用關鍵字進行搜索,這個基於搜索值與其他值的相關性來進行過濾。MySQL全文檢索即用於這種場景。本篇將介紹如何使用全文檢索。 全文索引需要特