Go panic, recover – 업무에 사용하는 Go 언어 16

업무에 사용하는 Go 언어 썸네일

Go 언어를 사용하면서 흔히 접할 수 있는 개념 중 하나가 바로 panic입니다.다른 언어에서의 예외(Exception)처럼 느껴질 수도 있지만, Go에서는 panic과 recover라는 독특한 방식으로 예외 상황을 처리합니다.이번 글에서는 go panic의 개념, 사용 방법, 예제 코드, 그리고 주의할 점까지 자세히 살펴보겠습니다. go panic Go에서 panic은 프로그램 실행 도중 치명적인 오류가 발생했을 때 사용됩니다.절대로 일어나면 안 되는 상황에 발생합니다.panic이 … 더 읽기

Go error(에러) – 업무에 사용하는 Go 언어 15

업무에 사용하는 Go 언어 썸네일

Go 언어를 사용하면서 가장 먼저 낯설게 느껴지는 부분 중 하나는 에러 처리 방식입니다.특히 Python이나 JavaScript에 익숙한 개발자라면 Go의 에러 처리가 다소 생소하게 느껴질 수 있습니다.하지만 Go의 철학을 이해하고 나면 이 방식이 얼마나 명확하고 예측 가능하게 설계되었는지를 알 수 있습니다.예외를 사용하지 않고, 모든 것을 값으로 처리하는 방식은 코드의 안정성과 가독성을 높이는 데 많은 도움이 됩니다. go … 더 읽기

Go 패키지(package) – 업무에 사용하는 Go 언어 14

업무에 사용하는 Go 언어 썸네일

Go 언어는 소프트웨어의 유지보수성과 확장성을 극대화하기 위해 패키지(package) 개념을 핵심적인 구조 요소로 채택하고 있습니다.이 글에서는 go 패키지(package)라는 주제를 중심으로, 패키지의 개념적 기반부터 실질적인 활용법, 외부와의 인터페이스 설계, 초기화 함수의 작동 방식까지 깊이 있게 다루고자 합니다.필자는 다양한 규모의 프로젝트에 Go 언어를 도입해본 경험을 바탕으로, 실제 개발 환경에서의 활용 사례와 전략적 고려 사항을 포함하여 본 내용을 정리하였습니다. … 더 읽기

2025년 cursor AI IDE 코딩 후기

2025년 cursor AI IDE 코딩 후기

최근 프로젝트를 진행하면서 cursor ai AI IDE를 적극 활용해보았습니다.기존에는 GitHub Copilot 등 다른 AI IDE를 활용해왔지만, 대부분 유료로 전환되거나 무료 체험으로 전환되었고 자체 AI IDE 기반으로 좀 더 특별한 AI 코딩 경험을 제공하는 것으로 알려져 있어 기대를 안고 1년 정도 사용을 시작했습니다.cursor ai 후기가 궁금한 분들, 그리고 AI IDE의 실제 활용 사례가 궁금한 분들께 도움이 … 더 읽기

Go interface – 업무에 사용하는 Go 언어 13

업무에 사용하는 Go 언어 썸네일

Go interface는 동작(Behavior)을 정의하는 추상 타입입니다.인터페이스는 구조체나 다른 타입들이 특정 메서드를 구현했는지를 확인하여 다형성을 지원합니다.이를 통해 Go는 객체 지향 프로그래밍의 중요한 요소 중 하나인 다형성(Polymorphism)을 효과적으로 제공합니다. 여러 타입이 있고 각 타입에 대한 동작의 의미는 같으나 코드는 분리해야 할 때 사용하면 좋다.예를 들면, 사각형, 원 등 여러 도형에 대하여 넓이를 구한다는 동작의 의미는 동일하지만 도형 … 더 읽기

Go method – 업무에 사용하는 Go 언어 12

업무에 사용하는 Go 언어 썸네일

Go 언어 method는 struct에 속하는(혹은 속해있는) 함수입니다.Go 언어에는 class가 존재하지 않고 oop를 위해 struct를 이용하게 됩니다.oop의 특징을 struct에 도입하여 사용할 수 있도록 되어있습니다. Go 언어 method 정의 Go 언어 method는 특정 타입에 속하는 함수로 정의되어 있습니다.즉, Go 언어 method를 정의하려면 먼저 struct와 같이 사용자 정의 타입을 정의하고 해당 타입에 바인딩할 함수를 정의하면 됩니다. Go 언어 … 더 읽기

Go struct – 업무에 사용하는 Go 언어 11

업무에 사용하는 Go 언어 썸네일

Go 언어 struct(구조체)는 다른 언어에서 기본적으로 제공하는 struct와 비슷합니다.다만, Go 언어에는 OOP(객체 지향 프로그래밍)에서 흔히 사용하는 class가 존재하지 않습니다.Go 언어 struct가 class와 유사한 역할을 하는데, 상속과 같은 기능을 제공하지는 않고, interface를 통해 여러가지 기능을 제공합니다.Struct를 활용하여 간단한 데이터부터 복잡한 데이터 모델링까지 가능하게 해주기 때문에 꼭 살펴보고 넘어가야 합니다.본 글에서는 struct의 기본 개념부터 사용 방법까지 살펴보도록 … 더 읽기

Go 포인터 – 업무에 사용하는 Go 언어 10

업무에 사용하는 Go 언어 썸네일

포인터는 어떠한 값의 메모리 주소를 저장합니다.Go 언어 포인터는 개념 자체는 같지만 다른 언어와는 약간 다른 특징을 가지고 있으니 이에 대해 중점적으로 살펴보도록 하겠습니다. Go 언어 포인터 포인터 자체에 대한 개념은 상세하게 설명하지 않겠습니다.Go 언어에서도 포인터는 메모리 주소(혹은 위치)를 참조하는 참조 타입의 변수입니다.C 계열 언어의 스타일과 비슷하게 &를 붙여 메모리 주소를 구하고, *를 사용하여 실제 값을 … 더 읽기

Go 함수 – 업무에 사용하는 Go 언어 9

업무에 사용하는 Go 언어 썸네일

Go 언어의 함수에 대해서 다루어보도록 하겠습니다.프로그래밍 언어에서 함수는 필수적인 요소일 것 입니다.함수형 프로그래밍이든 객체 지향 프로그래밍을 하든 어떤 패턴을 써도 함수는 필수적으로 사용됩니다.함수를 잘 활용하면 코드를 재사용 할 수 있고 프로그램의 구조를 잡을 수 있습니다. func Go 언어에서도 함수는 0개 혹은 여러 인자를 받을 수 있습니다.func 키워드를 사용하여 선언할 수 있고 함수 이름, 매개변수, 반환 … 더 읽기

Go make – 업무에 사용하는 Go 언어 8

업무에 사용하는 Go 언어 썸네일

Go 언어에서 중요한 내장 함수 중 make에 대해 다루도록 하겠습니다.make 함수는 slice, map, channel 같이 Go 언어의 참조 타입 중 컬렉션 타입을 초기화할 때 사용합니다.메모리에 변수의 구조를 알려주는 행위라고 이해하시면 되겠습니다. 약간의 여담 nil 상태에 대해서 저번 글에 아주 상세히 다루어보았다.“리터럴이 딱히 없는데 어떡하지? 아무 값으로 일단 초기화 해야하나?”라는 의문을 가진 분들이 있을 것이다. 그런 … 더 읽기