somedd / swift-StoreApp

쇼핑 iOS 앱 저장소 / `18.04.26~`18.06.14
4 stars 1 forks source link

- Step1 (상품 목록)

요구사항

실행화면

screemsh_step1

- Step2 ( AutoLayout 적용 )

요구사항

실행화면

screemsh_step2

AutoLayout

Priority & isActive

- Step3 ( Custom Section 헤더 적용 )

요구사항

실행화면

screemsh_step3

- Step4 ( Cocoapods )

요구사항

실행화면

screemsh_step4-1 screemsh_step4-2

학습꺼리

- Step5 ( Network 프로그래밍 )

요구사항

학습꺼리

1. 네트워크의 역사

2. iOS Networking

3. APIs for HTTP / HTTPs

4. NSURLSession

ALAMOFIRE

- Step6 ( 병렬처리 )

요구사항

실행화면

screemsh_step6

- Step7 ( 상품 상세화면 전환 )

요구사항

  1. 상품 상세 화면(View) 구현

    • ViewController 를 Navigation Controller로 embed
    • cell을 선택하면 상품 상세 화면을 보이도록 새로운 뷰 컨트롤러를 구현
    • 상세 화면 디자인은 NextStep 참고
  2. 상세화면 VC - View 연결 및

    • 상세 화면(DetailViewController)으로 선택한 cell의 detail_hash 값을 전달하세요.
    • http://crong.codesquad.kr:8080/woowa/detail/{detail_hash} URL 형식으로 요청하고 받은 JSON 데이터를 Decode 하는 네트워크 담당 모델 객체를 만드세요.
    • 상세 화면을 표시하기 전에 네트워크 담당 모델 객체에서 데이터를 받아서 화면 정보를 채워서 표시하세요.
      • self.view 커스텀 클래스를 UIScrollView로 지정하고 하위 뷰들은 self.view.contentView 에 추가하세요.
      • ScrollView ContentSize에 대해 찾아보고, 전체 콘텐츠 높이를 계산해서 스크롤되도록 값을 지정하세요.
      • 상단 ScrollView 에 thumb_images 항목의 이미지들을 Page 형태로 추가하세요. 좌우로 페이지 넘기듯이 넘어가도록 만드세요.
      • 설명 아래부분에는 제품 상세 설명을 위해서 detail_section 항목의 이미지들을 코드로 이어서 붙이세요.
  3. 주문 동작 구현(Network)

    • 상세 화면에 대한 Delegate 프로토콜과 프로토콜을 채택하는 속성을 추가하세요.
      • 상세 화면에서 결과를 전달하기 위한 Delegate 프로토콜을 선언하세요.
      • 프로토콜에는 주문을 완료했을 때 호출할 메소드를 선언하세요.
      • ViewController에는 프로토콜을 채택하고 위의 메소드를 구현하세요.
    • [주문하기] 버튼을 누르면 델리게이트 객체에 주문 완료 메소드를 호출합니다.

학습꺼리

HTTP

UIScrollView 관련 헤맸던 부분

실행화면

screemsh_step7_4 screemsh_step7_5

- Step8 ( 연결성 확인 Reachability )

요구사항

학습꺼리

Reachability

실행화면

screemsh_step8_1 screemsh_step8_2