Авторизация
Забыли пароль? Введите ваш е-мейл адрес. Вы получите письмо на почту со ссылкой для восстановления пароля.
После регистрации вы сможете задавать вопросы и писать свои ответы, получая за это бонусы. Все остальные функции на сайте доступны без регистрации.
Вы должны войти или зарегистрироваться, чтобы добавить ответ и получить бонусы.
На языке программирования Go можно писать различные программы, включая веб-серверы, микросервисы, командные утилиты и многое другое. Вот некоторые примеры того, что можно написать на Go:
1. Простая программа «Hello, World!»:
«`go
package main
import «fmt»
func main() {
fmt.Println(«Hello, World!»)
}
«`
2. Веб-сервер:
«`go
package main
import (
«fmt»
«net/http»
)
func handler(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, «Hello, World!»)
}
func main() {
http.HandleFunc(«/», handler)
http.ListenAndServe(«:8080», nil)
}
«`
3. Командная утилита для копирования файлов:
«`go
package main
import (
«io»
«os»
)
func main() {
sourceFile, err := os.Open(«source.txt»)
if err != nil {
panic(err)
}
defer sourceFile.Close()
destinationFile, err := os.Create(«destination.txt»)
if err != nil {
panic(err)
}
defer destinationFile.Close()
_, err = io.Copy(destinationFile, sourceFile)
if err != nil {
panic(err)
}
}
«`
4. Микросервис для обработки HTTP-запросов:
«`go
package main
import (
«encoding/json»
«log»
«net/http»
)
type Response struct {
Message string `json:»message»`
}
func handler(w http.ResponseWriter, r *http.Request) {
response := Response{
Message: «Hello, World!»,
}
jsonResponse, err := json.Marshal(response)
if err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
return
}
w.Header().Set(«Content-Type», «application/json»)
w.Write(jsonResponse)
}
func main() {
http.HandleFunc(«/», handler)
log.Fatal(http.ListenAndServe(«:8080», nil))
}
«`
Это лишь некоторые примеры того, что можно написать на Go. Язык предоставляет множество возможностей для разработки различных типов программ.