해변에서 코딩하기
환영합니다! 개발자의 인생을 다룹니다. 모든 문의 및 질문은 댓글에 남겨주세요 :)
최신 노트
- GPU 커널(GPU Kernel) GPU 커널보통 CPU에서 실행되는 함수는 그냥 함수(Function)라고 부른다. 반면, GPU에서 실행되도록 작성된 함수는 특별히 커널(Kernel)이라고 한다.GPU는 수천 개의 스레드를 동시에 실행할 수 있기 때문에, 커널을 작성해주면 각 스레드가 같은 코드를 실행하면서 서로 다른 데이터를 처리한다.예를 들어 배열의 모든 원소를 제곱한다고 해보자.- CPU: for 루프로 하나씩 계산- GPU: 커널을 실행하면 수천 개의 스레드가 동시에 각 원소를 제곱한다.병렬 처리에 특화되어있어 GPU가 대규모 연산에 강력한 성능을 발휘한다. GPU 커널 구현GPU 커널은 하드웨어와 플랫폼에 따라 여러 방식으로 작성할 수 있다.CUDA (NVIDIA): C/C++ 확장 문법, 가장 널리 쓰임 딥러닝, 과학 연산.. 더보기
- Git 커밋 메시지 잘 쓰는 법 취미로 프로젝트를 하든, 팀 단위로 협업을 하든 커밋 메시지를 잘 남기는 것은 진짜 귀찮지만 중요한 일이다. 나중에 git log를 봤을 때도 바로바로 이해가 되고, 코드 리뷰할 때도 훨씬 편하다. 제목 쓰는 방법50자 이내로 짧고 명확하게끝에 마침표 안 붙임영어면 명령형 현재 시제 (Add, Fix, Update…)한국어면 추가, 수정, 삭제 같은 간단한 동사 위주 본문 쓰는 방법제목만으로 부족하면 본문에 적는다.무엇을/왜 했는지 위주어떻게 했는지는 코드 보면 알 수 있으니 생략 커밋 타입Conventional Commits 방식 기준이다.feat: 새 기능fix: 버그 수정docs: 문서 변경style: 포맷/세미콜론/화이트스페이스 (로직 변경 없음)refactor: 리팩터링(동작 동일)perf: .. 더보기
- [Svelte] 개발 환경 세팅하기 취미로 프론트 하나 배워놓고 싶었는데 성능도 좋고 배우기도 쉽다고 하여 바로 시작해본다. Node.js 설치 Svelte는 자바스크립트(JavaScript) 기반 프론트엔드 프레임워크이다. 그래서 Node.js가 필요한데, 먼저 혹시나 설치되어있는지 확인한다. Node.js: 자바스크립트 실행 환경 (필수)npm: Node.js에 기본 포함되는 패키지 매니저→ Node.js 설치 시 자동으로 깔림 node -vnpm -v 둘 다 버전 숫자가 뜨면 정상. 넘어가면 된다. 아니면, https://nodejs.org/ 여기서 다운받고 온다. 프로젝트 만들기npx sv create your-proj-namecd your-proj-namenpm run dev -- --open 위와 같이 실행하면 아래의 예시.. 더보기
- [Clean Architecture] - SOLID 원칙 DIP (5) 오늘은 SOLID 원칙의 마지막, DIP 원칙을 알아본다. SOLID 원칙 시리즈해당 시리즈는 로버트 C.마틴의 Clean Architecture 책을 보며 쉬운 이해를 위해 ChatGPT와 함께 공부한 내용을 정리해 놓은 글입니다. SRP: 단일 책임 원칙OCP: 개방-폐쇄 원칙LSP: 리스코프 치환 원칙ISP: 인터페이스 분리 원칙DIP: 의존성 역전 원칙DIP: 의존성 역전 원칙- 고수준 모듈이 저수준 모듈에 의존하지 않고, 추상화에 의존하도록 만드는 것- 구체적인 클래스(저수준 구현)에 의존하지 않고, 인터페이스(추상화)에 의존하도록 설계 이번에도 마찬가지로 파이썬 예제를 살펴보며 이해해보자. 아래의 코드에서 Computer는 Keyboard에 의존한다. 만약 컴퓨터가 키보드가 아닌 다른 in.. 더보기