목록고 (4)
Connecting
파일 입출력 거의 모든 프로그래밍 언어에서 데이터를 읽기/쓰기 작업 기능이 필요합니다. Go 언어 역시 이러한 기능을 제공하며, 다음 예제를 통해서 확인해 보겠습니다. package main import ( f "fmt" "io/ioutil" "os" ) func main() { CurrentDirectory() data, err := ioutil.ReadFile("hello.txt") check(err) f.Print(string(data)) } func check(e error) { if e != nil { f.Println("파일을 읽을 수 없습니다.") f.Println("Error Code : ", e) } } func CurrentDirectory() { path, _ := os.Getwd()..
구조체 Go의 structs는 필드들로 이루어진 타입을 갖는 컬렉션입니다. 레코드를 구성하기 위해 데이터들을 그룹핑 하는데 유용합니다. 다음 예제를 통해 구조체 선언을 확인해 보세요. type person struct { name string age int } 위 person 구조체 타입은 name과 age라는 필드를 가지고 있습니다. 같은 자료형을 가지고 있다면 다음과 같이 작성할 수 도 있습니다. type person struct { phone, age int } 구조체를 선언하고 필드명을 초기화 할 수 있으며, 생략된 필드는 0을 가지게 됩니다. 기본적으로 . 을 사용해서 구조체 필드에 접근하여 사용하며, &를 사용하면 구조체 포인터를 사용할 수 있습니다. 다음 예제를 통해 구조체 연습을 진행하도록..
클로저 / 재귀 / 지연호출 클로저 사용하기 Go 언어에서의 클로저란 익명 함수(Anonymous functions)와 비슷한 개념으로 이름 없이 한줄로 함수를 정의하고 싶을때 유용합니다. 이를 통해 함수 안에서 함수를 선언 및 정의할 수 있고, 바깥쪽 함수에 선언된 변수에도 접근할 수도 있습니다. 아래 예제를 통해 클로저 사용 예제를 확인하시길 바랍니다. package main import f "fmt" func main() { f.Println("클로저") sum := func(a int, b int) int { return a + b } result := sum(1, 2) f.Println(result) f.Println("-----------------") cal := voltage() f.Pri..
함수 함수(function)란 어떠한 입력을 통해서 어떠한 출력 매개변수로 맵핑하는 독립적인 코드 영역입니다. Go 언어에서는 main 함수가 기본이지만 필요에 따라서 여러 함수 선언을 통해서 다양한 역할을 담당하는 함수를 선언하여 사용할 수 있습니다. 이렇게 기능별 함수를 선언하면 해당 역할을 담당하는 함수를 재사용 할 수 있으며, 코드를 간결하게 작성할 수 있습니다. 다음 예제는 함수를 사용한 기본 예제입니다. package main import f "fmt" func hello() { f.println("Hello") } func main() { hello() world() } func world() { f.println("world!") } 일부 언어의 경우 함수를 선언하기 위해서는 정의한 함수를..