Skip to content

[2023‐11‐13] 스크럼 ‐ 이번주 할일

주재현 edited this page Nov 13, 2023 · 1 revision

Day01 스크럼 회의

할일

기능 하나씩 생각해오기

기능

  • 클러스터링( 축소하면 스냅포인트 하나로 합치기 ) -kmeans algorithm

  • 주변 게시물 현재 위치 중심으로 몇 m 떨어져 있는 지

  • 여행 키워드 기반으로 검색

  • 데이터가 연결되지 않은 상태에서 기존 데이터를 캐싱해 맵에 스냅핀 노출하기

  • 오프라인 상태에서 알림 받기

  • 게시글 목록에서 정렬 (좋아요 많은순, 최신순, 등등)

  • 맵에서 스냅핀들 필터링??

  • ‘추천’ 탭 추가 (게시글이 많이 등록된 지역 보여주고, 클릭 시 해당 지역으로 지도 이동)

이번주 할일

  • 사용자는 게시글을 작성할 수 있다.

백엔드

ERD 다시 작성

  • 게시물 좋아요, 조회수
  • 사용자 구독

ORM 선택

  • typeorm
  • prisma
    • 러닝 커브 짧다.

    • db 제약조건을 제거하여 코드 딴에서 Type Safety 확인해야함

    • Type Safety 관점에 대하여

      TypeORM: typescript 런타임 위에서 존재하므로, Complie Time에서 검사하기 때에 오류가 많다.

      const postRepository = getManager().getRepository(Post)
      const publishedPosts: Post[] = await postRepository.find({
        where: { published: true },
        select: ['id', 'title'],
      })
      
      const post = publishedPosts[0]
      
      // The TypeScript compiler has no issue with this
      if (post.content.length > 0) {
        console.log(`This post has some content.`)
      }
      • Typescript 레벨의 문법 오류 및 체크는 가능하지만 SQL Code(?) 는 검사할 수 없다.
      • 위에 select에서 없는 content 칼럼을 출력했지만, TS Complier는 이를 체크하지 못한다.
      const publishedPosts: Post[] = await postRepository.find({
        where: { published: true },
        // this query would lead to a runtime error because of a typo
        relations: ['authors'],
      })
      • 또한 다른 EntityKey를 사용할 때 TypeORM은 string으로 불러와야 하므로 검사가 불가능하다.
      • Prismakey 형태로 볼 수 있어 검사가 가능하다.

      [Prisma vs TypeORM](https://www.prisma.io/docs/concepts/more/comparisons/prisma-and-typeorm)

      성능에 관하여

      [Benchmark: Prisma VS TypeORM](https://dev.to/josethz00/benchmark-prisma-vs-typeorm-3873)

CI 간단하게 구축

아키텍처 구상하기

  • 서버 구축하기
  • 디비 구축하기

디렉토리 구조 잡기

swagger 넣기

가장 마지막에

  • 스냅핀 생성 api

안드로이드

브랜치전략 변경

Issue 세부 구현사항 입력

프로젝트 패키지 구조 정립

테스트코드 컨벤션 작성

🚩SnapPoint🚩

Android 기술적 도전

Backend 기술적 도전

🤖기술 공유🤖

Android

Backend

📖회의록📖

스크럼
팀회고, 개인회고
Clone this wiki locally