컴퓨터에서 기본적으로 바이트 단위로 데이터를 인식하게 됩니다. 즉 우리가 인식하는 문자가 아니라 숫자 개념으로 모든것을 가지고 인식을 하게 됩니다. 00010001 이렇다고 할까요? 그래서 이것들을 사람들이 알아들을수 있는 개념으로 변경하는것이 decoding, unmarshaling 이라고 합니다. 반대로 사람들이 알아들을수 있는것을 바이트로 변환하는것을 encoding, marshaling 이라고 합니다. golang에서는 이것을 encoding/json 패키지에서 담당을 하게 되는데 이것에 대해서 알아보도록 할게요. Marshal 구조체 같은 형태의 값을 byte 로 변환하는 작업을 합니다. json.Marshal에서 이것을 사용 가능합니다. type User struct { Name string ..
누가 뭐라해도... youtu.be/LJvEIjRBSDA
Go 언어는 제가 좋아하는 언어지만 여러가지 지원하지 않는 부분들 때문에 가끔 답답하기도 합니다. 이런 부분들 중에 한가지는 slice ( array ) 에 insert가 없습니다. 그래서 이 부분을 한번 만들어 보겠습니다. func insert(array []string, index int, element string) []string { result := append(array, element) copy(result[index+1:], result[index:]) result[index] = element return result } 처음보면 다소 이해가 안되게 만들어집니다. 만들어지는 부분을 보면 result에 일단 값을 넣어주고 copy를 이용하여 index의 위치보다 1개 이후로 값을 이동시킵니..
Go를 이용하여 아주 간단하게 루트(/)를 요청하면 응답이 갈 수 하는 코드 입니다. go-wrapper를 이용하여 구동만 시켜 주면 바로 서버가 됩니다. 1. HandleFunc 이용하기 package main import ( "net/http" ) func main() { http.HandleFunc("/", func(w http.ResponseWriter, req *http.Request) { w.Write([]byte("Hello World")) }) http.ListenAndServe(":5000", nil) } 2. http.Handle() 이용 package main import ( "net/http" ) func main() { http.Handle("/", new(testHandler))..
package main import ( "fmt" ) func main() { for i := 2; i
- Total
- Today
- Yesterday
- war
- Python
- nodejs
- go
- github
- Windows
- Spring
- ubuntu
- Xcode
- ios
- tomcat
- Linux
- Gradle
- enum
- CentOS
- intellij
- SWIFT
- docker
- cocoapods
- android
- windows10
- centos8
- php
- Java
- git
- rxswift
- MySQL
- Codable
- golang
- Kotlin
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |