goGo Test Suite (Lifecycle 메서드)Golang에서는 testify library에서 제공하는 여러 기능 (ex. assertion, mocking, suite)를 통해서 쉽게 unit test를 작성할 수 있다. 특정 config 설정에 따라 전체 테스트를 skip…
goGo Strings (문자열 함수)문자열 함수 Golang에서 표준 라이브러리중에 패키지에서 많이 유용하게 사용할 수 있는 문자열 함수들을 제공한다. 여러 예제를 통해서 문자열를 다루어보자. 1. Search (Contains, Prefix/Suffix, Index)…
goGo Ternary Operator (삼항연산자)삼항연산자란? 삼항 연산자 (Ternary Operator)는 아래 형식으로 if 조건문 대신 사용할 수 있는 문법이다. JavaScript, Java와 같은 여러 언어에서 지원하는 문법이고 아래 코드는 자바의 삼항 연산자이다. Golang…
goGo에서 컬렉션 정렬하는 방법 (Go Sort)1. 들어가며 Go에서는 여러 컬렉션 타입에 대해서 어떻게 정렬할 수 있는지에 대해서 알아보자. Primitive 데이터 타입 정렬하기 Custom comparator로 정렬하기 Sort interface로 정렬하기 Map에서 특정 key/value…
goGo에서 삼 도트 (dot) 사용방법 (Three Dots Usage)1. 들어가며 Go에서 삼 도트(dot) 사용법에 대해서 알아보자. Go에서는 아래 4가지 방법으로 사용된다. 함수의 인자에 가변 인자로 선언하는 경우 가변 인자를 인자로 받는 함수에 slice…
goGo에서의 메서드 (Method in Go)Go에서는 함수외에도 메서드를 제공한다. 메서드는 리시버 인자(Receiver Parameter)를 가진 함수를 말한다. 기능적으로 보면 일반 함수와 별 차이가 없고 아래 문법과 같이 func…
go타입 스위치 (Type switch)티입 스위치는 형 단언을 실행하여 해당 변수의 타입이 스위치 문의 조건에 일치하는 블럭을 실행한다. 타입 스위치 선언문은 형 단언 와 같은 구문을 가진다. 그러나 T…
go타입 변환 (Type Conversion)타입 변환은 데이터 타입을 변경하는 것이다. Java에서는 명시적 타입 변환(explicit type conversion)과 암시적 타입 변환(implicit type conversion) 둘 다 지원하지만, Go…
goGo에서의 게터, 세터 메서드 (Getter, Setter in Go)캡슐화는 내부 속성값을 외부에서 직접적으로 접근하게 못 하게 하고 공개된 메서드 (ex. getter, setter)로만 접근하여 내부 값을 보호하는 역할을 한다. 즉, 내부 구현을 감추고 데이터 체크를 통해서 유효한 값만 저장하게 한다. Go…
goGo에서의 로그깅 (Logging in Go)1. 들어가며 Go 표준 패키지 중에 log에서 로깅에 필요한 기본 메서드를 제공한다. 표준 출력 stdout, stderr외에 파일로 로그를 저장하는 방법, 그리고 로그 포맷 변경해서 출력하는 방법 등에 대해서 알아보자. 추가 설치 없이 log…