드리프트의 뉴 코딩 이야기
close
프로필 배경
프로필 로고

드리프트의 뉴 코딩 이야기

  • 분류 전체보기 (385) N
    • Javascript (161)
    • Go (134) N
    • Rust (32)
    • Python (29)
    • Docker (5)
    • Codings (10)
    • Linux (5)
    • Flutter (3)
    • Etc (6)
  • 홈
  • Javascript
  • Go
  • Rust
  • Python
Go 언어 난수 생성 완벽 가이드: math/rand부터 crypto/rand까지

Go 언어 난수 생성 완벽 가이드: math/rand부터 crypto/rand까지

Go 언어 난수 생성 완벽 가이드: math/rand부터 crypto/rand까지시뮬레이션, 게임, 테스트 데이터 생성, 보안 프로토콜 등 프로그래밍의 수많은 시나리오에서 '난수(Random Number)'는 필수적인 요소입니다.Go 언어에서는 math/rand 패키지를 통해 '의사 난수(pseudo-random number)'를 생성하는 기능을 제공합니다.오늘은 이 패키지를 효과적으로 활용하는 방법과, 더 나아가 보안이 중요한 상황에서는 어떤 다른 접근 방식이 필요한지 함께 알아보겠습니다.1. math/rand 패키지의 기본가장 먼저, 필요한 패키지를 가져오는 것부터 시작합니다.package mainimport ( "fmt" "math/rand" "time")정수 난수 생성하기rand...

  • format_list_bulleted Go
  • · 2025. 7. 12.
  • textsms
Go 언어 JSON 태그 완전 정복: omitempty부터 커스텀 태그까지

Go 언어 JSON 태그 완전 정복: omitempty부터 커스텀 태그까지

