6월 19일 (토)

Domain Dao Service

Posted by Yan on June 19, 2021

요즘 배운 것

  • Domain, DAO, Service 레벨을 나누는 방법.
    • 모든 설계의 근간이 되는 객체를 담은 Domain -> DB의 테이블의 column들과 같은 이름의 변수를 가지면 편리하다
    • 데이터베이스에 access하는 모든 코드를 담은 DAO
    • UI와 가장 근접한 곳에서 메소드를 호출하는 Service
  • Singleton Pattern을 사용해서 DAOService구현하기
  • HTML form의 method로 GET, POST 방식 구현
  • 지난 주말동안 인프런에서 김영한 개발자의 스프링 입문 강의 완강
    • Domain, Repository, Service, Controller의 개념을 익히기에 최고였다
    • 일단 다 듣고나니 구조에 대한 이해가 훨씬 잘 돼서 월요일부터 기분이 좋았다
    • Optional wrapper 객체로 null값 관리하는 방법
    • lambdastream을 언제 사용하는지 알 수 있었다
    • intelliJ를 사용하기 시작했다. 빠르고 깔끔하고 편리하고 좋다
    • 내가 얼마나 legacy code를 많이 사용하고 있었는지 깨닫게 되었다
  • mySQL 쿼리를 점점 다양하게 사용할 수 있게 되었다.

이번 주에 만든 것

  • 후보자를 추가, 삭제, 투표하고 투표율 통계를 볼 수 있는 투표 시스템을 STS로 만들었다
  • chart.js라이브러리를 이용해서 그래프도 그려봤는데, 이 라이브러리 맘에 든다! 다음에 또 사용해보려고 한다.
  • 그동안 이것저것 다 섞인 jsp코드를 보면 막막해졌는데, 이제는 jsp코드가 줄어들어서 마음이 편해졌다
  • 그렇지만 코드를 더 줄이고 싶다. 리펙토링을 마지막 task로 남겨두고 있다!

앞으로 해야할 것

  • CRUD를 활용한 게시판
  • 주식 프로젝트

더 알고 싶은 것

  • intellij에서 kotlin파일도 만들 수 있다는 것을 알게 되었다. 호기심에 기초 문법을 조금 봤는데 더 궁금해졌다. 알고 싶은 것은 많아진다.