GithubHelp home page GithubHelp logo

cheese-shop's Introduction

cheese-shop's People

Contributors

darkenpeng avatar hatchling13 avatar junghoon-vans avatar shsongs avatar ycheese avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

cheese-shop's Issues

에러 처리 관련 수정

  1. 레이어마다 발생되는 에러는 throw 한다.
  2. 에러를 String 이외의 타입으로 추상화한다.
  3. 함수의 시그니처가 에러타입을 포함하지 않게 수정한다.

`addReview`, `saveReview`의 `private`화, `writeReview`의 공개

          당장 명시적으로 변경을 요구드리는 부분은 `addReview`, `saveReview`의 `private`화, `writeReview`의 공개입니다. `write`가 실제로 Controller에서 쓰일 함수라는 주석을 달아주는 것도 좋겠네요.

L71의 부분은 좀 고민해볼 필요가 있을 것 같네요.

...ById 관련해서는 일종의 취향이라고 볼 수도 있을 것 같아서 굳이 수정 요청까지는 드릴 필요 없을 것 같습니다.

Originally posted by @hatchling13 in #21 (review)

사장님 관련 기능 개발

명세

  • 사장님은 전체 예약 목록을 조회할 수 있다.
  • 사장님은 예약을 종료할 수 있다.
  • 사장님은 전체 리뷰 목록을 조회할 수 있다.

FileManager 기능 개선 요청

@ycheese 님이 작성해주신 FileManager 객체에 관해 개선해주셨으면 하는 부분이 있어 이슈 남깁니다.

  1. 파일을 읽을 때 해당 파일이 없을 경우에 대한 처리가 프로그램 내에 없어, 파일을 별도로 생성한 후 프로그램을 실행해야 합니다.
  2. 인코딩/디코딩을 애플리케이션 로직에서 처리하는 것은 애플리케이션 쪽에 너무 많은 책임을 지우는 것 같습니다.

1. 파일이 없을 경우의 처리

프로그램을 최초로 실행할 때(기존에 정보를 저장하던 파일이 없는 상태), 프로그램이 강제로 종료되는 것보다는 빈 파일이 새로 생성되는 것이 더욱 자연스러운 동작이라고 생각합니다.

2. 인코딩/디코딩

Polymorphic Method를 통해 원하는 타입 정보를 전달하여 함수를 동작하게 할 수 있습니다. 이를 이용하여 FileManager 내에서 인코딩/디코딩을 수행하는 것이 좀 더 나은 방향이라고 생각합니다.

이 부분에서 대해서 어떻게 생각하시는지 의견 주시면 감사하겠습니다!

테스트 더블 작성

개요

각 함수의 동작이 올바른지 확인할 수 있는 방법이 필요하지만 모든 작업자의 환경에서 공통적으로 동작하도록 DB 세팅을 하기에는 너무 번거로우므로, DB의 동작을 모방하는 객체를 작성한다.

구체적으로는 DB에 대한 Fake 객체를 작성한다.

관련 자료

각 도메인 클래스에 대한 Repository 작성

개요

#20 애서 의논한 바 있듯, 각 도메인 클래스에 대해 Repository 계층을 두어 Service 계층에서 직접 파일 접근하는 것을 막고, 새로운 데이터 생성 시 UUID도 함께 생성하는 역할을 주고자 합니다.

손님 관련 기능 개발

개요

README에 작성된 명세 중 '손님(User)'과 관련된 기능을 개발합니다.

(생성된 이슈 번호에 기초하여 브랜치 이름을 지을 예정입니다)

예약 기능 개발

최소 요구사항

  • file system 이용
  • zio-http 사용

명세

  • 예약은 아이디, 예약자 이름, 예약자 휴대폰번호, 예약일시, 인원수로 구성된다.
  • 예약은 예약자 이름과 예약자 휴대폰 번호로 예약자를 구분한다.

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.