? ????? Gin, Echo, Gorilla Mux, Beego, Revel, Fiber ? go-zero/rest ? 7?? ?? Go ? ?????? ?????. ??? ?? ??? ??? ?? ??? ?? ???? ???? ?????. ??? ?? ?? ??? "Hello, World!"? ?????. ?????.
1. ?
- ?? ??: ??? ????? ??? ?? ??(???, ????, ???? ???, JSON/XML ???).
- ?? ??:
package main import "github.com/gin-gonic/gin" func main() { router := gin.Default() router.GET("/hello", func(c *gin.Context) { c.JSON(200, gin.H{ "message": "Hello, world!", }) }) router.Run(":8080") }
2. ??
- ?? ??: ??, ???, ??? API.
- ?? ??:
package main import ( "net/http" "github.com/labstack/echo/v4" ) func main() { e := echo.New() e.GET("/hello", func(c echo.Context) error { return c.String(http.StatusOK, "Hello, World!") }) e.Start(":8080") }
3. ??? ??
- ?? ??: ??? ??? ??, ??? ?? ?? ? ??.
- ?? ??:
package main import ( "fmt" "net/http" "github.com/gorilla/mux" ) func main() { r := mux.NewRouter() r.HandleFunc("/hello", func(w http.ResponseWriter, r *http.Request) { fmt.Fprintln(w, "Hello, world!") }) http.ListenAndServe(":8080", r) }
4. ??
- ?? ??: ?? ??? ?? MVC ?????, ?? ??(???, ????, ORM).
- ?? ??:
package main import ( "github.com/astaxie/beego" ) type MainController struct { beego.Controller } func (c *MainController) Get() { c.Ctx.WriteString("Hello, world!") } func main() { beego.Router("/hello", &MainController{}) beego.Run(":8080") }
5. ??
- ?? ??: ???, ???? ? ??? ??? ???? ???? ?? ? ?? ?????.
- ?? ??:
package main import "github.com/revel/revel" func Hello() revel.Result { return revel.Text("Hello, world!") } func main() { revel.Get("/hello", Hello) revel.Run(":8080") }
6. ??
- ?? ??: Express.js? ???? ???, ???? ??? API.
- ?? ??:
package main import "github.com/gofiber/fiber/v2" func main() { app := fiber.New() app.Get("/hello", func(c *fiber.Ctx) error { return c.SendString("Hello, world!") }) app.Listen(":8080") }
7. ??/??
- ?? ??: ???? ???? ?? RESTful API ?????? ?? ???? ?????.
- ?? ??:
package main import ( "net/http" "github.com/zeromicro/go-zero/rest" ) func main() { engine := rest.NewEngine() defer engine.Stop() engine.AddRoute(rest.Route{ Method: http.MethodGet, Path: "/hello", Handler: helloHandler, }) engine.Start() } func helloHandler(w http.ResponseWriter, r *http.Request) { w.Write([]byte("Hello, world!")) }
????? ???:
? ?????? ??? ???? ???? ??? ???? ??? ????. (??: ?? ?? ??? ???? ????. ?? ?? ?? ???? ??? ?? ??? ? ????.)
?? | ? | ?? | ??? Mux | Beego | Revel | Fiber | go - ??/??? |
---|---|---|---|---|---|---|---|
?? | ? ????? | ? ????? | ? ????? | MVC ????? | ? ?? ????? | ? ????? | ? ????? |
??? ?? | ?? ???? ???? ???? | ?? ???? ???? ???? | ?? ??? ??? ?? | ?? ??? ?? ?? | ?? ??? ?? ?? | ?? ???? ??? | ?? ???? ???? ???? |
???? ?? | ?? ?? | ?? ?? | ? ?? ???? ????? ?? | ?? ?? | ?? ?? | ?? ?? | ?? ?? |
??? ?? | ? ???? ?? | ? ???? ??? ?? ?? ?? ??? ?? | ? ???? ?? | ?? ??? ?? ?? | ?? ??? ?? ?? | ? ???? ?? | ? ?? ?? |
ORM | ? ???? ?? | ? ???? ?? | ? ???? ?? | ?? ??- ORM | ?? ?? ORM | ? ???? ?? | ?? ??? |
WebSocket ?? | ? ???? ?? | ? ???? ?? | ? ?? ?? | ? ???? ?? | ?? ?? | ? ???? ?? | ? ???? ?? |
?? ???? | ?? ??? ?? ?? | ?? ?? ??? ?? | ?? ?? ??? ?? | ?? ?? ??? ?? | ?? ?? ??? ?? | ?? ?? ??? ?? | ?? ?? ??? ?? ?? |
?? | ?? | ?? | ????? ? | ?? | ?? | ?? | ?? |
???? ?? | ?? ??? ???? ?? | ?? ??? ???? ?? | ?? ??? ???? ?? | ?? ??? ???? ?? | ?? ??? ???? ?? | ?? ???? ???? ?? | ?? ??? ???? ?? |
?? ?? | ?? | ?? | ?? | ?? | ?? | ?? | ?? |
?? ?? | ?? | ?? | ? | ?? ? | ?? | ?? | ?? |
GitHub ? | 42.7? | 20.3? | 17.2? | 12.5k | 12.2k | 12.4k | 7.5k |
??? ???? ?? ?? | ?? ?? | ?? ?? | ?? ?? | ?? ?? | ?? ?? | ?? ?? | ?? ?? |
?? ?? ??? | ?? ?? | ? ?? ???? ????? ?? | ? ?? ????? ????? ????? | ?? ?? | ? ?? ???? ????? ?? | ? ?? ???? ????? ?? | ? ?? ???? ????? ?? |
??? ???? | ?? ?? | ?? ?? | ? ?? ???? ????? ?? | ?? ?? | ?? ?? | ?? ?? | ?? ?? |
??? ?? | ?? ?? | ?? ?? | ?? ?? | ?? ?? | ?? ?? | ?? ?? | ? ???? ?? |
??? ?? | ?? ?? | ? ?? ?? | ? ???? ?? | ?? ??? | ? ???? ?? | ? ???? ?? | ? ???? ?? ?? |
?? | ?? | ?? | ?? | ?? | ?? | ?? | ?? |
??? ??? ?? | ?? ?? | ?? ?? | ?? ?? | ?? ?? | ?? ?? | ?? ?? | ?? ?? |
??? | ???? | ???? | ???? | ???? | ?? ?? | ?? ?? | ?? ?? |
?? ??? | ?? | ?? | ?? | ?? ium | ?? | ?? | ?? |
Leapcell: Go ? ???? ?? ??
Leapcell? Go ??? ??? ??? ???? ????? ?????. ?? ????? ??? ??, ??? ???? ?? ??(???), ?? ???, ???? ??? ??, ??? ??? ? ??? ?? ????.
??? ??? Leapcell ???? Twitter ??? ?????. http://m.miracleart.cn/link/7884effb9452a6d7a7a79499ef854afd
? ??? ? ??? ?? Go ????? ??? ?? ?????. ??? ??? PHP ??? ????? ?? ?? ??? ?????!

