Giter Site home page Giter Site logo

bbs's Issues

✨ 채널 시스템 도입

  • 모든 게시판 서비스는 특정 채널 하나에 속한다.
  • 모든 게시판, 게시글, 댓글은 채널단위로 구분된다.
    즉, 채널은 독립적인 게시판 서비스를 의미한다.
    e.g., 애브리타임에서 "세종대학교"와 "건국대학교" 같은 관계

(전체 채널에서 핫이슈 게시물 등등을 모아보는 api를 별도로 개발도 고려)

♻️ API 리팩토링

목표

더 확장성있는 API 설계
-> 현재 api 설계방식은 "내 게시글", "인기글" "최신글" 불러오기 등등을 구현할 때, 일관성이 떨어질 것 같다.

✨ 게시판 시스템 도입

목표

  • 게시글에 소속을 부여한다.
  • 게시판 기준으로 게시글들을 검색할 수 있다.
  • 게시판 단위로 게시글 및 댓글에 대한 권한 검사를 추가한다.

권한 체계

  1. 서비스는 여러 권한 그룹을 생성한다.
  2. 게시판은 특정 액션에 대해 허용 그룹을 지정한다.
  3. 모든 사용자는 하나의 특정 그룹에 속한다. (일종의 계급)
  4. 사용자의 소속 그룹이 허용된 그룹인 경우에 액션을 수행할 수 있다.
  5. 사용자의 소속 그룹이 없을 수도 있으며 이는 비회원과 동일한 권한을 부여한다.
  6. 게시판이 null 그룹에 대해 액션을 허용하면 비회원 혹은 (그룹이 없는)미인증 회원은 해당 액션을 수행할 수 있다.
  7. 쓰기 작업은 필수적으로 회원만 가능하다.(만약 null 그룹에 대해 쓰기를 허용하면, 비회원은 쓸 수 없고 미인증 회원은 쓸 수 있다.)

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.