본문 바로가기
반응형

분류 전체보기181

아는 만큼 보이는 데이터베이스 책 리뷰 https://product.kyobobook.co.kr/detail/S000001223487 아는 만큼 보이는 데이터베이스 설계와 구축 | 이춘식 - 교보문고 아는 만큼 보이는 데이터베이스 설계와 구축 | 훌륭한 데이터 모델을 만들기 위한 설계와 구축 노하우!「Blog 2 Book」시리즈 제5권『아는 만큼 보이는 데이터베이스 설계와 구축』. 이 책은 개발 product.kyobobook.co.kr 데이터베이스의 지식을 쌓고자 해당 책을 읽어 보게되었다. 이 책은 모만데라는 가상의 인물이 업무를 하면서 막히는 부분들을 사수 아만데에게 물어보는 상황들을 가정하여 작성되어있다. 마치 현장에서 배우는 느낌이 들도록 해준다. 정규화가 무조건 성능에는 도움이 되지 않는다고 생각하고 있었는데 책에 나오는 예시들을 .. 2024. 2. 1.
KISS, YAGNI, DRY - 소프트웨어 개발 3대 원칙 소프트웨어를 개발하면서 지켜야 할 3대 원칙을 알게 되어 간단하게 블로그에 포스팅하게 되었다. KISS [Keep It Simple, Stupid] (단순하게 만들자) Keep It Small and Simple, Keep It Short and Simple으로도 쓰이며 구조와, 디자인을 가능한 단순하게 유지하라는 취지를 가지고 있다. 코드가 단순해져 복잡성을 줄이고, 이해하기 쉬운 코드를 작성하는 것에 중점을 둔다. 또한 디버깅과 테스팅이 용이해지는 장점이 있다. 필요한 기능만 포함할 수 있도록 잘 설계해보자. YAGNI - You Aren't Gonna Need It (불필요한 것은 추가하지 말자.) 이 원칙은 불필요한 기능 구현을 피하고, 현재 요구사항에 집중하여 가장 간단하고 효율적인 소프트웨어를.. 2023. 11. 20.
[spring boot] 스프링 스케줄러 사용해보기 스프링 부트로 기능을 구현하다 보니 일정시간에 작업을 진행해야 하는 경우가 생긴다. 예를 들어 매일 12시에 맞춰 그날로부터 며칠이상 존재했던 데이터를 삭제하는 경우라던지, 새로운 데이터를 구해야 하는 것(전일 기준 인기 순위와 같은...)과 같은 작업을 진행해야 할 필요가 생긴다. 그래서 어떻게 하면 기능을 구현할 수 있을지 찾아본 결과 크게 두가지 방법으로 진행할 수 있는 것으로 확인했다. 바로 quartz와 spring scheduler이다. quartz는 조금 설정방법이 어려운 대신 섬세하게 설정이 가능하며 스케줄러 간의 클러스팅이라던가 후처리기능이 더 뛰어나다. 이번에는 단순하게 일정 기간 이후에 데이터를 삭제하는 작업을 진행하게 되어 간단하게 spring scheduler를 사용해보려고 한다... 2023. 10. 19.
도메인 주도 개발하기 책 리뷰 https://www.google.co.kr/books/edition/%EB%8F%84%EB%A9%94%EC%9D%B8_%EC%A3%BC%EB%8F%84_%EA%B0%9C%EB%B0%9C_%EC%8B%9C%EC%9E%91%ED%95%98%EA%B8%B0/bi5qEAAAQBAJ?hl=ko&gbpv=0 도메인 주도 개발 시작하기 코딩을 좋아하여 나이를 먹고 백발이 되어도 개발을 하고 싶은 개발자다. 좋은 책 쓰는 것을 목표로 꾸준히 블로그와 브런치에 글을 쓰고 있으며 많은 강연 활동도 하고 있다. 전) 아이스크림에 books.google.co.kr 요번에는 도메인 주도 개발하기라는 책을 읽게 되었다. 사실 책은 예전에 샀는데 이제야 읽게 되었다. 이유는 이 책에서는 JPA를 사용해서 알려주는데 그 당시에 J.. 2023. 10. 4.
세컨드 브레인 책 리뷰 https://millie.page.link/CYBkf 세컨드 브레인 “성취하는 사람에게는 제2의 뇌가 있다!” 해야 할 일을 제대로, 제때에 하고 싶은 사람을 위한 새로운 차원의 생산성 혁신 프로젝트 ***** 아마존 1위.. www.millie.co.kr 이때까지 메모를 작성하고 정리하고 있었지만 막상 필요할 때는 찾지 못해서 이 짓을 계속해야 할 필요가 있을까 생각하고 있었다. 그러다가 유튜브에서 PARA관리법을 알게되었고 이 방법을 만든 분의 책을 읽어보고 싶어서 읽어보게 되었다. 이 책의 내용은 저자가 살면서 메모를 어떻게 하면 잘할 수 있는지 고민하면서 만든 방법을 나와 비슷한 고민을 하던 다른 사람에게도 추천해 주고 실제로 긍정적인 반응을 통해 많은 사람들에게 실질적으로 도움이 될 수 있는 .. 2023. 9. 20.
객체지향의 사실과 오해 책 리뷰 필독 도서 중 한 권인 객체지향의 사실과 오해라는 책을 읽은 기념 리뷰를 남겨놓으려고 한다. 사실 읽은지는 꽤 지났는데 이제야 리뷰를 작성해보려고 한다. 매우 간단하게 https://product.kyobobook.co.kr/detail/S000001628109 객체지향의 사실과 오해 | 조영호 - 교보문고 객체지향의 사실과 오해 | product.kyobobook.co.kr 이때까지 객체지향에 대해 배워오면서 단순히 객체지향은 현실에 빗대어서 표현하는 것이라고 배워왔는데 적용해서 구현하려고 하다 보면 무생물들은 자신의 상태를 변경할 수 없는데 어떻게 표현하지?? 이러면 현실과 매우 달라지는데!!라는 의문을 시원하게 해결해 주었다. 바로 모든 사물을 의인화하여 현실보다 많은 것들을 할 수 있게 해 준다는.. 2023. 9. 15.
엑셀 생성 기능 리팩토링하기 엑셀을 다운로드하는 기능을 들었는데 구현에만 급급하다 보니 공통로직으로 빼지 못하고 아래의 코드에서 조금씩(필드에 따른 칼럼)만 변경하여 구현하게 되었다.public Workbook makeUserListExcel(UserCriteriaVO criteria) { List userList = userRepository.findUserListByCriteria(criteria); String[] colNames = { "no", "등급", "ID", "PWD", "이름", "핸드폰 번호", "비고", "생성자 ID", "생성자 이름", "생성일", "마지막 수정자 ID", "마지막 수정자 이름", "마지막 수정일" }; XSSFWo.. 2023. 9. 8.
웹에서 사용자(클라이언트)의 로컬 프로그램 실행시키기 진행하고 있는 프로젝트에서 웹에서 사용자가 특정 메뉴 진입 시에 로컬에 설치되어 있는 프로그램을 실행시켜야 하는 상황을 만났다. 해당 과정을 해결하면서 발생한 이슈들을 간단하게 정리해두려고 한다. 프로그램 실행시키는 방법 웹에서 로컬 프로그램을 실행시키는 방법은 두 가지가 있다. ActiveX URL scheme (레지스트리) 예전에는 액티브X를 사용했지만 이는 IE에서만 사용가능한 방법이기 때문에 사실상 레지스트리를 이용한 방법밖에 없다고 봐도 무방하다. 사용자 컴퓨터에 등록되어있는등록되어 있는 URL 스키마를 이용해서 해당 프로토콜 주소로 이동하면 등록되어 있는 프로그램이 실행되도록 만드는 방법이다. 이를 위해서는 레지스트리에 스키마를 등록해 두는 작업이 필요한데 나의 경우에는 외부 프로그램이다 보니.. 2023. 9. 6.
enum 클래스 활용하기 예전에는 enum을 잘 사용하지 않다가 최근에서야 enum 클래스를 활용하기 시작했다. 확실히 enum 클래스를 사용하면 코드만 읽고도 의미를 확실하게 알 수 있어 좀 더 좋은 코드가 되는 것 같다. enum을 좀 더 잘 활용하기 위해서 정리하는 시간을 한번 갖으려고 한다. Enum이란? enum클래스는 JDK 1.5에 나온 기능이다. 열거체를 정의할 수 있는 기능으로 상수를 클래스처럼 보이게 해 준다. 장점 비교할 때 실제 값뿐만 아니라 타입까지도 체크한다. enum의 상숫값이 재 정의되어도 다시 컴파일할 필요가 없다. enum 정의 enum 열거체이름{ 상수1이름, 상수2이름, 상수3이름, ... } 상수를 작성할 때는 대문자를 사용하여 작성한다. ;을 붙이지 않는다. 예시 enum Rainbow{ .. 2023. 9. 6.
반응형