? AI ??

Undress AI Tool
??? ???? ??

Undresser.AI Undress
???? ?? ??? ??? ?? AI ?? ?

AI Clothes Remover
???? ?? ???? ??? AI ?????.

Clothoff.io
AI ? ???

Video Face Swap
??? ??? AI ?? ?? ??? ???? ?? ???? ??? ?? ????!

?? ??

??? ??

???++7.3.1
???? ?? ?? ?? ???

SublimeText3 ??? ??
??? ??, ???? ?? ????.

???? 13.0.1 ???
??? PHP ?? ?? ??

???? CS6
??? ? ?? ??

SublimeText3 Mac ??
? ??? ?? ?? ?????(SublimeText3)

??? ??











GO? ????? ????? ??? ????? ??????. ?? ??? ?? ?????. 1. ? ??? ?? : Linux ????? ?? ??? ?????? ??? ??? ? ????. 2. ?? ??? ??? ?? ???? ???? ?? ??? ????? ?? ??? ?? ?? ??? ?? ??? ? ? ????. 3. ?? ?? ???? ?? : ?? ????? ??? ??? ?? ??? ??? ???? ??????. 4. ??? ?? ??? : ??? ???? ????? ?? ?????? ? ???? ? ? ??? ??? ? ??? ?????. ??? ??? CLI ??, ???? ??? ? ?? ????? ????? ????? ????? ?? ??? ??? ???? ????? ???? ??? ?????.

