Golang的執行過程

下圖是在Beego 項目路由設置 中看到的,關於 Go 代碼的執行過程如下圖:

通過逐行 import 包的執行流程,使用遞歸的方式,依次初始化包中的常量、變量和 init 函數。
在這裏插入圖片描述
知道這個有什麼用呢?如果遇到下面的情況:

A包的代碼必須在B包之前被執行,那麼導入 package 的順序就格外重要。真的存在這種情況嗎?