newChobo
article thumbnail
Published 2023. 3. 23. 01:30
설계 순서 정리 개발/portfolio gallery

이제 자격증 시험도 끝났으니 지지부진하던 프로젝트를 재개할 때가 되었다.

하면서 느끼는건데 기업들 프로젝트도 올릴 수 있게 하면 좋을듯?

클라이언트들도 결국은 기업들의 프로젝트를 봐야 할 테니까.

 

기업계정과 취준생계정(?)

손님계정을 분리할 수 있도록 하면 어떨까 싶다.

 

다만 취준생과 손님은 큰 차이가 없어도 되긴 할듯?

 

해야 하는 부분은 크게 3가지로 나눌 수 있을 것 같다.

1. UI / 화면 흐름

2. Node.js에서 주고 받아야 할 데이터 설계

3. DB 구조 설계

 

 

 

 

 

UI / 화면 흐름

Flutter을 통한 웹/앱을 만들것으로 계획하고 있음.

다만, Desktop UI를 고려하지는 않을 생각. 추후 업데이트로 추가할 수도 있긴 함.

 

필요 권한 : 인터넷 접근, 휴대폰 저장소 접근(?)

 

Appbar, Drawer, Bottom 위젯들을 통해 기본적인 네비게이션을 제공할 것이며,

메인 화면에서는 각 페이지에 맞는 정보들을 제공하도록 하려 한다.

 

유저에게 제공될 화면들은 다음과 같다.

근데 단순하게 보기만 하는건 로그인 하지 않아도 되도록  하고싶다.

 

광고를 하는 회사의 포트폴리오를 먼저 표시하도록 할 수 있게?

수익모델은 광고로 충분한가? 매칭 수수료같은건 오바겠지?

어차피 수익을 목적으로 하는 프로젝트도 아니니까

 

비회원과 회원을 분리하여 UI를 설계해야 할 것.

 

1. 회원정보 / 로그인 관련 / 설정 페이지

  • 로그인
  • 회원가입
  • 회원정보 변경
  • 권한 처리(권한이 없습니다!) / 에러코드?

 

2. 포트폴리오 관련 페이지

  • 포트폴리오 목록
  • 포트폴리오 READ
  • 포트폴리오 카테고리
  • 포트폴리오 작성 / 수정
  • 포트폴리오 삭제
  • 포트폴리오 필터 (이 사람/기업의 포트폴리오 보지 않기, 어떤 기술만 보기/어떤 기술만 보지않기, 원하는 인력 종류)

3.  스크랩 / 친구 / 메세지

  • 즐겨찾기 / 구독?
  • 알림
  • 건의 / 신고

4. 고객 종류별 페이지 / 기능

  • 고객의 경우 내가 원하는 포트폴리오(원하는 기술, 평점, 액수(?)같은걸 만족하는 애들로)
  • 일반적으론 나의 지금까지의 포트폴리오? 기업들의 요구사항? -> 일종의 블로그로 생각하려 했는데 모양이 바뀌네
  • 기업 회원은 고용주의 입장.

 

백엔드가 연결이 안될때는 어떻게 해야하지?

 

 

화면 구성 임시

  • 설정화면? 
  •  
  • 기본 회원 관련
  • 로그인 -> ID/PW 입력창, 회원가입/ID PW찾기로 이동 창/ API를 통한 로그인
  • 회원가입 -> (필수)ID/PW, 닉네임,  (선택)관심분야, 사용기술, 이메일, 휴대폰, 회사
  • ID/PW 찾기
  • 내 정보(마이페이지) -> 내 개인정보 공개여부 설정
  • API를 통한 로그인이나 회원가입은 아직 공부가 많이 필요한 부분이므로 보류한다.
  • 스크랩 / 좋아요 / 댓글
  •   
  • 메인페이지
  • 메인페이지 -> 내 명함 카드, 내 포트폴리오 목록(선택에 따라서는 찜한 포트폴리오들)
  •   
  • 포트폴리오 관련
  • //내 포트폴리오 말고, 검색해서도 볼 수 있어야 함. 일반적으로 최근순, 좋아요순, 인기순 정도가 있을까
  • //필터를 걸어서 해당하는 아이들만 데려오도록 하는것도 필요하다.
  • 명함카드
  • 포트폴리오 조회 페이지 
  •  
  • 채팅 / 대화 페이지
  • 팔로우 / 팔로워
  • 채팅
  •  
  •  
  •  

 

Node.js에서 주고 받아야 할 데이터 설계

프론트(클라이언트) <-> 서버

서버 <-> DB 서버

 

프론트엔드에서 이미지를 전달받으면, 썸네일과 원본이미지로 분리해 사용할 수 있어야 할 것 같은데...

그럼 DB 구조에도 영향을 미치게 되겠네.

 

기본적으로 프론트로부터 요청받을 데이터는 크게

고객의 데이터

포트폴리오의 데이터

 

이렇게 볼 수 있을 것 같다.

 

 

 

DB 구조 설계

일단은 DB는 maria DB 사용하려고 고려중에 있음.

이미지 서버는 어떻게 제공해야하지?

 

우선 각각의 파일은 고유의 파일번호, 게시글(포트폴리오) 번호, 파일타입, 이미지의 경우는 썸네일까지

원본파일을 꼭 저장해야 하나? 그래도 없는건 좀 그런가?

썸네일을 사용하지 않아버리는것도 생각했었지만, 용량이 크면 네트워크 부하가 커지는게 걱정이라...

클라이언트의 경험도 나빠질 수밖에 없을 것.

 

반정규화는 그렇게 필수적이진 않을듯? 그냥 썸네일모음 테이블에 접근하도록 해도 무방할 것 같다.

어차피 대부분의 파일은 썸네일만 보고 지나갈테니

 

물론, 파일을 백엔드에서 저장하는게 아니라, 이미지 링크만 저장한다면 복잡해질 여지는 있을것 같다.

 

 

 

 

 

 

 

계속 새로운 글을 작성하게 될 테니, 묻히게 되는데 길어지면 하이퍼링크를 통해 정리를 해보자.

이번 프로젝트를 완료하고 나면, 프로젝트 설계/기획서를 정리하며 작성하는 앱같은걸 만들어도 괜찮을듯? ㅋㅋ

 

철저하게 개발과정에 맞춰서 말이지.

 

 

'개발 > portfolio gallery' 카테고리의 다른 글

화면 구성  (0) 2023.03.23
작업 기록 정리  (0) 2023.03.23
계획  (0) 2023.03.07
일단 서버를 만들긴 만들었다.  (0) 2023.02.25
Node.js 기본 세팅  (0) 2023.02.24
profile

newChobo

@새로운뉴비

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!