GO?? ?? ??? ???? MAKE ??? ?? ?? ?? ? ??????. ?? ??? ???? ??? ??? ???? ?? ? ???? ?? ? ?? ??? ???? ?? ? ???? ??? ??? ? ????. ?? ??, ch : = make (Chanint, 10)? ?? 10 ?? ?? ?? ??? ??? ?? ??? ????. ???? ?? ??? ??, ??? ???? ?? ???? ??? ???? ???? ?? ? ??? ??? ????? ?????. ??? ??? ?, ?? : 1. ?? ??? ??? ??? ?? ??? ??? ??? ?? ?????????. 2. ??? ??? ??? ??? ??? ???? ?? ???????. 3. ??? chanstruct {} ??? ?? ?? ? ? ????. ???? ?????? ??? ?, ??? ??? ?? ? ???? ?????.

goensuresmemorysafety? ?? MemolemanucameThrougatomaticgargarbagecollection, nopointerarithmetic, safeconcurrency, andruntimechecks.first, go'sgarbagecollectoricallyally reclaimsunusedmemory, ??, itdisallowspointe, itdisallowspointe ??

GO? ??? ?????? ??????. C? ?? ??? ? ??? ??? ?? ??? ?? ??? ? ??? ???? ?? ?????. 1. ?? ? ???? ?? ???? Go? OS ???? ?? ? ????? ????? ??? ??, ??, ?? ??? ? ???? ?? ?????. OS.ReadFile? ???? ? ?? ??? ?? ??? ?????. ?? ???? ?? ?? ?? ??? ???? ? ?????. 2. ???? ?? ???? OS/EXEC ???? exec.command ??? ?? ??? ????, ??? ????, ?? ??? ????, ?? ? ?? ??? ?????? ?? ??, ??? ?? ? ?? ????? ??? ???? ????? ?? ? ? ????. 3. ???? ? ??? ???? Net ???? TCP/UDP ?????, DNS ?? ? ?? ??? ?????.

GO ???? ?? ??? ????? ?? ???? ????? ?? ? ???? ???? ??? ??? ???? ????????. ?? ???? ??? ?, ???? ? ??? ?? ??? ???? ?? ?? ? ? ????. 1. func (rrectangle) area () int? ?? ? ???? ???? rect.area ()? ?? ?? ??????. 2. ??? ?? ???? ?? func (r*???) setwidth (...)? ?? ??? ???? ???? ???? ?? ??? ???? ?????. 3. ??? ?? ? ?, ?? ??? ??? ?? ? ???, ?? ??? ?? ?? ?? ? ???. 4. Go? Getter/Setter? ??? ???? ??????.

GO?? ?????? ??? ???? ?? ??? ???? ?????. ?????? ??? ???? ???? ??? ??? ???? ?? ??? ?????? ???? ??????. ?? ??, speak () ???? ?? ? ??? ?????? ???? ???? ???? ?? ??? ???? ?? ? ? ????. ?????? ???? ??, ?? ?? ?? ?? ? ????? ?? ????? ???? ? ?????. ?????? ???? ????? ???? ???? ??? ??? ???? ??? ?? ??? ???? ?? ?????? ?????. ???? ?? ???? ??, ??, ?? ?????? ?? ???? ??? ? ?? ???? ?????. ?? ??, ?? ?? ??? ?? ??? ??? ???? ??? Anno? ??? ? ????.

Go Language?? ??? ??? ?? ??? ??? ? ?? ??? ?? ?????. 1.Strings.contains ()? ???? ?? ???? ???? ??? ??? ???? ?? ?? ???? ? ?????. 2.strings.index ()? ???? ?? ???? ???? ??? ?? ? ??? ???? ??? -1? ?????. 3.strings.replaceall ()? ?? ???? ?? ??? ?? ? ? ??? Strings.replace ()? ?? ?? ?? ?? ? ? ????. 4.Len () ??? ???? ??? ??? ?? ? ????? ?? ??? ?? ? ?? ??? ???? ?????? ???????. ??? ??? ?? ??? ???, ??? ?? ?? ? ??? ??? ?? ?????? ?????.

TheGoiopackageprovidesinterfaceslikeReaderandWritertohandleI/Ooperationsuniformlyacrosssources.1.io.Reader'sReadmethodenablesreadingfromvarioussourcessuchasfilesorHTTPresponses.2.io.Writer'sWritemethodfacilitateswritingtodestinationslikestandardoutpu
