golang包
阿新 • • 發佈:2020-09-14
一、簡介
1、到目前為止,演示的golang程式都只有一個檔案,檔案裡包含一個main函式和幾個其他的函式,在實際中,這種把所有原始碼編寫在一個檔案的方法並不好用,以這種方式編寫,程式碼的重用和維護都會很困難,而包(Package)解決了這樣的問題
2、包用於組織golang原始碼,提供了更好的可重用性與可讀性,由於包提供了程式碼的封裝,因此使得golang應用程式易於維護
3、例如,正在開發一個golang影象處理程式,它提供了影象的裁剪、銳化、模糊和彩色增強等功能,一種組織程式的方式就是根據不同的特性,把程式碼放到不同的包中,比如裁剪可以是一個單獨的包,而銳化是另一個包,這種方式的優點是,由於彩色增強可能需要一些銳化的功能,因此彩色增強的程式碼只需要簡單地匯入銳化功能的包,就可以使用銳化的功能了,這樣的方式使得程式碼易於重用
二、main函式和main包
1、所有可執行的golang程式都必須包含一個main函式,這個函式是程式執行的入口,main函式應該放置於main包中
2、package packagename這行程式碼指定了某一原始檔屬於一個包,它應該放在每一個原始檔的第一行
3、在golang工作區的src資料夾中建立一個geometry資料夾 => 在geometry資料夾中建立一個geometry.go檔案 => 在golang程式中建立一個main函式和main包
// geometry.go package main import "fmt" func main() { fmt.Println("Geometrical shape properties") } /* package main這一行指定該檔案屬於main包 import "packagename"語句用於匯入一個已存在的包,這裡匯入了fmt包,包內含有Println方法 接下來是main函式,它會列印Geometrical shape properties */
4、執行go install geometry,編譯上述程式,該命令會在geometry資料夾內搜尋擁有main函式的檔案,在這裡,它找到了geometry.go,接下來,它編譯併產生一個名為geometry(在 windows 下是 geometry.exe)的二進位制檔案,該二進位制檔案放置於工作區的bin資料夾
5、工作區的目錄結構
-src
-geometry
gemometry.go
-bin
geometry.exe