Giter Site home page Giter Site logo

opinion-trade's Introduction

opinion-trade's People

Contributors

juwoongkim avatar

Watchers

 avatar

opinion-trade's Issues

질문 삭제 기능 구현

질문 삭제 기능을 구현한다.
질문은 엔티티로 작성되어 있지만 설문지의 밸류객체이다.
따라서 hard delete를 사용한다.

프로젝트 문서정리

  • 프로젝트 설계 문서를 저장한다.
  • 프로젝트 문서화 링크를 리드미에 정리한다.

설문지 도메인 생성

  • 설문 도메인의 필요한 도메인 규칙을 명세 목적으로 메서드 명만 명시한다.
  • 루트 엔티티와 벨류를 구분한다.
  • 레포지토리를 만들어 도메인 생성, 조회를 테스트한다.

도메인 정리

서비스 핵심기능과 거리가 있는 부가적인 도메인 객체를 삭제한다.

처음 선택한 한번에 설계하고 구현하는 방법이 비효율적이였다.
관리하기 어려워 엉성하게 남아 있고 수정 시 변경사항이 많아 비효율적이다.

핵심 기능부터 하나씩 구현하고 기능 구현 시마다 필요한 객체를 추가하는 방식으로 변경한다.

설문지 전체 조회 기능 구현

설문 생성자가 자신이 만든 설문지를 전체조회 할 수 있는 기능을 조회한다.
조회 방식은 offset 기반 페이지네이션을 사용한다.

이유는 유저 한명 당 생성하는 설문지 수가 offtset방식을 사용할 때 성능에 영향을 줄 만큼 많지 않을 것이라고 생각하며 페이지 형식으로 구분하는 것이 더 관리하기 편하다고 생각했다.

설문지가 요청되어 게시판으로 등록되는 것은 요청 이라는 도메인으로 분리했다.
이는 조회 결과가 많을 것이라 판단되어 cursor 기반 페이지네이션을 사용할 것이다.

유저 도메인 생성

  • 유저 도메인의 필요한 도메인 규칙을 명세 목적으로 메서드 명만 명시한다.
  • 루트 엔티티와 벨류를 구분한다.
  • 레포지토리를 만들어 도메인 생성, 조회를 테스트한다.

인프라 설정

  • 데이터 베이스는 mysql을 사용한다.
  • 데이터 연동은 JPA ORM을 사용한다.
  • 도커를 사용해서 어떤 로컬에서나 공통적으로 사용할 수 있는 인프라 환경을 구축한다.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.