전체 글

개발, PO, PM, 기획과 관련된 서비스 관련 업무에 관심이 있습니다. 또한 성장,교육과 관련된 주제에 대해서도 관심이 많습니다. 티타임을 좋아하는 사람으로써, 혹시 티타임에 관심이 있으신 분은 ksy90101@gmail.com로 메일 보내주시면 감사하겠습니다 :)
· Backend/Java
서론 이번에 Java를 다시 학습을 목표로 미션을 만들어서 진행중에 있습니다. 그 첫번째 미션은 “숫자야구게임”을 현재 구현중에 있는데, 여기서 핵심적인 개념 중에 1~9까지의 숫자중에 중복되지 않는 3개의 숫자를 랜덤으로 뽑는 기능에 대해서 고민하던 중에 두가지 방법을 찾아 두가지 방법에 대해서 이야기를 해보려고 합니다. Collections.shuffle을 사용해서 subList로 3개의 값을 추출 Collections.shuffle() 은 리스트의 모든 요소를 랜덤으로 섞는 작업을 하는 메서드입니다. public static void shuffle(List list) { Random rnd = r; if (rnd == null) r = rnd = new Random(); // harmless rac..
서론 최근 회사에서 하나의 DB를 두개의 DB로 분리하는 멀티 DB의 적용을 진행하고 있습니다. 그 작업을 진행하면서 가장 먼저 한 작업한 일은 각각의 DB에 들어가 있는 테이블들이 FK로 연결되어 있는 부분을 체크하고 FK를 해제해야 하는 것을 해제 해야 하는 일이였습니다. 1번 DB에 A테이블, 2번 DB에 B 테이블이 있다고 했을때 A테이블에 B테이블의 FK가 있을 경우 2번 데이터베이스로 이전을 하지 못하며, 사실상 FK자체를 적용할수가 없다고 생각해주시면 좋을거 같습니다. FK(Foreign Key)란? 외래키라고 부르며, RDBMS에서 관계를 지정할때 사용합니다. FK를 사용하는 이유는 FK와 PK간의 일관성을 유지하기 위함입니다. 외래키 설정 방법은 아래와 같습니다.여기서 child_tabl..
💡 원본글 : https://thorben-janssen.com/implement-soft-delete-hibernate/ How to implement a soft delete with Hibernate Hibernate supports a set of annotations that allows you to implement a soft delete with minimal coding effort. thorben-janssen.com 일부 응용 프로그램에서는 데이터베이스에서 레코드를 영구적으로 삭제하고 싶지 않거나 삭제가 허용되지 않을 수 있습니다. 그러나 더 이상 활성 상태가 아닌 레코드를 삭제하거나 숨겨야 할 필요가 있습니다. 예를 들어, 여전히 사용 중인 다른 비즈니스 객체에 연결된 사용자 계정을..
💡 원본글 : https://towardsdev.com/data-transfer-object-dto-in-spring-boot-c00678cc5946 Data Transfer Object (DTO) in Spring Boot Explore the benefits of using Data Transfer Objects (DTOs) in Spring Boot, with examples including manual DTO creation, ModelMapper, and… towardsdev.com 이 글에서는 Spring Boot에서 데이터 전송 객체(DTO)의 이점을 탐구하며, 수동 DTO 생성, ModelMapper, Lombok을 포함한 예제들을 살펴볼 것입니다. Photo by Joshua Sorti..
💡 원본 글 : https://blog.appsignal.com/2021/07/07/general-ruby-on-rails-problems-and-takeaways.html General Ruby on Rails Problems and Takeaways | AppSignal Blog In this last part of the Rails Patterns and Anti-patterns series, I'll be going over the most common problems I've encountered while building and shipping Ruby on Rails applications. blog.appsignal.com Ruby On Rails 패턴 및 안티 패턴 시리즈 마지막 파트에 ..
💡 원본 영상 : https://www.youtube.com/watch?v=WVvFRh1vGv8 세미나 내용 동기유발 인간이 어떤 목표의 달성을 위해 노력하게 하는 계기를 마련해주는 것, 그것을 PM이 어느정도 해줘야 한다. 왜냐하면 PM은 개발자에게 업무를 요청하는 일을 많이 하게 됩니다. 이때, 개발자의 능력을 100% 끌어내는것. 이게 바로 PM에게 되게 중요한 역량이라고 한다. 그렇다면 나쁜 PM은 이 과정에서 어떻게 행동할까요? 일반적으로 PM은 다른 분들과 다르게 가장 먼저 시작하게 되고 고민하고 정리하기 시작합니다. 그러면서 자연스럽게 나의 일이 되는데, 그 다음에 잘 정리한뒤에 그냥 개발자에게 툭 던지게 됩니다. 이때, 툭 던지는 과정에서 단순히 PM은 개발자들에게 시키게 되고, 개발자들은..
💡 원본영상 : https://www.youtube.com/watch?v=kmUneexSxk0 세미나 내용 도메인 지식을 탐구하고, 문제 영역과 해결 영역을 좁히고 분산하여 복잡한 비지니스를 문제를 해결하는 방법을 소개합니다. 해당 세미나의 대상은 아래와 같습니다. 미리 핵심 요약을 이야기 해보면 아래와 같습니다. 문제 영역 탐구 위의 글을 읽고 해결책을 먼저 찾으려고 한다면, “엘리베이터의 속도를 높인다.”, “새로운 엘리베이터를 만들어 추가한다.”, “짝수층과 홀수층의 엘리베이터를 분리한다”로 정리할 수 있다. 그러나 이런 답을 먼저 하기 전에 누구의 문제인지 / 어떤것이 문제인지 / 왜 문제인지에 대한 질문을 먼저 던지는 것이 좋다. 앞서 나열된 해결책들은 다양해 보이지만, 모두 “엘리베이터 사용자..
💡 원본글 : https://blog.appsignal.com/2021/04/14/ruby-on-rails-controller-patterns-and-anti-patterns.html Ruby on Rails Controller Patterns and Anti-patterns | AppSignal Blog In this part of the series on Rails patterns and anti-patterns, we are going to analyze the final part of the MVC (Model-View-Controller) design pattern — the Controller. blog.appsignal.com Ruby On Rails 패턴 및 안티 패턴 시리즈의 네 번째 편..
💡 원본글 : https://blog.appsignal.com/2021/02/10/ruby-on-rails-view-patterns-and-anti-patterns.html Ruby on Rails View Patterns and Anti-patterns | AppSignal Blog Rails views are sometimes amazing and fast, and at other times, they can have all sorts of issues. If you want to increase confidence over how you handle your views, then this blog post is for you. blog.appsignal.com Ruby On Rails 패턴과 안티패..
💡 원본 영상 : https://youtu.be/saxHxoUeeSw?si=Gg1FrAHEgiUKg6U2 세미나 내용 여기서 다룰 내용은 아래와 같습니다 소프트웨어 아키텍처의 목적 클린 아키텍처와 헥사고날 아키텍처 아키텍처의 목표 이 발표를 하는 이유는 개발자들의 용어를 기획자(PM/PO) 분들이 알았으면 좋을거 같고, 기획자의 목표와 개발자의 목표가 같은 곳을 바라보고 있다는 것을 알려주고 싶었다. 소프트웨어는 복잡합니다. 얽히고 얽힌 코드들로 구성되어 있습니다. 따라서 주기적으로 변경이 필요한데요. 위의 사진을 소프트웨어라고 생각한다면 여기서 가위를 칼로 변경해야 한다면 어떻게 해야 할까요? 끈으로 연결되어 있는 다른 도구들의 연결들을 풀고 가위를 칼로 변경하고 다시 연결해줘야 합니다. 이때 갑자기 ..