Go 언어 JSON 태그 완전 정복: omitempty부터 커스텀 태그까지Go 언어로 API 서버나 웹 애플리케이션을 개발하다 보면, JSON 데이터를 다루는 일은 피할 수 없는 숙명과도 같습니다.이때 Go의 struct와 JSON 데이터를 서로 변환하는 과정, 즉 직렬화(Serialization, 마샬링)와 역직렬화(Deserialization, 언마샬링)에서 'struct tag'는 아주 중요하고 강력한 역할을 수행합니다.오늘은 이 json 태그를 사용하여 어떻게 JSON 데이터를 정교하게 제어할 수 있는지, 기본부터 고급 활용법까지 함께 정복해 보겠습니다.왜 JSON 태그가 필요할까?가장 먼저, 왜 이 태그가 필요한지부터 알아야 합니다.Go 언어에서는 외부 패키지에서 접근할 수 있는 필드(publi..

  • format_list_bulleted Go
  • · 2025. 7. 12.
  • textsms
Go 제네릭 완전 정복: interface{} 시대의 종말과 새로운 패러다임

Go 제네릭 완전 정복: interface{} 시대의 종말과 새로운 패러다임

Go 제네릭 완전 정복: interface{} 시대의 종말과 새로운 패러다임Go 언어는 종종 '단순함'과 '명료함'의 미학으로 칭송받아 왔습니다.하지만 이러한 단순함의 이면에는 한 가지 오랜 골칫거리가 있었으니, 바로 '코드 중복' 문제였습니다.다른 타입에 대해 동일한 로직을 수행하는 함수를 만들려면, 우리는 각 타입에 맞는 함수를 일일이 따로 만들어야만 했습니다.이러한 불편함 속에서 마침내 Go 1.18 버전이 등장하며, 언어의 역사에 한 획을 긋는 '제네릭(Generics)' 기능이 도입되었습니다.오늘은 제네릭이 왜 필요했는지, 그리고 이 강력한 도구를 어떻게 사용하는지 함께 정복해 보겠습니다.1. 제네릭 이전의 시대: 코드 중복과 interface{}제네릭의 가치를 제대로 이해하려면, 그전에는 우리..

  • format_list_bulleted Go
  • · 2025. 7. 12.
  • textsms
Go 언어의 청소부, 가비지 컬렉터 파헤치기: 메모리 관리, 이젠 맡겨주세요!

Go 언어의 청소부, 가비지 컬렉터 파헤치기: 메모리 관리, 이젠 맡겨주세요!

Go 언어의 청소부, 가비지 컬렉터 파헤치기: 메모리 관리, 이젠 맡겨주세요!들어가며: "쓰레기는 알아서 척척!" Go 언어의 똑똑한 메모리 관리 비법우리가 집안 청소를 하듯, 프로그래밍에서도 더 이상 사용하지 않는 '메모리 쓰레기'를 깔끔하게 치워주는 역할이 필요합니다.그렇지 않으면 메모리가 점점 쌓여서 프로그램이 느려지거나 멈춰버리는 불상사가 생길 수 있거든요.Go 언어에는 바로 이 '메모리 청소'를 자동으로 해주는 아주 똑똑한 시스템, 바로 '가비지 컬렉터(Garbage Collector, GC)'가 내장되어 있습니다.이번 글에서는 Go 언어의 가비지 컬렉터가 어떻게 작동하는지, 그리고 어떤 특별한 점들을 가지고 있는지 쉽고 재미있게 알아보겠습니다.마치 우리 집 로봇 청소기처럼, Go 언어의 GC가..

  • format_list_bulleted Go
  • · 2025. 6. 3.
  • textsms
Go 언어에 클래스가 없다고? 걱정 마세요! 구조체와 인터페이스로 다 됩니다!

Go 언어에 클래스가 없다고? 걱정 마세요! 구조체와 인터페이스로 다 됩니다!

Go 언어에 클래스가 없다고? 걱정 마세요! 구조체와 인터페이스로 다 됩니다!들어가며: "Go에는 클래스가 없다는데, 그럼 객체지향은 어떻게...?"자바(Java)나 C++ 같은 객체지향 프로그래밍 언어에 익숙한 개발자들이 Go 언어를 처음 접할 때 가장 많이 하는 질문 중 하나가 바로 "Go에는 클래스가 없나요?" 일 겁니다.맞습니다! Go 언어에는 우리가 흔히 알고 있는 '클래스(Class)'라는 개념이 없습니다.이 사실에 살짝 당황하셨을 수도 있는데요.하지만 걱정하지 마세요! Go 언어는 클래스 없이도 데이터를 구조화하고 행동을 정의하는 아주 스마트한 방법들을 가지고 있답니다.이번 글에서는 Go 언어가 왜 클래스를 사용하지 않는지, 그리고 클래스 대신 어떤 멋진 기능들을 제공하는지 쉽고 재미있게 알..

  • format_list_bulleted Go
  • · 2025. 6. 3.
  • textsms
Go 언어 딕셔너리 완전 정복: 맵(map)으로 데이터 관리 마스터하기!

Go 언어 딕셔너리 완전 정복: 맵(map)으로 데이터 관리 마스터하기!

Go 언어 딕셔너리 완전 정복: 맵(map)으로 데이터 관리 마스터하기!들어가며: 원하는 정보를 쏙쏙! Go 언어의 만능 보관함, 맵(map)우리가 실생활에서 사전을 사용하듯, 프로그래밍에서도 특정 '키(Key)'를 이용해 원하는 '값(Value)'을 빠르게 찾아낼 수 있는 자료구조가 필요할 때가 많습니다.마치 단어를 찾으면 그 뜻이 나오는 사전처럼 말이죠!Go 언어에서는 이러한 기능을 '맵(map)'이라는 내장 타입을 통해 제공하는데요.맵을 잘 활용하면 데이터를 효율적으로 저장하고 관리하는 데 아주 큰 도움이 된답니다.이번 글에서는 Go 언어의 맵이 무엇인지, 어떻게 사용하고 어떤 점들을 주의해야 하는지 쉽고 재미있게 알아보겠습니다.마치 잘 정리된 서랍장처럼 데이터를 깔끔하게 관리하는 비법을 함께 배워..

  • format_list_bulleted Go
  • · 2025. 6. 3.
  • textsms
  • navigate_before
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • ···
  • 14
  • navigate_next
전체 카테고리
  • 분류 전체보기 (385) N
    • Javascript (161)
    • Go (134) N
    • Rust (32)
    • Python (29)
    • Docker (5)
    • Codings (10)
    • Linux (5)
    • Flutter (3)
    • Etc (6)
태그
  • #Go
  • #성능 최적화
  • #typescript
  • #타입스크립트
  • #Golang
  • #Go 언어
  • #자바스크립트
  • #javascript
  • #Rust
  • #파이썬
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바