특정 기능을 위해 만든 여러 문장을 묶어서 실행하는 코드 블록 단위.프로그램의 특정 기능들을 기능별로 묶어 구현해놓은 것.func 함수명 (매개변수들) (반환형들){ 처리 구문}호출되는 함수가 꼭 호출하는 함수 앞에 있을 필요
컬렉션이란? 배열(Array)
함수 안에서 익명 함수를 정의해서 해당 익명함수의 바깥쪽 함수에 선언한 변수에도 접근할 수 있는 함수를 의미.함수안에서 바깥쪽 변수를 하용하기 위해서는, 매개변수를 이용해 Pass by Vaule형식 또는 Pass by Reference형식으로 사용해야함.하지만 익명함
하나 이상의 변수를 묶어서 새로운 자료형을 정의하는 Custom data type필드들의 묶음이며, 필드들의 컨테이너 역할을 함.Golang에서의 클래스는 Custom Type을 정의하는 구조체로 표현됨.전통적인 객체지향의 클래스가 필드와 메서드를 가지는것과는 다르게
구조체는 같은 속성의 필드의 집합체이고, 메소드는 함수 중에서도 구조체의 속성을 기능적으로 수행하는 특별한 함수.예를들어 구조체로원의 정보사각형의 정보가 있고 이 구조체를 이용해 넓이를 구하는 메소드가있다고 생각해보자,기능은 같지만(넓이를 구한다) 두 구조체의 필드가
defer는 함수 앞에 쓰이는 키워드!특정 함수를 감싸고 있는 함수 내에서 가장 나중에, 끝나기 직전에 실행하게 하는 용법.Java의 try~finally 구문과 유사한 기능!블록이 필요하지 않음.특정위치나 형식이 필요하지 않음.단지 함수앞에 defer를 명시함으로써
컴파일러가 알아차리지 못하는 프로그램상의 오류를 예방하기 위해서.반환값이 있는 함수는 논리상 예외(에러)가 있을만한 부분을 에러 처리를 통해 결괏값과 에러 값을 함께 반환해야함.Scanln과 같은 내장표준함수들은 에러 상황과 값을 이미 구현했기 때문에 상황에 따른 에러