GoLang...

이우철·2025년 6월 8일

Go(Golang)는 구글에서 개발한 프로그래밍 언어로, 빠른 성능과 간결한 문법을 제공.

🚀장점 :

  1. 간결하고 쉬운 문법

복잡한 문법 없이 직관적으로 코드를 작성.

  1. 빠른 실행 속도

실행 속도가 빠름.

  1. 강력한 동시성 지원

goroutine을 통해 효율적인 멀티쓰레드 프로그래밍이 가능.

  1. 자동 메모리 관리

가비지 컬렉션을 지원하여 메모리 누수를 방지.

  1. 강력한 표준 라이브러리

네트워크, 파일 처리, 암호화 등 다양한 기능을 기본적으로 제공.

  1. 모듈화 및 패키지 시스템

코드 재사용이 용이하며, 패키지 관리가 간편.

  • Go는 특히 웹 서버 개발, 클라우드 서비스, 네트워크 프로그래밍 등에 적합하며, 빠른 성능과 안정성을 원하는 프로젝트에서 많이 사용

  • 설치 :
    https://golang.org 접속 > Download > window용 파일 다운로드

다웅받은 파일을 실행하여 기본값으로 설치
설치 후 cmd 실행하여
go version 으로 설치 확인

vsc extension에서 GO 설치

  • test 폴더 만들어

  • cd test

  • go mod init test

    ...

package test

import (
	"log"

	"github.com/gofiber/fiber/v2"
)

func main() {

	app := fiber.New()
	app.Get("/", func(c *fiber.Ctx) error {
		return c.JSON(&fiber.Map{"Hello": "World"})
	})

	log.Fatal(app.Listen(":3000"))
}

  • api 추가
    package main

import (
"log"
"os"

"github.com/gofiber/fiber/v2"
"github.com/joho/godotenv"

)

func main() {

if err := godotenv.Load(); err != nil {
	log.Fatal("Error loading .env file")
}
// 환경 볂수에서 포트 가져오기
port := os.Getenv("PORT")
if port == "" {
	log.Fatal("PORT is not set in the .env file")
	port = "3000"
}

app := fiber.New()
app.Get("/", func(c *fiber.Ctx) error {
	return c.JSON(&fiber.Map{"Hello": "World"})
})

app.Get("/user/:id", func(c *fiber.Ctx) error {
	return c.JSON(&fiber.Map{"id": c.Params("id")})
})

app.Get("/user/:id/:name", func(c *fiber.Ctx) error {
	return c.JSON(&fiber.Map{"id": c.Params("id"), "name": c.Params("name")})
})

log.Fatal(app.Listen(":" + port))

}

profile
개발 정리 공간 - 업무일때도 있고, 공부일때도 있고...

0개의 댓글