40차 스프린트 피드백

  1. API 문서 정독하고 적용하기
    1. timer
      1. 로드되기 전 동작할 경우
      2. 다른 화면으로 갈 때
      3. background로 갈 때 고려 -> observer
    2. pageViewController (UIPageViewControllerDataSource 말고 UIPageViewControllerDelegate에서 뷰 작업 처리)
  2. 재사용되는 로직은 function으로 감싸기, 관련 로직들도 function으로
  3. setViewControllers처럼 completion이 있는 경우 유의
  4. didEnterBackground보다 willResignActive(앱이 백그라운드로 갈 때 처리는)
  5. 데이터 다시 로드하는 메소드는 따로 만들기.refreshData
    1. 뷰가 재활용되므로 뷰 관련 처리(viewDidLoad)시 오류날 수 있음
    2. 뷰 관련 처리는 viewDidLoad에! ex.gradient
  6. guard let a?[0]은 a가 nil일 경우 오류남. range out of index
    1. guard let a?.first 는 오류 안 남
  7. 주석 적극 활용
    1. iOS 버전 의존적인가
    2. private function
    3. extention

 

  1. 롤링, 클릭 영역 확인 후 뷰 작업-> 감싸야 되니까.. 나중에 감싸면 다 깨짐 ㅠ
  2. scrollView 안의 뷰는 contentView로 묶기
  3. 비슷한 뷰들은 view로 감싸기
  4. height, width constraint는 최대한 적게, 가장 안의 것부터 컨스트레인트를 준다
    1. 숫자로 주는 constraint는 무조건 기피하기!
  5. 가이드에 관련해서 계산할 때, 가이드 숫자를 엑셀 파일에 쭉 입력하고 옆에 round(x*320/360) 값 이용해서 적용
  6. iOS8에서는 margin이용한 top, bottom constraint 오류 동작함
  7. scale to fill/ aspect to fill/ aspect to fit에 유의!
    1. 사진이 동적인 경우
      1. 꽉 채워야 하는 경우 aspect to fill 사용
      2. 여백을 이용하는 경우는 aspect to fit사용
  8. label 같은 기본 텍스트. 넣어지는 값으로 수정하기(서버 로드 실패시 노출됨)

 

  1. iOS 기기에서 캡쳐할 때 오류나면 simulator로 런
  2. iOS8에서 테스트
  3. iOS 테스트 독려하기
  4. 운영 버전에서도 테스트!
  5. 서버 데이터 로드 실패했을 때 테스트

 

  1. 전체 리뷰 받기

 

  1. 링크 문서 앱 버전은 출시된 버전을 itunes, google developer console 참고하여 작성