GithubHelp home page GithubHelp logo

jump-rope-checker's Introduction

jump-rope-checker

줄넘기 경기 기록 시스템

jump-rope-checker's People

Contributors

pgmjun avatar

Watchers

 avatar

jump-rope-checker's Issues

코드 리팩터링 [중요🔥]

실제로 사용되는 서비스를 단기간 안에 만들어야했기 때문에 클린코드, 객체지향을 거의 신경쓰지 못하며 개발
때문에 코드의 리팩터링이 시급

리팩터링 규칙

  • 한 메서드에 최소한의 들여쓰기(indent)만 허용했는가?

    최대 depth : 2 까지만 허용

  • else 예약어를 쓰지 않았는가?

  • 모든 원시값과 문자열을 포장했는가?

  • 콜렉션에 대해 일급 콜렉션을 적용했는가?

  • 3개 이상의 인스턴스 변수를 가진 클래스를 구현하지 않았는가?

  • getter/setter 없이 구현했는가?

  • 핵심 로직을 구현하는 도메인 객체에 getter/setter를 쓰지 않고 구현했는가? 단, DTO는 허용한다.

  • 코드 한 줄에 점(.)을 하나만 허용했는가?

  • 메소드의 인자 수를 제한했는가? 4개 이상의 인자는 허용하지 않는다. 3개도 가능하면 줄이기 위해 노력해 본다.

  • 디미터(Demeter)의 법칙(“친구하고만 대화하라”)을 지켰는가?예를 들어 location.current.representation.substring(0, 1)와 같이 여러 개의 점(.)이 등장하면 리팩토링할 부분을 찾아본다.

  • 메소드가 한가지 일만 담당하도록 구현했는가?

  • 클래스를 작게 유지하기 위해 노력했는가?

    메서드당 line을 10까지만 허용

    길이가 길어지면 메서드로 분리

  • 매직 리터럴 / 매직 넘버 사용을 자제하고 상수 사용

선수 CRUD 구현

  • 선수 등록
    • 일반 등록 ✔
    • CSV파일로 등록 (진행중)
  • 조회 기능 ✔
    • 선수 id로 조회 ✔
    • 선수명으로 조회 ✔
    • 단체ID로 선수 조회 ✔
  • 선수 정보 수정 기능 ✔
  • 선수 개인정보 변경 기능 ✔
  • 선수 삭제 기능 ✔
    • 선수 id로 삭제 ✔

대회 CRUD 구현

대회 CRUD 기능 구현

  • 대회 등록
  • 대회 조회 기능
    • 대회 id로 조회
    • 대회명으로 조회
  • 대회 정보 변경 기능
    • 대회 이름/날짜 등 정보 변경
  • 대회 삭제 기능
    • 대회 id로 삭제

대회 참가 CRUD 구현

image

등록 기능 구현

  • 단체선수 등록(엑셀파일)
  • 단일 선수 등록(홈페이지)

등록시 필요한 데이터

  • 대회 정보 (페이지에서 선택)
  • 단체 정보 (홈페이지에서 선택)
  • 선수명
  • 선수나이
  • 선수연락처
  • 종목 정보 (엑셀에서 입력)
  • 부서 정보 (엑셀에서 입력) [유치부:1 / 초등부: 1~6(학년별로) / 중등부: 7 / 고등부: 8 / 일반부: 9]

등록

  • CompetitionEvent 데이터 사용하여 '신청서 양식 자동 생성' 기능 ✓
  • 신청서로 대회신청 기능 ✓
  • 단일 선수 대회 신청 기능 ✓

조회

  • 대회ID로 대회 참가 단체 정보 조회 기능 ✓
  • 대회ID와 단체ID로 단체에서 참가하는 선수 정보(단체명, 정보, 부서명, 점수, 갯수) 조회 ✓
  • 대회ID로 대회에 참가하는 전체 선수 정보 조회(단체명, 정보, 부서명, 점수, 갯수) 조회 ✓
  • 대회참가ID로 참가선수의 참가종목 별 데이터(단체명, 정보, 부서명, 점수, 갯수) 조회 ✓
  • 대회종목ID로 종목 참가 선수 데이터(단체명, 정보, 부서명, 점수, 갯수) 조회 ✓
  • 대회ID로 대회에 참가하는 선수의 배번표 정보 (대회번호 자른 배번 / 선수명) 조회

삭제

  • 대회참가ID로 참가 선수 삭제

갱신

  • 대회참가ID로 참가선수의 (점수, 갯수) 갱신 [안드로이드로 연결] ✓

부서

  • 부서 갱신 기능 구현 ✓
  • 부서 전체 조회 기능 구현 ✓

대회종목 CRUD 구현

등록

  • 대회id를 통해 isProceed = false 상태로 전체 종목 등록 ✓

조회

  • 대회id로 대회 종목 조회 ✓

수정

  • 대회종목 id로 진행여부 및 기타 데이터 변경 ✓

종목 기본 기능 구현

종목 저장 기능

  • 전체 종목 reset 후 새로운 데이터 저장 ✓

종목 조회 기능

  • id로 조회 ✓
  • 전체 조회 ✓

단체 CRUD 구현

  • 단체 등록 ✔
  • 단체 조회 기능 ✔
    • 단체 id로 조회 ✔
    • 단체명으로 조회 ✔
  • 단체 정보 변경 기능 ✔
  • 단체 삭제 기능 ✔
    • '대회 id Collection'으로 삭제 ✔

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.