오블완22 작심삼주 오블완 챌린지 끗 작심삼주 #오블완 챌린지 끝!!3주동안 하루도 안빼먹고 블로그 포스팅을 했다ㅎㅎㅎ이제... 스마트모니터 M7, 애플워치10, 아이폰16 Pro 중 1개를 받는 일만 남았군!! 2024. 11. 28. Kotlin에서 기존 객체를 다른 객체로 변환하는 다양한 방법 백엔드를 개발하다 보면 기존 객체를 DTO(Data Transfer Object)로 변환하거나 다른 클래스 형태로 매핑해야 하는 일이 자주 발생한다예를 들어, 클라이언트 요청에 맞춘 데이터 포맷 변경, API 응답을 위한 직렬화 객체 변환, 또는 엔티티와 DTO 간 데이터 매핑 등...이 글에서는 Kotlin에서 객체를 변환하는 다양한 방법을 소개하고, 각 방법의 장단점을 비교해 보려한다목표Person -> PersonDto기본적으로 동일한 필드 구조를 가진 클래스 간 변환Person -> PersonExtraDto추가 필드가 포함된 클래스에 데이터를 매핑PrivatePerson(private 필드) -> PersonDto접근제어자가 설정된 필드를 매핑성능 테스트예제 클래스먼저, 예제에서 사용할 간단한 .. 2024. 11. 27. NEXT-STEP 도메인 주도 설계의 사실과 오해 수강 후기 강의 정보도메인 주도 설계의 사실과 오해 6기 수강벌써 1달정도가 지났지만, 약간의 거금(?)을 들여 Next Step의 코스 중 도메인 주도 설계의 사실과 오해 6기를 수강한 후기를 풀어본다10/27(일), 11/3(일) 2주. 2회. 각 오후2시~6시(4시간) 총 8시간에 걸쳐서 우아한형제들 테크살롱에서 오프라인으로 조영호님의 강의를 들었다NEXT STEP에서 유명한 강의는 자바지기, 큰 박재성님의 TDD 강의가 아닐까한다! 난 이 강의는 안 들어봤고, 이번에 처음 수강신청했다조영호님은 , 책을 만드신 저자분이시다!!강의 결제를 하고나서, Next Step으로 로그인을 하고 개인계정으로 들어가면 이렇게 강의 자료가 있는 모습을 볼 수 있다YouthCon때 왔었던 테크살롱을 또 와보니 신기했다 강의장.. 2024. 11. 26. Hibernate(JPA) 탐구 - 1편(feat. FlushEvent와 Action Queue) 일단 문제를 함께 풀어보자ㅎㅎUser엔티티부터!(사실 서적에서는 엔터티라고 부르던데..난 엔티티가 편하다)QuizGivenJPA를 공부하셨고 구현체인 Hibernate의 ActionQueue에 대해서 들어보셨다면.. 다음 코드의 성공/실패 결과를 예측해보자 문제1테스트코드라 사실 뭐..given , when, then// given...// when & thenval exception = assertThrows { ...}테스트코드라 사실 뭐..given , when, then 그리고 예외를 잡는부분까지 있어야하지만 간단하게 저 테스트가 초록불이 뜰지 주황/빨간불이 뜰지 정도만 예측해보자 답은?답은.. ActionQueue로 혼동을 주긴 했지만, 이건 delete로 인해 준영속화된 엔티티(id가 nu.. 2024. 11. 25. Follow the procedure - 과정을 지켜라(feat. 5whys) 몇몇 신입 개발자들을 보면 쿠버네티스, 레디스 분산락을 활용한 동시성 제어, ArgoCD를 이용한 무중단배포, Spring Batch 사용 등 뭔가 "용어"에 취해있다는 느낌을 받을 때가 있다쿠버네티스를 하기에 앞서 리눅스/도커는 깊게 아는가? 분산락에 레디스를 적용했다면 Redisson, Lettuce중에 어떤 방식으로 사용했는지, 락이라면 MonitorLock/ReentrantLock이란 것도 아는지/쓰면 장점이 뭔지 왜 레디스 분산락이어야만 하는지, ArgoCD를 사용했다면 어느 환경에서 사용했는지 어떤 배포방법을 사용했는지, Spring Batch를 사용했다면 실패하는 것들은 어떻게 처리했는지 재시도 방법은 있는지 OOM같은 이슈는 없었는지 등등..부트캠프에서 하는 발표를 들어도 동시성 제어 ->.. 2024. 11. 24. JPA 특징 + 1차 캐시(feat. EntityManager.clear()) 먼저 JPA를 사용할때의 장/단점, 특징, 용어 등을 알아야 한다 JPA란?JPA: 데이터베이스와 객체지향 프로그래밍 간의 매핑을 제공하는 ORM(Object-Relational Mapping) 기술특징데이터베이스를 객체로 매핑하여 SQL을 직접 작성하지 않아도 데이터베이스 작업이 가능영속성 컨텍스트를 통해 엔티티의 상태를 관리트랜잭션 범위 내에서 1차 캐시를 통해 데이터베이스 부하를 줄이고 엔티티의 동일성을 보장. 이 글에서는 JPA의 1차 캐시(First Level Cache)를 중심으로 다룬다 캐시, 캐싱이란?캐시(Cache): 데이터나 값을 미리 복사해 놓는 임시 장소캐싱(Caching): 캐시된 영역에서 데이터를 저장하거나 조회하는 접근 방식 1차 캐시란?1차 캐시(First Level Cach.. 2024. 11. 23. KafkaKRU(Kafka 한국사용자 모임) 2024 2nd Meet-up 후기 행사 모집글행사 모집글을 페이스북의 KAFKA 한국 사용자 모임 그룹에서 먼저 봤다냉큼 들어가서 신청을 했다. 참가비는 5000원이었다*고승범님은 위의 2018년에 [카프카, 데이터 플랫폼의 최강자], 2021년에 [실전 카프카 개발부터 운영까지]라는 책을 쓰신 저자님이시다 추후에 보니 토비님도 잠시 오시기로 했나보다원래 20:00시까지였었던 행사가 20:20으로 늘어나면서 토비님이 잠시 마이크를 잡는 시간이 추가됐다요번 밋업 참가를 계기로 토비님께 잠시 인사드리러 가기로 마음먹었다놀라시지 않게 Toby님이 운영중이신 디스코드방에 하루 전날 말씀을 드렸다!행사당일(24.11.21)을지로입구역을 나와서 조금 걷다보니 어느새 행사장소에 도착했다조금 늦어서 오프닝때가 지나서 들어왔다..😂행사관련 직원분께서 .. 2024. 11. 22. MySQL Select 쿼리 실행 순서 알아보기(feat. EXPLAIN, ANALYZE) 조금은 쉬운 Q&A일수도 있다하지만 종종 면접에도 나오는 질문이기때문에 손으로 직접 실행해보면서 알아보기로 한다 Q. SELECT 쿼리문 실행 순서일단 개발자의 숙명: 검색을 이용하면 결과는 이렇게 나온다(요즘엔 구글링에서 프롬프팅으로 넘어가는 추세이지만...) FROM AND JOIN🔽WHERE🔽GROUP BY🔽HAVING🔽SELECT🔽ORDER BY🔽LIMIT 테스트 테이블 & 데이터 준비일단 이걸 검증하기 위한 employee, department_info 테이블 2개를 만들었다예제 쿼리이런 느낌들로 쭉 쿼리를 실행해볼 예정이다/* FROM */SELECT *FROM employee;일단 employee 테이블의 전체 데이터가 출력되는 쿼리를 실행시켰다* 쿼리 실행결과가 에디터 내부에 나.. 2024. 11. 21. 올해는 Lucky Boki의 해 🍀 뭔가 IT 블로그이기때문에 여러 사람들에게 양질의 IT 지식을 전파해야하지만... 이번 글은 뭔가 쉬어가면서 최근에 운이 좋았던 순간들을 적어볼까 한다 참고로 운도 운이지만 내가 한가지를 시작하면 진짜 오랫동안 꾸준~~~~히 하기때문에 이런 행운들이 따라주는거 아닌가 싶다 - 오쏘콘 행사 추첨 3등 당첨 -> Devfest 2024 Songdo VIP 티켓(2인) - 항해99 커밋 캘린더 증정 이벤트 당첨 - 내 블로그를 꾸준히 보고 계신다는 팬(??)분과의 대화E-mail과 linkedin DM으로 각각 다른분이 연락을 주셨다 아직 주니어에 불과하고, 모르는것 투성인데....ㅠ 내가 백엔드 -> 풀스택 -> 백엔드&데봅스 커리어를 왔다갔다하느라 카테고리에 하나에 대해 A-Z까지 다룬게 없는데도 불구하고.. 2024. 11. 20. it, 그것을 찾아서 코틀린에서 람다식을 사용할때 인자가 하나인 경우에 it으로 사용할 수 있다 2024년 11월 19일 기준 코틀린 최신버전인 2.021문서를 살펴보면 위의 내용이 나와있다it: implicit name of a single parameter-> 번역: 단일 매개변수의 암시적 이름 it의 활용 예시를 들기 위해.. 간단한 코드를 만들어봤다* 간단한 포스팅용 코드이므로, Assertion이 없다고 불편해하지 마시라!ㅠ. 학습용 테스트도 테스트의 일부일 수 있는것처럼package bokiimport org.junit.jupiter.api.Testclass ItTest { data class Person( val name: String, val age: Int, ) @Te.. 2024. 11. 19. 오쏘콘(Open Source Conference) 참여 후기(feat. Pay it forward) 잘 지내셨나요? 이번에는 2024년 11월 16일 토요일에 다녀왔던 오픈소스 관련 개발행사에 다녀온 후기를 올려봅니다!여기서부터는 음슴체 반말체로 진행할 예정입니다..ㅎㅎ 지난주 토요일에 인천스타트업파크 6층 커넥트홀에서 열린 오픈소스 컨퍼런스에 참여했다Festa라는 플랫폼을 통해 행사를 신청했고, 입장권은 3만원이었고, 139명이나 신청한 중 규모의 행사였다!!판교에 위치한 스타트업캠퍼스의 인프랩은 가봤는데, 인천에도 스타트업파크가 있는지 처음 알았다!한분한분 너무 대단하신 분들의 발표를 들을 수 있다 대략 내가 사는 강북구에서 행사장까지 소요되는 시간은 약 2시간 30분...!!No Car, So Sad..🥺 어쨌든 환승을 포함해 약 2시간 40분정도 걸려서 도착한 이곳...!!건물이름이 인스타였는.. 2024. 11. 18. Naver DAN24 행사 후기 올해 대형 기업들의 컨퍼런스들이 연달아 이어지고 있다나는 그 중 네이버의 DAN24 행사에 선착순으로 신청을 했었는데 운좋게 Day1, Day2 둘 다 당첨되게 되어 이번에 월요일, 화요일에 네이버 행사를 다녀온 이야기를 풀어볼까한다 What is DAN?행사기간: 2024.11.11~2024.11.12 Day1코엑스에 도착해서 네이버페이 월렛에 있는 NFT로 인증을 하고 입장을 했다등록을 마치면서 제공해주는 담요를 받았다위치는 Coex Grand Ballroom등록을 끝내고 돌아오니 대형 디스플레이가 반겨줬다로켓..단! 아니지 네이버..단!일단 급하게 세션에 참여하는 것보다, 1/2/3F를 다 가보고 부스를 방문해보는 것을 먼저 하기로 했다나중에 알고보니 2층에도 있었지만, 3층에서 먼저 발견하게 된 .. 2024. 11. 17. Redis란? RedisRemote Dictionary ServerOpenSource, In-memory Data Storemade by ANSI-C * ANSI C(C언어)ANSI C, ISO C, 표준 C(Standard C)는 미국 국립 표준 협회(ANSI)와 국제 표준화 기구(ISO)가 출판한 C 프로그래밍 언어의 이후 표준들을 가리킨다. 역사적으로 이 이름들은 오리지널의 가장 잘 지원되는 버전의 표준(C89 또는 C90)을 가리켰다 C (프로그래밍 언어) - 위키백과, 우리 모두의 백과사전위키백과, 우리 모두의 백과사전. C패러다임명령형 프로그래밍 (절차적 프로그래밍), 구조적 프로그래밍설계자데니스 리치개발자데니스 리치, 벨 연구소발표일1972년최근 버전C17최근 버전 출시ko.wikipedia.org 특징K.. 2024. 11. 16. JPA Query 로그 출력(feat. 물고기를 주지말고, 물고기 잡는 법좀 알려줘라..) 블로그에 텍스트 복사/붙여넣기를 막은 이유가 있다내가 정성들여 쓴 IntelliJ 플러그인 25가지 추천 글을 문자 그대로 토씨 하나 안바꾸고 크롤링을 해서 자기 블로그에 그대로 올리는 사람이 있는가하면, 그대로 복붙해서 출처없이 올리는 걸 봤다그때 충격이었다 또한 블로그를 하는 사람들을 무시하는 사람들의 말을 들어보면, 블로그를 한다고 유세떤다, 남의꺼 복붙해서 가져다 쓰는 것이라 말한다나도 어느정도는 동의한다. 양질저질 품질로 따졌을 때 단순히 에러를 해결하는 방법 1줄, 2줄 이정도만 올리는 저질글들이 많다 하지만....시간이 지나감에 따라 21년에 쓴 글이 25년에 될때는 버전 업이 돼서 정답이 아닐지라도 최대한 보는 사람들을 위해서 간단한 프로젝트를 만들어보거나 개인프로젝트에 적용시켜서 테스트를.. 2024. 11. 15. SDF: Seoul Design Festival 2024 나들이 본업은 개발자이고, 개발일을 좋아하긴 하지만...개발자는 코딩, 프로그래밍만 하지 않는다먹고 자고 쉬고... 뇌도 휴식을 취해야 기억력도 더 좋아지고 치매도 예방되고 그렇다고 한다! 뭐, 위에 말한건 그냥 겉치레용이고.. 개발과 비슷한 열정변태들이 모인 디자이너들의 영역을 체험해보기 위해 Seoul 코엑스에서 열린 Design Festival 2024에 다녀온 이야기를 써보려고 한다(사실 2023년에도 갔다온.....ㅎㅎ)2024.11.13(수) ~ 2024.11.17(일)까지 열린 행사였는데, 첫 날인 수요일에 다녀왔다! SDF: Seoul Design Festival 20241층에서 QR코드로 입장체크를 하고 손목에 차는 팔찌를 받고, 3층 입구에서 팜플렛을 받아서 입장했다 귀엽고, 요상한 조형물도 .. 2024. 11. 14. RDB라고 해서 FK가 꼭 필요할까? 퇴사를 하면서 Off-Boarding 당시 받은 백엔드 피드백들이 있다오늘은 그 중 하나인 외래키에 대해서 작성해보려고 한다 나는 그 당시 1인 백엔드 - 코틀린 스프링부트 개발자로 스키마설계까지도 참여를 했었다간단한 프로젝트였기때문에 테이블은 10개정도 나왔었다그 중 현실화를 하면서 모델링거쳐 1:N 이런 관계가 들어간다면 당연하게도 외래키도 있는 형태로 설계를 했었다 단순히 "A가 만들어지기 위해서는 B도 존재해야 한다"는 건 진리일 수 있다"Order(주문)이 만들어지기 위해서는 User(사용자)가 필요하다"는 사실이다로그인한 유저가 없으면 주문을 할 수 없는 것은 당연하기 때문.. 그러면 수 많은 기업들이 정말 외래키를 사용하고 있을까? 확답은 못하겠지만 No쪽에 가깝지 않을까 싶다소위 네카라쿠배.. 2024. 11. 13. 11월 가평 가족 여행 아버지의 건강 이슈 등으로 인해 주말에 가족 여행을 다녀오기로 했다추천 장소는 가평, 양평!!1박 2일. 5인그 중 좋은 숙소를 예약한 가평으로 정했다! 숙소청평호 뷰가 보이는스위티안 호텔&리조트참고: 차량 없이는 이동이 어려움 식사출발지 - 강북점심 식사 - 강마을다람쥐 덕소점저녁 - 호텔 레스토랑 다음날 아침 - 컵라면점심 - 설렁탕&소고기무국저녁 - 도착 출발 진짜 대존맛!!최애: 도토리 전 샐러드, 2순위: 도토리 해물파전너무 맛있었다..ㅠ 침쥬륵 방2개를 예약했었다숙소는 복층으로 되어있고, 변기가 있는 화장실 1/2층, 샤워실 2층. 침대 2층1층은 TV및 발코니, 의자, 화장대, 침구류 등이 있었다8월까지만 바베큐장을 운영하고 현재는 운영하고 있지 않다고 했다바로 옆에 바다는 아니지만 큰 강이.. 2024. 11. 12. 인프런 멘토링 후기 한참 전에 있었던 일이지만...인프런 멘토링을 신청해서 받아본 경험을 짧막하게 공유하려고 한다네이버에 재직중이신 분이셨고, 경력은 미들급이셨다! 비용은 1시간에 35,000원이었던걸로 기억한다! 상담신청한 했던 내용1. 주니어->미들 백엔드 개발자로서 갖춰야 할 역량2. 네카라 라인의 회사에서 경력직을 뽑을 때 중요시하는 부분이 있는지3. 이력서에 대한 피드백카메라는 off, 마이크는 on인 상태로 상담을 해주셨고 상담을 시작하기 이전에 카카오톡으로 제가 현재 처한 상황, 제 이력서 링크, 상담받고 싶은 내용을 매우매우 상세하게 전달드렸다 정말 상세하게 답변해주시고 공감도 해주시고 냉정한 조언도 해주셨었던 기억이 난다노션에 엄청 많은 내용들을 적었지만.. 공개할 수 있는 부분만 말해보면.. 지금까지의 얘.. 2024. 11. 11. 네이버 행사 D-1 [DAN 24] TEAM NAVER CONFERENCE `DAN 24`왜 이름이 DAN인가 궁금했었는데... 플랫폼을 순 우리말로 하면 DAN이라고 표현한단다 이번 해에 여러 행사들에 참여했지만 TOSS의 SLASH24, KAKAO의 IF KAKAO 2024, 우아한형제들의 WOOWACON 2024에는 참가하지 못했었다 그래도 팀 네이버 행사에 Day 1, 2 둘 다 참가하고 기술워크샵까지 참석하게 되어서 매우 기쁘다 두근두근...!! 다녀와서 또 이런저런 재미난 이야기 보따리를 올릴 예정이다! 가보자고! 2024. 11. 10. 주말운전 - 네카넥 가보기(네이버,카카오,넥슨) 주말에 운전연습도 할겸, 미래에 판교에 있는 회사에 재직하면 집에서 어떻게 운전해 가야할지.. 미리 길을 익혀놓기 위해 판교로 드라이빙을 하러 나왔다 넥슨먼저 넥슨부터 들려봤다킹슨, 갓슨, 돈슨... 등 몇개의 별명을 갖고 있는 NEXON이다주차장은 되게 깔끔했으며, 회사로 올라가는 입구에 LOGIN이라는 게임회사다운 문구를 볼 수 있었다!ㅋㅋㅋ넥슨 직원이 아니므로... 회사로 들어가보진 못했고, 유료주차장이었지만 회차가 있었기에 비용을 지불하지 않고 나올 수 있었다!!다른 큰 회사도 이렇게 무료회차를 지원해주는건가 싶었다 카카오 그 다음으로는 카카오AGIT(카카오아지트)를 방문해봤다가는길에 아디다스를 패러디한 아이타스를 뒤에 붙이고 다니는 차를 볼 수 있었다 ㅋㅋ; 피식한 내가 밉다카카오아지트는 실 근.. 2024. 11. 9. 이전 1 2 다음