일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- tucker의 go 언어 프로그래밍
- golang
- aws
- Pinpoint
- 기록으로 실력을 쌓자
- CKA
- CloudWatch
- APM
- 티스토리챌린지
- 정보처리기사실기 기출문제
- kotlin querydsl
- 공부
- Linux
- AWS EKS
- CKA 기출문제
- AI
- mysql 튜닝
- PETERICA
- Spring
- docker
- 코틀린 코루틴의 정석
- Elasticsearch
- 오블완
- Kubernetes
- minikube
- 정보처리기사 실기 기출문제
- go
- Java
- kotlin coroutine
- kotlin
- Today
- Total
목록Programming/GO (23)
피터의 개발이야기
ㅁ 들어가며ㅇ Tucker의 GO 언어 프로그래밍 책을 보면서 공부 중이다. ㅇ 현업에서 당장 필요한 부분부터 정리 중이라 목차가 필요하였다.ㅇ 필요한 부분을 찾아서 코딩할 수 있지만, 차근차근 공부하고 노트하면 오래 기억할 수 있다. ㅁ 1 단계 탄탄하게 기초 문법 다지기01 Hello Go World - [GO] Tucker의 GO 언어 프로그래밍 - 1장 역사와 특징02 변수 - [GO] Tucker의 GO 언어 프로그래밍 - 2장 변수03 fmt 패키지를 이용한 텍스트 입출력 - [GO] Tucker의 GO 언어 프로그래밍 - 3장 fmt04 연산자 - [GO] Tucker의 GO 언어 프로그래밍 - 4장 연산자05 함수06 상수07 if문08 switch문09 for문10 배열11 구조체12 포..
ㅁ 들어가며ㅇ Tucker의 GO 언어 프로그래밍 책을 보고 정리한 글입니다.ㅇ [GO] Tucker의 GO 언어 프로그래밍 - 목차ㅇ Go 언어의 인터페이스는 강력하면서도 유연한 추상화 도구이다. ㅁ 인터페이스type Speaker interface { Speak() string}ㅇ 인터페이스는 메서드의 집합을 정의하는 타입이다.ㅇ 이 인터페이스는 Speak() 메서드를 가진 모든 타입이 구현할 수 있다. type Person struct { Name string}func (p Person) Speak() string { return "Hello, my name is " + p.Name}ㅇ 예를 들어 Person 타입은 Speaker 인터페이스를 만족한다. ㅁ 인터페이스 왜 쓰나?ㅇ ..
ㅁ 들어가며ㅇ [GO] Tucker의 GO 언어 프로그래밍 - 목차ㅇ [GO] Tucker의 GO 언어 프로그래밍 - 24장 제네릭 프로그래밍을 작성하면서 제니릭과 인터페이스의 차이점에 대해서 공부하였다.ㅇ 인터페이스와 제네릭은 프로그래밍에서 추상화와 재사용성을 높이는 데 사용되는 개념이지만, 그 목적과 사용 방식에 차이가 있다. ㅁ 인터페이스ㅇ 인터페이스는 객체의 행동(메서드 집합)을 정의하고, 이를 구현하는 타입에 따라 다형성을 제공한다.package mainimport "fmt"// Shape 인터페이스 정의type Shape interface { Area() float64}// Circle 타입type Circle struct { Radius float64}func (c Circle) Area()..
ㅁ 들어가며ㅇ Tucker의 GO 언어 프로그래밍 책을 보고 정리한 글입니다.ㅇ [GO] Tucker의 GO 언어 프로그래밍 - 목차 ㅁ 제네릭 프로그래밍 소개 제네릭 프로그래밍은 Go 1.18 버전에서 도입된 기능으로, 타입에 구애받지 않고 재사용 가능한 코드를 작성할 수 있게 해준다. 이를 통해 개발자는 다양한 데이터 타입에 대해 동작하는 함수와 데이터 구조를 만들 수 있으며, 코드 중복을 줄이고 타입 안정성을 높일 수 있다. ㅁ 제네릭 함수ㅇ 제네릭 함수는 타입 매개변수를 사용하여 여러 타입에 대해 동작할 수 있는 함수이다.func Max[T comparable](a, b T) T { if a > b { return a } return b}ㅇ 이 함수는 comparab..
ㅁ 들어가며ㅇ Tucker의 GO 언어 프로그래밍 책을 보고 정리한 글입니다.ㅇ [GO] Tucker의 GO 언어 프로그래밍 - 목차ㅇ Go 언어에서 채널(Channel)과 컨텍스트(Context)는 동시성 프로그래밍과 요청 관리에 필수적인 도구이다.ㅁ 채널(Channel) 사용하기ㅇ 채널은 고루틴 간의 데이터 통신 및 동기화를 위한 파이프 역할을 한다.ㅇ 기본 사용법생성: make(chan 타입)송신: 채널 수신: 데이터 := // 기본 예시ch := make(chan string) // 생성go func() { ch ㅁ 버퍼드 채널 vs 언버퍼드 채널유형특징예제언버퍼드송신/수신이 즉시 동기화ch := make(chan int)버퍼드지정된 크기까지 비동기적 전송ch := make(chan..
ㅁ 들어가며ㅇ Tucker의 GO 언어 프로그래밍 책을 보고 정리한 글입니다.ㅇ [GO] Tucker의 GO 언어 프로그래밍 - 목차고루틴과 Go 언어의 동시성 프로그래밍에 대해 핵심 개념을 정리합니다.ㅁ 스레드란?프로세스 내에서 실행되는 실행 흐름의 최소 단위로, CPU 자원을 할당받아 작업을 수행합니다. OS 스레드는 컨텍스트 스위칭 비용이 높고 메모리를 많이 사용하지만, Go의 고루틴은 경량 스레드로 2KB의 작은 스택에서 시작해 동적으로 확장되며, Go 런타임이 직접 관리한다.📌 고루틴 vs OS 스레드OS 스레드: 컨텍스트 스위칭 비용高, 메모리 사용량多고루틴: 빠른 생성/소멸, 수천 개 동시 실행 가능. ㅁ 고루틴 사용go 키워드로 함수를 비동기 실행한다. 메인 함수도 고루틴으로 실행되며, ..
ㅁ 들어가며ㅇ Tucker의 GO 언어 프로그래밍 책을 보고 정리한 글입니다.ㅇ 4장 연산자 - 연산자종류 ㅁ 산술 연산자산술 연산자는 수학적 계산을 수행a, b := 10, 20fmt.Println(a + b) // 30 (덧셈)fmt.Println(a - b) // -10 (뺄셈)fmt.Println(a * b) // 200 (곱셈)fmt.Println(b / a) // 2 (나눗셈)fmt.Println(b % a) // 0 (나머지)a++ // 증가b-- // 감소ㅇ 모든 연산자의 각 항의 타입은 항상 같아야한다.ㅇ 정수 타입과 실수 타입을 서로 더하거나 뺄 수 없다. ㅁ 비트 연산자비트 연산자는 정수의 비트를 직접 조작하는 데 사용a := 6 // 0110b := 5 // 0101#..
ㅁ 들어가며ㅇ Tucker의 GO 언어 프로그래밍 책을 보고 정리한 글입니다.ㅇ fmt를 이용하여 터미널 화면 출력하는 방법을 정리 ㅁ fmt 패키지 사용법golang의 fmt 패키지 사용법에 대해 서식문자, 최소 출력 너비 지정, 실수 소수점 이하 자릿수, 특수 문자로 나누어 정리 서식문자package mainimport "fmt"func main() { /* %d: 정수 %f: 실수 %s: 문자열 %t: 불리언 %v: 기본 형식 %T: 타입 */ name, age, pi := "Peterica", 42, 3.14159 fmt.Printf("이름: %s, 나이: %d, PI: %f\n", name, age, pi) fmt.Printf("age의 타입: %T\n", age)}##########..
ㅁ 들어가며ㅇ Tucker의 GO 언어 프로그래밍 책을 보고 정리한 글입니다.ㅇ 변수가 갖는 속성(이름, 값, 타입, 메모리 주소)과 사용법을 정리한다.ㅁ 변수란?변수는 프로그램에서 값을 저장하는 메모리 공간이다.var name int = 10ㅇ var : 변수 선언부ㅇ name : 변수명, 메모리 시작 주소ㅇ int : 타입, 메모리에 int 타입만큼의 공간을 할당.ㅇ 10 : 초기 데이터ㅁ 변수의 속성ㅇ 이름: 프로그래밍에서 이름을 통해 직관적으로 메모리 공간에 접근 할 수 있다.ㅇ 값: 변수가 저장된 값ㅇ 주소: 변수가 저장된 메모리의 시작주소이다.ㅇ 타입: 변수의 형태를 정의함. 정수,실수, 문자열 등의 다양한 타입들이 있었다.ㅁ 올바른 변수명ㅇ 문자나 _로 시작하고 다른 특수문자를 포함할 수 없..
ㅁ 들어가며ㅇ Tucker의 GO 언어 프로그래밍 책을 보고 정리한 글이다.ㅇ 1장, Go언어의역사와특징을살펴보고, HelloGoWorld코드를 작성한다. ㅁ GO 역사ㅇ 2009년11월10일 세상에 공개ㅇ 홈페이지주소ㅇ 온라인 Go 언어컴파일러 ㅇ GO 언어의 풀 리퀘스트가 지속적으로 증가하고 있다.ㅇ JAVA 개발자인 나도 현재 GO를 사용 중이며, 대세에 맞추어 가는 중이기도 하다. ㅁ GO 언어의 특징개념설명클래스클래스는 없지만, 메서드를 가지는 구조체를 지원상속상속을 지원하지 않음메서드구조체가 메서드를 가질 수 있음인터페이스상속이 없지만 인터페이스는 있음익명 함수함수 리터럴이라는 이름으로 제공GCGC 제공함포인트메모리 주소를 가리키는 포인트 제공제네릭 프로그래밍제네릭 프로그래밍은 1.8부터 지원..