참고로 필자는 Jetbrain 사의 goland IDE 를 사용하고 있다프로젝트에 hello.go 파일을 만들고아래 내용을 작성하자이후 Run ( Ctrl + Shift + F10 ) 해보자콘솔 5번째 줄 쯤에 "Hello world!!" 가 잘 찍힌 것을 볼 수..
Go 언어에 반복문은 오직 For 문 뿐이다간단하게 구구단을 찍어보자완전형 for 구문only 조건식삼항 연산자가 없어서 나중에 함수형(FP)으로 만드는 건 조금 힘들지 않을까 싶은데...?일단 쭉 달려보자 !
switch 는 표현식(Expression)과 타입이 있다.기초니까 표현식만 확인해보자 !Go의 switch 문법은 다른 언어와 많이 다르다다른 언어에서는 꼭 써야 할 break 가 없고,case 안에 아무것도 없다면 default 도 실행하지 않는다! ( 아무것도 안
기본 형태 add 함수를 만들어서 num1, num2를 파라미터로 서로 더해 리턴하는 형태이다. 이때 num1 과 num2 는 모두 int 형이라 num1 가 int 형이라는 것을 생략했다! ( 편리 )
크게 다른 부분은 없다.
Go 에서 함수는 다중 반환값을 허용한다!조금 생소하지만 편리해 보인다.
아래처럼 함수의 형태를 명시 할 수 있는 Type 지정을 해주었다.추후 문서화나 테스트를 찍어낼때 활용하기 좋은 방법에 힌트가 될것같다..나중에 코딩테스트 공부할 때를 대비해서strconv 패키지같은 Convert 패키지를 정리해둬야겠다.
함수 내부에서 새로운 함수를 정의해서 변수로 할당해서 반환할 수 있다.이렇게 이름이 없는 함수는 '익명 함수'라고 불린다.두 내용을 합쳐보자main 에서 만들어진 4개의 변수는 마치 함수처럼 동작하고 있다. (사실 함수 맞다)다른 언어에서도 익명 함수는 많이 쓰이고 있
찾아보면 defer 에 대해서 잘 정리된 글들이 많이 있다.내가 이해한 바로는 해당 함수의 코드실행을 지연시키고(거꾸로 실행하도록) 반드시 실행하게 만든다.File 을 가져오는 부분을 아래 내용으로 구현해보자!1\. 파일을 읽었는데 비어있으면 error 발생 -> 파일
Go는 값에 의한 호출을 사용하는 언어라고 한다함수에 파라미터로 넘겨지는 변수가 있으면 "반드시" 복사본을 만들어 넘긴다그렇다면 외부 함수에서 값을 변경해본다면 변경이 적용될까?분명 modifyFail 은 값을 단순히 "복사" 했기 때문에 test1 은 변경되지 않는다
포인터에 대해 어느정도 알고 있다고 가정하고 생략하며 진행한다.일단 핵심은 변수가 저장된 메모리의 주소 값 을 활용하는 것이다.주로 외부에서 변수를 수정하는 경우 사용한다.올바른 포인터의 사용은 프로그램을 더 효율적이고더 빠르게 만들어준다.일단 문법을 살펴보면 다음과
func에 추가적으로 리시버를 명시해준다아래 func 뒤에 (d Duck) 부분이 리시버이다.여기서 리시버를 포인터로 받거나 값을 받는 경우가 있다포인터를 받으면 리시버가 가진 값이 변경될 수 있고아니라면 값으로 받으면 된다.Age 값이 5 증가한 것을 볼 수 있다.
위처럼 Manager 가 Employee 를 가진 구조이지만 이름을 부여하지 않은 상태를 말한다임베딩이 되면 메소드나 속성 값을 가진다이것은 상속의 개념이 아니다