오늘은 Github issue 내용을 Github 파일로 동기화 시키는 Github action 개발기를 이야기 해볼까 해요.오늘 이야기 할 Github action은 Marketplace에서 확인 및 사용할 수 있어요. Issue to File Sync - GitHub MarketplaceSync GitHub issues to files with customizable paths and labelsgithub.com 개발 동기 개발자들은 Github repository에 문서를 모아두기도 하고, 블로그를 운영하며 글을 작성해두기도 해요.저 또한 마찬가지였어요. 문서를 정리해 Github repository에 올려두기도 하고(지금은 미사용 중이긴 하지만) github.io 블로그가 있어 해당 글을 작성할..
이 글을 통해 SBOM 대한 생각을 정리하고, 여러 툴들을 이용해 SBOM을 만들며 보안 이슈를 확인해볼까 해요.간단히 만들어 보는 과정만을 담고 있으므로 SBOM 생성/분석 툴들의 상세한 옵션들은 다루지 않을게요. SBOM이란 무엇일까요?SBOM은 Software Bill of Materials의 약자예요.Maven을 사용해보신 개발자라면 BOM이라는 단어 그리고 Bill of Materials는 많이 접해보셨을 텐데요.단어 뜻 그대로 "자재명세서"를 의미해요. '어떤 소프트웨어가 무엇으로 이루어져있지?'한다면 Bill of Materials를 통해 '아 이런 소프트웨어들이 내포되어 있구나!'라는 것을 알 수 있어요.이러한 Maven BOM을 이용하여 여러 라이브러리들의 의존성 버전을 관리하고, 라이브..
정석'정석'이라고 하면 무엇이 먼저 떠오르시나요?저는 '수학의 정석' 책이 생각납니다.뭐랄까... 당연히 정수를 모아놓은 책이여서 좋은 책이긴 한데...개인적으로 사전(Dictionary) 같은 느낌이라 손이 쉽게 가지 않던 책이었습니다.(막상 내용은 사전은 아니였지만요) 이번에 읽은 책은 '소프트웨어 설계의 정석' 입니다.설계에 대한 책을 읽어본 적은 없었던 것 같아 도전을 하게 되었는데요.책 외관을 보았을 때 '수학의 정석'과 같이 투박한 형태는 아니여서 안심하며 책을 펼치게 되었습니다. 소프트웨어 공학책을 읽다보니 소프트웨어 설계를 어떻게 할 것이며, 어떤 방법들이 있고, 외/내부 설계 등책에서 다루는 내용들이 대학 시절 수강했던 '소프트웨어 공학' 과목과 겹쳐서 그 때 기억이 많이 났습니다...
왜 읽게 되었는가법적 용어는 언제나 어렵다.법적 이슈에 휘말려 용어를 깊게 학습한 경험은 없지만청약을 신청하면서라던지 전세 집을 알아보며 접한 주택법, 주택임대차보호법 등일반인이 읽어서 이해하기엔 쉽지 않다. 같은 한글과 한국어지만, 외국어 같달까...그럴때면 포기하고 그냥 내 멋대로 이해하곤 했는데... 만약 실제로 법적인 이슈가 있었다면?변호사 사무실에 찾아가는 등 돈을 쓰며 어떻게든 남의 힘을 빌렸을 것 같다. 그러던 중 해당 책의 제목이 눈에 띄었다. AI 변호사라니... 남의 힘이지만.... 무료잖아? (제일 중요함)더욱이 요즘 업무에서도 GPT를 잘 활용하는 나로써 미래에 법적인 문제에 대응하기 위해 GPT를 이용한 변호법을 먼저 익혀두면 좋을 것 같았다. 책의 줄거리 및 추천 대상책의 줄거리..
앞선 글에서 package 구조, Java access modifier 그리고 ArchUnit을 통해 Hexagonal Architecture를 구현해보았다.마지막에 " [1] 개발 중엔 아직 실수할 수 있다, [2] 테스트를 수행하지 않는다면기존의 문제점은 계속해서 발생한다." 문제점들을 이야기했는데이번 글에서는 멀티모듈, JPMS, Kotlin을 이용해서 이 문제들을 해결해보고자 한다. 3. Multi module (멀티모듈)로 구현하기 Chapter 02: Multi module by KimDoubleB · Pull Request #2 · KimDoubleB/clean-architecture-example github.com 결국 ArchUnit으로는 잘못된 의존을 막을 수 있는데 큰 도움이 되..
서버 개발자들간에는 논쟁이 일어날 수 있는 주제가 여러가지가 있다.그 중 대표적인 두 가지를 뽑자면 “Monolithic과 MSA”이고, 나머지 하나가 오늘 이야기 할 “Clean/Hexagonal Architecture”이다. 나는 보통 애플리케이션/프로젝트를 구성할 때 별 다른 고민없이 Layered Architecture로 구성해왔다.그러는데는 아주 지극히 개인적인 여러 이유가 있다.익숙하다. 나에게도 익숙하고, 남에게도 익숙하다. 러닝커브가 낮아 누가와도 개발할 수 있다.개발이 빠르다. 익숙해서 개발이 빠른 것도 있지만, 계층별로만 역할이 나뉘고 의존성/구현 방향이 단순해 생성되는 클래스/파일의 양이 적어 결과물을 보기까지 개발속도가 빠르다.Layered Architecture 구조의 단점이 와..
Kent beck 켄트 백 켄트 벡 - 위키백과, 우리 모두의 백과사전위키백과, 우리 모두의 백과사전.ko.wikipedia.org 켄트 벡이라는 이름은 개발자들 사이에서 큰 영향력을 지니고 있다.XP(익스트림 프로그래밍)와 TDD(테스트 주도 개발) 등을 창안하고 이를 널리 전파하여 수많은 개발자들에게 지대한 영향을 미쳤기 때문이다. 많은 개발자들이 그를 멘토이자 영웅으로 여긴다. 하지만 나는 그의 이론과 책을 많이 접하지 않은 사람으로 거리감이 있다. XP와 TDD가 차차 알려지던 시절의 개발자들에게는 더 큰 의미로 다가왔겠지만 말이다.한 번 쯤 그의 책을 읽어보고 배워보고 싶다는 생각은 있었지만, 오래된 책들을 책장에서 찾아 읽어보기는 쉽지 않았다. 하지만 새로운 책을 구매해 펼치는 것은 쉽지 않은..
[GPT-4를 활용한 인공지능 앱 개발]을 읽고 GPT/LLM에 대한 관심 ChatGPT가 공개되고 많이 사용되면서 여러 창의적인 서비스들이 등장했다. 무언가 익숙한 것들을 반복해 만들어내던 생태계에 GPT/LLM 한 스푼 넣음으로서 다채로워진 것 같다고 느꼈다. 더 나아가 유저 뿐 아니라 개발자들의 경험(DX) 측면에서도 많은 영향을 주었다. 코드 생성 및 리뷰, 기능 찾기, 커밋 메시지 생성기 등 개발 과정에 있어 사소한 부분부터 '이게 가능해?'라는 부분까지 말이다. 그렇기에 내 개발 패턴에 맞게 GPT/LLM을 이용한 서비스를 만들어봐야지 라는 생각을 시간 날때마다 했던 것 같다. 나만의 '개발해볼만한 것' 목록을 작성할 때마다 맨날 들어가있는 녀석이다. 하지만 실상 개발하기는 어려웠다. 내부 개..
- Total
- Today
- Yesterday
- python
- MySQL
- Clean Architecture
- 하루
- WebFlux
- hexagonal architecture
- boj
- Algorithm
- c++
- java
- k8s
- tag
- 쿠버네티스
- 알고리즘
- 백준
- gradle
- docker
- container
- 일상
- Log
- Spring
- Intellij
- jasync
- 로그
- 클린 아키텍처
- Spring boot
- Kubernetes
- 비동기
- Istio
- HTTP
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |