Piawaian industri untuk rangka kerja Go termasuk: Gin: rangka kerja web ringan dan berprestasi tinggi. Echo: Rangka kerja web yang pantas, berskala dan fleksibel dengan keupayaan API RESTful. GORM: Rangka kerja ORM (Pemetaan Perkaitan Objek) moden untuk Go.
Standard Industri untuk Rangka Kerja Go
Dalam dunia Go, pemilihan rangka kerja yang betul adalah penting untuk membina aplikasi yang mantap dan boleh diselenggara. Artikel ini akan meneroka beberapa rangka kerja standard industri dalam Go dan menggambarkan kelebihannya melalui contoh praktikal.
Pengenalan: Gin ialah rangka kerja web yang ringan dan berprestasi tinggi yang terkenal dengan kesederhanaan, kelajuan dan kemudahan penggunaannya.
Kes praktikal: Buat pelayan HTTP mudah:
package main import ( "fmt" "net/http" "github.com/gin-gonic/gin" ) func main() { r := gin.Default() r.GET("/", func(c *gin.Context) { c.JSON(http.StatusOK, gin.H{"message": "Hello, world!"}) }) if err := r.Run(); err != nil { fmt.Println(err) } }
Pengenalan: Echo ialah rangka kerja web yang pantas, berskala dan fleksibel dengan API RESTful, perisian tengah, templat dan lain-lain
Kes praktikal: Menulis API RESTful menggunakan Echo:
package main import ( "github.com/labstack/echo" ) func main() { e := echo.New() e.GET("/users", func(c echo.Context) error { return c.JSON(http.StatusOK, map[string]string{"name": "John", "age": "30"}) }) e.POST("/users", func(c echo.Context) error { // 获取 POST body 中的数据并处理 return c.NoContent(http.StatusCreated) }) e.Logger.Fatal(e.Start(":8080")) }
Pengenalan: GORM ialah rangka kerja ORM (Pemetaan Perkaitan Objek) moden untuk Go, yang menyediakan pangkalan data abstrak yang tinggi.
Kes praktikal: Gunakan GORM untuk menyambung ke model pangkalan data:
package main import ( "fmt" "log" "github.com/jinzhu/gorm" _ "github.com/jinzhu/gorm/dialects/mysql" // mysql 数据库驱动 ) type User struct { ID uint `gorm:"primary_key"` Name string `gorm:"type:varchar(30)"` Age int `gorm:"default:0"` } func main() { db, err := gorm.Open("mysql", "user:password@/db-name") if err != nil { log.Fatal(err) } defer db.Close() db.AutoMigrate(&User{}) user := &User{Name: "John", Age: 30} if err := db.Create(user).Error; err != nil { log.Fatal(err) } fmt.Println("User successfully created") }
Atas ialah kandungan terperinci Piawaian industri untuk rangka kerja golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!