업무에 사용하는 Go 언어 0 – Intro

직장에 근무하면서 컴퓨터공학에 관련된 업무를 전부 책임지고 있는 저에게 Go 언어로 서버를 만들어달라는 요청이 들어와서 처음 사용하게 되었습니다. 그 과정에서 Go 언어는 충분히 매력적인 언어라고 느껴져서 Go 언어에 대해서 쭉 시리즈로 정리하여 공유하고자 합니다.

업무에 사용하는 Go 언어 썸네일
시원하게 달려보자는 느낌으로 만든 썸네일

제가 Go 언어로 만들어본 재밌는 것들은…

  • 회사 관계자 채팅 프로그램
  • 작업 의뢰 알림 자동화 프로그램
  • 이메일 포워딩 프로그램
  • 서버 작업 자동화 프로그램

현실적으로 블로그에서 위의 내용들을 다 만들어보기에는 힘들 것 같고 Go 언어를 이해하고 백엔드 서버를 만들어보는 것을 목표로 삼으면 적절할 것 같습니다.

전문 작가가 아닌 제가 혼자 글을 작성하는 만큼 글 솜씨가 없는 것에 대해서는 양해바랍니다.
Go 언어로 무언가를 만들어 보고자 하는 분들, Go 언어를 사용해보고 싶은 분들 등 많은 분들께 도움이 되기를 바라며…

Prerequisites

Go 언어 1.23.2 버전 기준으로 작성되었습니다.
추후 버전에 따라 내용이 업데이트 됩니다.

윈도우 환경, 터미널을 기반으로 이 시리즈는 작성되었습니다.
설치 과정 등 일부만 다를 뿐이라서 MacOS, Linux 등 다른 환경에 대해서는 정리하지 않습니다.
C, Python, Java 등 다른 프로그래밍 언어를 다루어본 경험이 있으시면
Go 언어를 다루는 데에 훨씬 수월할 것 같습니다.

컴퓨터공학을 어느 정도 이해하고 있다고 가정합니다.
예를 들어 변수가 무엇 인지에 대해서는 설명하지 않습니다.
대부분의 코드는 이미지로 제공됩니다.
Ctrl(Command) + C / V로 인해 학습되었다고 우리의 뇌가 속는 것을 방지하기 위함입니다.
단, 아직 다루지 않은 내용을 포함하거나 사용만 해보고 넘어가도 좋을 때는 코드를 텍스트로 제공합니다.
독자는 IDE가 무엇인지 이해하고 있고 사용하고 있는 IDE가 있다고 가정합니다.
이 시리즈에서는 VSCode를 사용하며 VSCode 설치 및 IDE 세팅에 대해서는 다루지 않습니다.
중간 중간에 실제 업무에서 어떻게 사용했는지 혹은 업무와 관련된 이야기를 조금씩 언급합니다.
프로그래밍이 처음이신 분들께...

개인적으로 생각하기에... Go 언어는 프로그래밍을 처음 접하는 사람한테는 추천하고 싶지 않습니다.
일부엔 갑론을박이 있을 정도로 워낙 Go 언어만의 색깔이 강하기에 쉽게 접근할 수 있는 언어는 아니겠습니다.
물론, 처음으로 접해선 안 되는 지식은 없다고 생각합니다. 참고만 하세요.

목차 및 링크

이 시리즈에 대한 글을 업로드하면 여기에 제목과 링크를 통해 업데이트 하도록 하겠습니다.

기초

1. 시작 및 설치

2. 변수와 상수

3. 입출력

4. 연산자

5. 흐름제어

6. Array, Slice, Map

7. nil

8. make 함수

9. 함수 func

10. 포인터

11. 구조체 struct

12. method