CRUD는 약자로 ,create, read, update, delete를 의미한다. 이는 DB에 있는 정보를 저장하고 삭제하고 변경, 읽기 작업을 하는 메서드를 말하며, 이를 어플리케이션에서 조작할 수 있도록 API를 구축하는 것을 말한다.Create : 새로운 레코드
go는 정말 재밌는 언어이다. 이 언어로 backend 개발을 해보고 싶고, 잘해보고 싶어 유튜브 영상들을 찾아보았다. 그 중 가장 괜찮은 강의를 가져와봤다.https://www.youtube.com/watch?v=rx6CPDK_5mU&list=PLy_6D98
자바에서 객체 지향과 디자인 패턴의 핵심은 인터페이스이다. go 역시도 인터페이스를 지원하는 아주 재밌는 언어이다. 인터페이스를 사용하는 가장 큰 이유는 어떤 값이 어떤 특징 타입을 갖는지 관심이 없는 경우가 있기 때문이다.그 값이 무엇인지보다는 그 값으로 어떤 일을
지난 번에는 구조체를 선언하고, 이를 사용하는 방법을 배웠다. 그러나, 구조체는 이것이 다가 아니다. c언어에서는 구조체에 함수를 넣어줄 수 없지만, c++이 되면서 구조체에 함수를 넣어줄 수 있었다.이것이 필요한 이유는 사용자 정의 타입에서 메서드를 정의하면 메서드
go언어는 도대체 무슨 언어인지 헷갈릴 정도로 이 언어, 저 언어의 특징이 많이 담겨져 있다. 그 중에 하나는 바로 구조체이다.여태까지, 배열, 슬라이스, 맵은 모두 한개의 값과 한 가지의 타입을 저장할 수 있었다. 그러나 구조체를 사용하면 여러 타입과 여러 값들을 하
슬라이스나 배열은 데이터를 저장하는 자료구조이다. 그러나, 이들의 가장 큰 단점은 인덱스로만 검색을 해야한다는 것이다.만약 내가 원하는 데이터를 KEY-VALUE 형식으로 가지고 오고싶으면 어떻게 해야할까?? 가령, 가수를 검색한다고 하면 key는 ph1이고 노래는 v
go에서는 값을 추가하여 확장할 수 있는 데이터 구조가 있는데, 이를 슬라이스라고 한다. 배열과 마찬가지로 슬라이스도 복수 개의 원소로 이루어져 모든 원소는 동일한 타입을 갖는다.그리고 핵심적인 것은 슬라이스는 배열과 달리 슬라이스 끝에 원소를 추가할 수 있다는 것이다
지난번 포인터 변수를 선언했을 때 재밌었던 것은 변수의 타입 앞에 \*(에스테리스크)를 썼다는 것이다.배열 역시도 마찬가지이다. 결국 배열의 사이즈를 나타내는 \[]을 변수 타입 앞에 써주기만 해주면 되는 것이다.다음과 같이 선언해주면 되는 것이다.그럼 사용방법을 한번
패키지는 유사한 기능을 수행하는 코드들의 집합이다. fmt, strings 등도 모두 패키지이다.코드의 일부가 여러 프로그램 간에 공유되는 경우 코드를 패키지로 분리하는 것을 고려해 볼 수 있다.그러나, golang의 패키지 시스템은 자바나 c/c++처럼 그렇게 간단하
포인터 변수는 주소를 받아, 주소로 변수를 제어하는 기능이다.pointer가 남아있는 언어가 별로 없는데 golang은 포인터를 지원한다.이는 굉장히 강력한 기능이고 golang에 있어서 큰 장점 중 하나라고 생각한다. 포인터에는 타입과 에스테리스크(\*)가 필요하다.
우리는 이미 함수를 배웠다. main() 자체가 함수 코드이기 때문이다. 따라 이를 기저로 함수의 선언을 분석하면 다음과 같다뭔가 굉장히 복잡해 보이지만, typescript나 kotlin을 배웠다면 그냥 매개변수의 타입 부분에서 ':' 을 뺀 것 뿐이다.문자열을 받
Go는 컴파일 언어이다. 따라서, 소스 코드를 컴파일하여 cpu가 실행할 수 있는 바이너리 포맷으로 변환해 주어야 한다.이에 따라 go를 실행할 수 있는 명령어는 다음과 같다.go build : 소스 코드를 바이너리로 컴파일한다.go run : 프로그램을 컴파일한 다음
필자는 4G/5G 통신 서버 개발자라 속도에 민감해 c/c++만을 사용한다. 그런데 요즘들어 여러 통신 서버 개발자 분들이 golang을 사용하는 것을 보았고 좋아보여서 공부해보려고 한다.사실 필자도 잘모르겠다. 그냥 로고가 귀여워서 공부하려고한다. 힙찔이https&#