바이브 코딩이란 무엇인가? - AI 시대의 새로운 프로그래밍 패러다임

바이브 코딩이란? 바이브 코딩(Vibe Coding)이란 자연어로 의도를 설명하면 AI가 코드를 만들어주는 방식입니다. 기존 프로그래밍이 정확한 문법과 구조를 요구했다면, 바이브 코딩은 어떻게 구현할 것인가보다 무엇을 하고 싶은가에 초점을 맞춥니다. 전통적인 방식 def calculate_average(numbers): if len(numbers) == 0: return 0 return sum(numbers) / len(numbers) 바이브 코딩 방식 (의도 중심) "숫자 리스트의 평균을 계산해줘, 빈 리스트면 0 반환" 완벽한 코드를 한 번에 작성하는 게 아니라, AI와 대화하면서 점진적으로 개선해 나갑니다. 단순히 코드 한 줄을 생성하는 것을 넘어서, 프로젝트 전체 맥락을 이해하고 일관성 있는 코드를 만들어내는 것이 핵심입니다. ...

2025년 9월 17일

springdoc-openapi @ApiResponse 어노테이션의 useReturnTypeSchema 속성

@ApiResponse 어노테이션의 useReturnTypeSchema 속성 컨트롤러 메서드의 반환 타입을 자동으로 추론하여 OpenAPI 스펙의 response schema 로 사용 @Operation(summary = "사용자 조회", responses = { @ApiResponse(responseCode = "200", description = "조회 성공", useReturnTypeSchema = true) })

2025년 6월 26일

Mac zsh 설정

zsh 설치 $ brew install zsh oh-my-zsh 설치 $ sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" $ vi .zshrc source $ZSH/oh-my-zsh.sh 플러그인 설치 zsh-autosuggestions 설치 $ git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions $ vi .zshrc plugins=(... zsh-autosuggestions ...) zsh-syntax-highlighting 설치 $ git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting $ vi .zshrc plugins=(... zsh-syntax-highlighting ...) 테마 설치 Powerlevel10k 설치 $ git clone --depth=1 https://github.com/romkatv/powerlevel10k.git "${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k" $ vi .zshrc [[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh powerlevel10k 설정 후, 커스텀하기 위해 설정파일을 복사하여 수정함. 원본 파일이 어떤건지 까먹었음. 원본파일이 어떤건지 찾아야 함. 최신버전 반영해야 함 ...

2025년 4월 25일

ImageMagick crop

ImageMagick 설치하기 $ brew install imagemagick Shell Script 로 이미지 자르기 $ magick 원본이미지.jpg -crop {가로}x{세로}+{x좌표}+{y좌표} 잘린이미지.jpg ex) $ magick a.jpg -crop 1179x1040+0+420 1.jpg (Old ver) Shell Script 로 이미지 자르기 $ convert 원본이미지.jpg -crop {가로}x{세로}+{x좌표}+{y좌표} 잘린이미지.jpg ex) $ convert a.jpg -crop 1179x1040+0+420 1.jpg

2025년 3월 26일

IntelliJ debug variable json view

IntelliJ debug variable json view new com.fasterxml.jackson.databind.ObjectMapper() .registerModule(new com.fasterxml.jackson.datatype.jsr310.JavaTimeModule()) .disable(com.fasterxml.jackson.databind.SerializationFeature.WRITE_DATES_AS_TIMESTAMPS) .writerWithDefaultPrettyPrinter() .writeValueAsString();

2024년 11월 7일

Hugo 태그 설정

Hugo 기본 설정으로 tags 사용 PaperMod 테마 설정 hugo.yaml 파일 수정 menu: main: - identifier: tags name: tags url: /tags/ weight: 10 content 에 태그 추가 tags: - hugo 참고 링크 Hugo Taxonomies: https://gohugo.io/content-management/taxonomies/ PaperMod wiki: https://github.com/adityatelange/hugo-PaperMod/wiki/Installation#sample-configyml

2024년 1월 12일

Synology NAS ssh 설정

Synology NAS ssh 설정 DSM 7.2.1 기준 제어판 - 터미널 및 SNMP - 터미널 SSH 서비스 활성화 포트 설정 공유기 포트포워딩 Synology NAS 에서 설정한 ssh 포트로 포트포워딩 설정 ssh 클라이언트에서 접속 $ ssh -p [포트] [아이디]@[시놀로지주소]

2024년 1월 5일

IntelliJ SonarLint 한글 이름 사용

IntelliJ SonarLint 플러그인 설치 https://plugins.jetbrains.com/plugin/7973-sonarlint SonarLint 설정 IntelliJ - Settings - Tools - SonarLint - Rules 각 룰 마다 다음 정규표현식 설정 Class names: ^[A-Z][a-zA-Z0-9]*|[A-Z가-힣][a-zA-Z0-9가-힣_]*$ Field names: ^[a-z][a-zA-Z0-9]*|[a-z가-힣][a-zA-Z0-9가-힣_]*$ Interface names: ^[A-Z][a-zA-Z0-9]*|[A-Z가-힣][a-zA-Z0-9가-힣_]*$ Local variable and method parameter names: ^[a-z][a-zA-Z0-9]*|[a-z가-힣][a-zA-Z0-9가-힣_]*$ Method names: ^[a-z][a-zA-Z0-9]*|[a-z가-힣][a-zA-Z0-9가-힣_]*$ Test class names: ^((Test|IT)[a-zA-Z0-9가-힣_]+|[A-Z][a-zA-Z0-9_]*|[A-Z가-힣][a-zA-Z0-9가-힣_]*(Test|Tests|TestCase|IT|ITCase))$

2024년 1월 2일

Legacy 테스트 - Subclass and Override Method

레거시 코드 일를 테스트하기 위해 Subclass and Override Method 방법 적용 Subclass and Override Method 방법 참고 링크: https://youtu.be/Dct4bGKCmI8 테스트하기 어려운 부분이 존재할 때 다루는 기법 1. 레거시 코드에서 테스트 대상을 방해하는 부분을 메소드로 분리한다. 레거시 코드의 의존성을 분리하기 위해 메소드 단위로 코드를 분리 2. 분리한 메소드를 protected 로 변경한다 3. 테스트하고자 하는 클래스를 상속받아 테스트용 클래스를 만들고, 분리한 메소드를 재정의 한다. Stubbing 실제 동작과는 다르게 테스트 코드를 쉽게 만들기 위한 작업 4. 테스트용 클래스를 이용해서 테스트 대상을 테스트하는 코드를 작성한다.

2023년 7월 28일

[re] Hello World

[re] Hello World [re] Hello World by GitHub Pages & Hugo install golang $ brew install golang install Hugoo https://gohugo.io/installation/macos/ $ brew install hugo github 저장소 생성 duddns.github.io: GitHub Pages 저장소 dontkr-hugo: Hogo 소스 저장소 Create a site $ hugo new site dontkr-hugo $ cd dontkr-hugo $ git init $ git submodule add -b master https://github.com/adityatelange/hugo-PaperMod.git themes/PaperMod $ git submodule add -b main https://@github.com/duddns/duddns.github.io.git public $ echo "theme = 'PaperMod'" >> hugo.toml $ hugo server configure baseURL = 'https://dont.kr' languageCode = 'en-us' title = 'DoNT - Do Not Think!!!' theme = 'PaperMod' publish GitHub Pages 저장소와 Hogo 소스 저장소 두 번 push 해야 함 ...

2023년 7월 10일