Skip to content

Week01 개발 진행 과정

seokomin edited this page Oct 29, 2020 · 28 revisions

Week01 (2020.10.26 ~ 2020.10.30) 개발 진행 과정


Day1 - 2020.10.26(월)

Common

  • Ground Rule 작성
  • 요구사항 명세서 작성 [링크]
  • erd 설계
    • OAuth 여부에 따라 Boolean값과 uid가 변경된다.


Day2 - 2020.10.27(화)

Common

  • 깃헙 이슈와 마일스톤, 프로젝트 정리

  • 가상서버 구축 및 sql 환경 설정

Web

  • 웹 개발환경 세팅

    • 프론트 : React App 설치
    • 백 : babel, eslint, prettier, webpack, 아키텍쳐 설계

iOS

  • Preview 적용

    • Instant Run 이나 Hot Reload를 SwiftUI를 사용하지 않고, UIKit 에서 사용하고 싶어서 찾아봤다.[참고 영상]

    Oct-27-2020 22-05-50

  • Preview 를 사용하기 위해서는 UIViewRepresentable 을 상속받는 구조체가 필요

extension UIView {

    var liveView: some View {
        LiveView(view: self)
    }
    
    struct LiveView<V: UIView>: UIViewRepresentable {
        
        let view: V
        
        func makeUIView(context: UIViewRepresentableContext<LiveView<V>>) -> V {
            return view
        }
        
        func updateUIView(_ uiView: V, context: UIViewRepresentableContext<LiveView<V>>) {
            
        }
        
    }
}

Day3 - 2020.10.28(수)

Common

  • Wiki 전면 개편

Web

  • 깃허브 이슈마다 마일스톤 할당
  • Sequelize DB 모듈을 위한 db configuration 작성
  • Sequelize DB 초기 환경설정
  • Sequelize DB를 활용하여 테이블 생성 및 관계 형성

iOS

  • RxSwift(Observable, Subscribe, RxCocoa)학습
  • 깃허브 이번 주 할 일 마일스톤 할당
  • ValidationChecker 구현
  • IssueListModel 구현, 더미 데이터 생성
  • IssueListMainViewController 구현

Day4 - 2020.10.29(목)

Web

  • 모듈을 import할 때 '../../controllers/~'와 같이 경로의 depth가 깊어질 때 소스코드가 지저분해지는 것을 방지하기 위해 babel-alias 환경설정

    • 기존에는 module_alias 모듈을 설치하여 이용하고 있었으나 VS Code 상에서 빨간 밑줄이 자꾸만 그어지는 문제가 발생하여 babel의 기능을 활용하고자 결정
    • 그 결과, '@controllers/~'와 같은 형태로 변경
  • 로컬 회원가입 기능 구현

    • Seqeulize DB를 활용하여 id 중복검사 함수 구현
    • Seqeulize DB를 활용하여 새로운 유저 생성 함수 구현
    • bcrypt를 활용하여 새로운 유저 생성 시 패스워드 해쉬화 함수 구현
    • 정규표현식을 활용하여 기획서에서 요구하는 id와 패스워드 조건 검증하는 함수 구현
  • 로그인 기능 일부 구현

    • bcrypt를 활용하여 유저가 입력한 패스워드가 일치하는지 검증하는 함수 구현
  • VS Code의 REST Client Extension을 활용하여 API 테스트 코드 구현

    • 회원가입을 시도한 id가 DB 내에 저장되어있는지 중복 여부 검사
    • 중복 여부를 마친 id가 DB 내에 저장되는지 검사
  • OAuth

    • Github와 Apple를 passport로 설치
    • Github 로그인 구현
    • Apple 로그인의 경우 개발자 계정이 필요하므로 잠시 보류

iOS

  • github, Apple OAuth 2.0 로그인 구현

    • github OAuth
      • OAuth Application 등록 후 Credential ID, Secret 값 획득
      • redirection_url 으로 Code 획득
      • Code 를 통해 Access_token 획득
      • github API 를 통해 User Info 요청
    • Apple OAuth
      • 최초 1회에 한해서 Apple Email 및 Password 요청
      • ASAuthorizationAppleIDCredential 에서 User 정보 추출
      • 이후 추가적인 인증없이 keyChain 에 저장된 정보를 통해 로그인 가능
  • IssueList 화면 구성

    • RxSwift를 활용하여 ViewModel 구현 후 SearchList 뷰 컨트롤러에서 바인딩
    • Search bar 에서 검색 중일때는 Cell Title의 String Matching 을 통해 검색 결과 노출
    • 검색 완료 시 다시 Result Collection View 표시
  • TabBarController 화면 구성

    • Dummy Token이 존재하면 TabBarController가 첫번 째 화면이 되고 그렇지 않으면 로그인 화면이 첫번 째 화면이 되도록 구성
    • LabelList, MilestoneList 씬도 TabBarController에 추가


🎃 데일리 스크럼 🎃

Week 1

Week 2

Week 3

🎈 데일리 회고 🎈

Week 1

Week 2

Week 3

💻 주간 개발 진행 💻

Week 1

Week 2

Week 3

🎏 스프린트 계획 회의 🎏

🧑🏻‍🤝‍🧑🏻 피어세션 🧑🏻‍🤝‍🧑🏻

📚 위클리 팀 회고 📚



Clone this wiki locally