25.2. 프로그램언어 고(Go)의 UDP 기반 통신

프로그램언어 고(Go)의 UDP 서버 구축 Go언어로 UDP 서버를 구축하는 방법을 최대한 쉽고 자세하게 설명드리겠습니다. package main import ( “net” “fmt” ) func main() { // UDP 서버를 위한 주소 정의 serverAddr, err := net.ResolveUDPAddr(“udp”, “:9999”) if err != nil { fmt.Println(err) return } // UDP LISTENER 생성 serverConn, err := net.ListenUDP(“udp”, serverAddr) if err != … Read more

25.1. 프로그램언어 고(Go)의 TCP 기반 통신

프로그램언어 고(Go)의 TCP 서버 구축 Go언어로 TCP 서버를 구축하는 방법을 최대한 친절하고 쉽게 설명드리겠습니다. package main import ( “bufio” “fmt” “net” ) func main() { // TCP 서버를 8080 포트로 listen ln, err := net.Listen(“tcp”, “:8080”) if err != nil { panic(err) } // 클라이언트 접속을 기다림 for { conn, err := ln.Accept() if err … Read more

24.3. 프로그램언어 고(Go)의 웹 서버 보안

프로그램언어 고(Go)에서의 SSL/TLS 적용방법 프로그램언어 고(Go)에서 SSL/TLS를 적용하는 방법에 대해 최대한 친절하고 쉽게 설명드리겠습니다. 먼저, 고(Go)언어에서는 기본적으로 crypto/tls 패키지를 제공하고 있습니다. 이 패키지를 사용하면 TLS 연결을 만들고, HTTPS 서버/클라이언트를 구현할 수 있습니다. 서버 측의 TLS 설정은 다음과 같이 할 수 있습니다. import ( “crypto/tls” ) // TLS 설정 tlsConfig := &tls.Config{ MinVersion: tls.VersionTLS12, CurvePreferences: []tls.CurveID{tls.CurveP521, … Read more

24.2. 프로그램언어 고(Go)의 라우팅과 핸들러

프로그램언어 고(Go)에서의 기본적인 라우트 생성 고(Go)언어에서 기본적인 라우트를 생성하는 방법을 쉽고 상세하게 설명드리겠습니다. package main import ( “fmt” “net/http” ) func main() { http.HandleFunc(“/”, home) http.ListenAndServe(“:8080”, nil) } func home(w http.ResponseWriter, r *http.Request) { fmt.Fprintf(w, “Welcome!”) } 위의 코드는 고(Go)언어에서 가장 기본적인 라우트를 생성하는 예제입니다. main 함수에서 http.HandleFunc를 사용하여 라우트를 생성합니다. “/” 라우트에 home 핸들러 … Read more

24.1. 프로그램언어 고(Go)의 HTTP 서버 설정

프로그램언어 고(Go)의 HTTP 서버 기본 설정 방법 Go언어의 HTTP 서버를 기본 설정하는 방법에 대해 아래와 같이 설명드리겠습니다. 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) } 위의 코드는 Go언어로 가장 기본적인 HTTP 서버를 설정하는 예제입니다. 主要なポイントは以下の3つです。 1. net/http 패키지를 … Read more

23.3. 프로그램언어 고(Go)의 파일 권한 변경

프로그램언어 고(Go)에서의 파일 읽기 권한 설정 Go언어에서 파일 읽기를 위한 권한 설정은 os 패키지의 OpenFile 함수를 사용합니다. 이 함수에는 파일명과 읽기 모드를 지정할 수 있습니다. 예를 들어 읽기 전용 모드로 파일을 열면 다음과 같이 코드를 작성할 수 있습니다. f, err := os.OpenFile(“text.txt”, os.O_RDONLY, 0644) 여기서 os.O_RDONLY는 읽기 전용 모드를, 0644는 파일의 권한을 의미합니다. Linux에서 파일 … Read more

23.2. 프로그램언어 고(Go)의 디렉토리 생성과 삭제

프로그램언어 고(Go)에서의 디렉토리 생성 방법 Go언어에서 디렉토리를 생성하는 방법을 설명드리겠습니다. package main import “os” func main() { // 디렉토리 경로 지정 path := “./tmp/test” // 디렉토리 생성 err := os.MkdirAll(path, os.ModePerm) if err != nil { panic(err) } // 생성된 디렉토리 정보 출력 info, err := os.Stat(path) if err != nil { panic(err) } println(info.Name(), … Read more

23.1. 프로그램언어 고(Go)의 파일 읽기와 쓰기

프로그램언어 고(Go)의 텍스트 파일 읽기 고(Go) 프로그램 언어의 텍스트 파일 읽기에 대해 설명드리겠습니다. 고(Go)에서 텍스트 파일 읽기를 위해서는 os 패키지의 Open 함수를 이용하여 파일을 열고, bufio 패키지의 NewReader 함수로 파일을 읽을 수 있습니다. f, err := os.Open(“data.txt”) if err != nil { return err } defer f.Close() r := bufio.NewReader(f) for { line, err := … Read more

22.3. 프로그램언어 고(Go)의 수학 함수 라이브러리

프로그램언어 고(Go)에서의 산술 연산 기술 프로그램언어 고(Go)에서는 다음과 같은 산술 연산을 지원합니다. package main import “fmt” func main() { // 덧셈 var a int = 10 var b int = 5 var sum int = a + b fmt.Println(sum) // 15 // 뺄셈 var c int = 10 var d int = 5 var sub … Read more

22.2. 프로그램언어 고(Go)의 날짜와 시간 라이브러리

프로그램언어 고(Go)에서의 현재 날짜 및 시간 가져오기 Go언어에서 현재 날짜와 시간을 가져오는 방법을 설명드리겠습니다. package main import ( “fmt” “time” ) func main() { // 현재 시간 가져오기 now := time.Now() // 년, 월, 일 출력 fmt.Println(now.Year(), now.Month(), now.Day()) // 시, 분, 초 출력 fmt.Println(now.Hour(), now.Minute(), now.Second()) } Go언어의 time 패키지에는 현재 시스템의 시간 정보를 … Read more