Home

Go언어에서 &와 *는 무엇을 뜻할까?

안녕하세요. Go언어를 사용하면서 궁금증 생겨서 궁금증을 해결하고자 작성하게 되었습니다. &와 *는 무엇을 뜻하고 무엇을 하는지에 대해서 궁금증이 생겨서 찾아 보았습니다. 또한 포인터에 대해서 궁금증이 생겨서 찾아보고 공부한 내용들을 작성해 보았습니다. 참고한 글로써는 아래와 같습니다. Stack Overflow - What is the meaning of ‘*’ and ‘&’? Stack Overflow - What does the ‘*’ and ‘&’ symbol in Go mean? golang.org - Pointers 일단 Pointer는 무엇인가? 포인터(Point...

Read more

효율적인 로그 남기기(at Go)

안녕하세요. 요즘 회사에서 미디어 스토리지를 개발 하면서 드는 생각이 있습니다. 실제로 돌아가고 있는 서비스나 시스템에서는 로그를 어떻게 관리하며, 로그의 중요성을 파악하고 있습니다. 로그 시스템이 추후에 데이터 자산이 될 수도 있다는 생각과 더불어 추후에 개발을 하면서 어떻게 동작하고 어떤 오류가 있는지 명확하게 파악할 수 있다는 생각이 들어서 효율적으로 Go언어를 통해서 로그를 어떻게 남기면 좋을지에 대해서 이야기 해 보고자 합니다. 다소 부족하지만 읽어주시면 감사하겠습니다! Go언어에서 사용할 수 있는 Logger는? Go언어에서 기본적으로 제공해 주는 Logger인 log가 있습니다. 기존적으로 제공되는 ...

Read more

2021년 회고

올해(2021년)는 다양한 일들이 이었으며, 다양한 일들과 더불어 저의 생각들을 기록해 보고 2021년을 마무리 지어보려고 합니다. 저는 아직도 많은 부족한 사람이지만 조금씩 부족한 부분을 채워 나가려고 합니다. 올해 부족한 부분을 채운 것을 기록하고 고찰하고 회고하고자 합니다. 개인적인 생각과 제가 2021년에 해던 행동, 일들에 대해서 이야기를 작성하였습니다. 올해 가장 기억에 남는 여름에 본 여름의 서울 노을. 인류와 공존하는 바이러스, 코로나19 2021년 회고를 쓰면서 2020년 이야기가 잠깐 나올 것 같습니다ㅎㅎ 2020년 초, 중국에서 코로나19와 관련되어서 뉴스 기사가 많이 뜨고 있었습니다...

Read more

좋은 변수, 함수를 짓기 위한 고찰

안녕하세요, 오늘은 많은 분들이 프로그래밍을 하면서 자주 생각하게 되는 “변수와 함수 등의 이름은 어떻게 지어야 할까?” 라는 생각을 하게 됩니다. 특히 협업을 한다면 “다른 사람들이 쉽게 알아보고 코드를 이해할 수 있도록 하는 방법은 무엇이 일까?”라는 생각이 들게 됩니다. 그래서 오늘은 좋은 변수, 함수 이름들과 코드에서 이름을 지어야할 때 어떻게 좋은 방법으로 지어야 할지 다른 분들이 쓰신 글들과 함께 살펴보고자 합니다. 문득 드는 생각으로 붙혀보았습니다. 왜 좋은 변수, 함수의 이름이 필요할까? 본질적으로 개발자는 목표로 하는 기능을 달성하기 위해서 코드를 작성하고 개발합니다. 개발 과정에서의...

Read more

Flutter 시작하기

안녕하세요, 오늘은 제가 자주 쓰던 Go언어에서 벗어나 다른 언어를 시도해 볼려고 합니다. iOS 기반의 Swift언어에 관심이 많았었는데 iOS 환경에서만 동작하는 점도 싫어서 크로스 플랫폼인 Flutter을 도전해 보려고 합니다. macOS을 기준으로 작성하였습니다. 플러터를 선택한 이유는? 크로스 플랫폼은 큰 틀에서 두 가지의 선택지가 있습니다. JavaScript 기반의 React.js의 React Native가 있으며, Dart 기반의 Flutter가 있습니다. React.js의 경우는 Facebook에서 만들어졌고 Flutter는 Google에서 개발하였습니다. 네이티브로 개발 된 앱을 플러터로 바꾸고...

Read more

gRPC Protocol Buffer 문제 해결하기

안녕하세요, 요즘 gRPC에 관해서 열심히 공부하고 있습니다. 옛 버전과 달리 요즘 gRPC 플러그인이 달라진 것 같아서 효과적인(?) 방법을 찾아볼려고 합니다. 옛 버전과 현재 문서에 작성 되어 있는 방법과 비교하여서 작성해 보도록 하겠습니다. 공식 문서인 Google Protocol Buffers - Protocol Buffer Basics: Go와 gRPC - Go Quick Start Regenerate gRPC code를 참고 하였습니다. 다양한 자료들을 참고 하였지만 gRPC와 관련되어서 편하게 변환할 수 있는 방법을 찾아보려고 하였지만 옛 버전을 사용하는 것이 더 좋을 것 같아서 옛버전을 사용하는 것을...

Read more

Go에서 gRPC 환경 구축하기

안녕하세요, 오늘은 gRPC를 Go에서 다루기 위해서 필요한 각종 모듈들을 설치하기 위한 일종의 가이드입니다. 저도 한 번씩 새로운 개발 환경을 구축하다 보면 애를 먹는 경우도 있고, 공부를 중간에 포기하는 경우 생각이 나지 않아서 기록으로 남겨두기 위해서 작성해 봅니다. gRPC - Go Quick start와 Google Developer - Protocol Buffers를 참고하여 작성하였습니다. Prerequisites Go가 설치되어 있어야 합니다. Protocol Buffer Compiler가 설치되어 있어야 합니다. Protoc 사용하며 버전은 최신 버전인 버전 3을 사용합니다. 프로토콜...

Read more

gRPC는 무엇인가

안녕하세요, 요즘 gRPC에 대해서 관심이 많이 생기고 다양한 회사의 채용 공고 중 gRPC와 관련된 부분이 있어서 “gRPC는 무엇인가”에 대해서 궁금증이 생겨서 글로 만들어서 작성해 두면 좋을 것 같아서 작성해 봅니다. 배경지식 gRPC(Google Remote Procedure Call)을 알기 위해서는 배경 지식이 필요합니다. 간단하지만 조금 어려운 배경지식에 대해서 이야기하고 진정으로 gRPC가 무엇인지에 대해서 이야기 해 보겠습니다. RPC(Remote Communication Mechanism) RPC(원격 프로시저 호출)는 한 프로그램이 네트워크의 세부 정보를 이해하지 않고도 네트워트 안의 다...

Read more