우아한 테크 캠프 프로 2기

    3주차 미션 - Lazy 로딩과 equals 메서드

    모든 소스 코드는 https://github.com/lkimilhol/atdd-subway-admin/에서 확인 가능합니다! 안녕하세요. 이번에는 lazy 로딩과 관련한 문제 하나를 설명해볼까 해요. lazy 로딩은 JPA에서 활용되는 데이터를 불러오는 방식 중 하나로 실제로 데이터를 사용하기 전에는 proxy 객체를 활용해 실제로 select가 이루어지지 않고 실제 데이터를 사용할때 select를 해오는 기술이라고 생각 할 수 있습니다. 이렇게 된다면 실제로 사용하지 않는 데이터의 조회를 하지 않기 때문에 성능상의 이점이 있을 수 있다고 생각할 수 있습니다. 하지만 lazy 로딩을 사용하다 보면 예기치 못한 일들이 참 많이 발생하곤 하는데요. 저는 그 중 하나인 lazy 로딩과 equals 메서드에 관..

    2주차 미션 - JPA, AuditorAware 구현해 보기

    모든 소스 코드는 https://github.com/lkimilhol/tistoryblog 에서 확인 가능합니다! 안녕하세요. 이번에는 2주차 미션의 리뷰에서 알게 된 AuditorAware 구현을 해보려고 합니다. JpaAuditing, AuditorAware이라는 것이 무엇인지 알아보고, 구현을 해보도록 하겠습니다. 1. 중복되는 컬럼을 BaseEntity에 구현 BaseEntity를 abstract class로 구현하여 이를 상속받아 컬럼을 재사용 하는 방법은 잘 아실거라 생각됩니다. 전의 포스트에서 사용하였던 코드를 이용하여 데이터의 등록시간과 수정시간을 넣어 볼 예정입니다! 내용을 모르시는 분들을 위해 간단히 설명하면, User 클래스는 다수의 Computer 클래스를 갖도록 하는 1:N 관계의..

    1주차 미션 - 로또, 원시 값 포장

    안녕하세요. 우아한 테크 캠프 프로2기로 활동한 김일호입니다. 이번에는 1주차 미션이었던 로또를 공부하며 고민하였던 내용 중 원시값 포장에 대해서 얘기 해보려고해요. 이번 미션을 통하여 고민했던 내용들을 남겨보도록 하겠습니다. https://github.com/lkimilhol/java-lotto 에서 소스 코드를 확인 하실 수 있습니다. 1. 왜? 이번 미션에서 느꼈던 점 첫 번째 입니다 :) 바로 원시값의 포장인데요. 우리는 왜 원시값을 포장해야 할까요? 다음 코드를 보도록 하겠습니다. int money = 100; 우리는 이 코드를 보고 money라는 변수에 100이라는 값이 담긴 것을 알 수 있습니다. 변수명을 보니 money, 즉 돈이 100이라는 것이군요! 우리는 이 돈을 더 할 수도 있습니다..

    시작하며

    안녕하세요. 우아한 테크 캠프 프로 2기로 활동한 김일호 입니다. 이번 넥스트스텝에서 진행한 우아한 테크 캠프 프로는 소프트웨어의 장인을 배출하고자 하는 넥스트스텝의 비전, 소프트 웨어 개발자에 대한 인력을 양성하겠다는 우아한 형제들의 의지, 그리고 자신의 성장을 추구하는 개발자들의 노력이 함께 하였다고 생각합니다. 8주간 진행되는 교육과 미션들을 모두 완성해야 과정이 수료가 되는데요. 저는 모든 과정을 수료하였고, 우수 수료생으로 선정되기도 하였습니다. 정말 많은 것을 배웠고, 개발의 과정이 이렇게 재밌을수도 있구나 라고 생각했네요. 앞으로 남기려는 내용은 주로 어떤 것을 배웠고 어떤것을 고민했는지 남기려고 해요. 각 주차별로 주제가 정해져 있지만, 대체로 클린코딩, 객체지향, 레이어드 아키텍쳐와 DD..