Skip to content

선인장 (선택장애 인간들을 위한 장) 프로젝트

Notifications You must be signed in to change notification settings

GDSC-Daejin/project-saboten

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

선인장 (선택장애 인간들을 위한 장) 프로젝트

Table of Contents

Diagram

Project Architecture

Concept

Kotlin Multiplatform
  • Supports android, ios, web, server (jvm)
Shared Multiplatform Module
  • common module 은 클라이언트와 서버 둘 다 사용할법한 API 데이터 Response / Body Request 등의 모델, 유틸 (logger 와 같은) 을 서로 공유합니다.
  • common-client module 은 클라이언트만에서 사용할만한 API Fetch, Repository, UseCase 를 포함하여 Presentation (ViewModel) 같은 비지니스 로직을 공유합니다.

Diagram

Project Architecture

Concept

Clean Architecture Pattern
  • data, domain, presentation (viewmodel) layer 를 common-client package 에 구분합니다.
Uni-Directional Architecture (UDA) 구조
  • UDA 란?
  • State, Event, Effect 구조를 ViewModel 에 적용합니다.
  • Event 를 사용하여 ViewModel 에 특정 이벤트를 전송합니다.
  • Event 등에 따라 각 UseCase 에서 받은 데이터를 하나의 State 로 Merge 한 후에 UI 에 전달합니다.
ViewModel 로 같은 UI 렌더링 로직 공유
  • 클라이언트는 화면별로 viewmodel 을 갖고 있으며, 각 플랫폼은 모두 같은 viewmodel 로직을 공유합니다.

Branch Create

  • 브랜치 생성시 "feature/{포지션 : BE, FE, AND, IOS}/SBOT-{이슈번호}-{비고(Optional)}" 로 생성합니다.
    • 예 : "feature/BE/SBOT-120-user-api"

About

선인장 (선택장애 인간들을 위한 장) 프로젝트

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published