-
Notifications
You must be signed in to change notification settings - Fork 4
Week01 개발 진행 과정
seokomin edited this page Oct 29, 2020
·
28 revisions
Day2 - 2020.10.27(화)
-
깃헙 이슈와 마일스톤, 프로젝트 정리
-
가상서버 구축 및 sql 환경 설정
-
웹 개발환경 세팅
- 프론트 : React App 설치
- 백 : babel, eslint, prettier, webpack, 아키텍쳐 설계
-
Preview 적용
- Instant Run 이나 Hot Reload를 SwiftUI를 사용하지 않고, UIKit 에서 사용하고 싶어서 찾아봤다.[참고 영상]
-
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(수)
- Wiki 전면 개편
- 깃허브 이슈마다 마일스톤 할당
- Sequelize DB 모듈을 위한 db configuration 작성
- Sequelize DB 초기 환경설정
- Sequelize DB를 활용하여 테이블 생성 및 관계 형성
- RxSwift(Observable, Subscribe, RxCocoa)학습
- 깃허브 이번 주 할 일 마일스톤 할당
- ValidationChecker 구현
- IssueListModel 구현, 더미 데이터 생성
- IssueListMainViewController 구현
Day4 - 2020.10.29(목)
-
모듈을 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 로그인의 경우 개발자 계정이 필요하므로 잠시 보류
-
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 에 저장된 정보를 통해 로그인 가능
- github OAuth
-
IssueList 화면 구성
- RxSwift를 활용하여 ViewModel 구현 후 SearchList 뷰 컨트롤러에서 바인딩
- Search bar 에서 검색 중일때는 Cell Title의 String Matching 을 통해 검색 결과 노출
- 검색 완료 시 다시 Result Collection View 표시
-
TabBarController 화면 구성
- Dummy Token이 존재하면 TabBarController가 첫번 째 화면이 되고 그렇지 않으면 로그인 화면이 첫번 째 화면이 되도록 구성
- LabelList, MilestoneList 씬도 TabBarController에 추가