실습 개발환경
  - iOS :
    
      - XCode 최신버전
 
      - Swift(주력)
 
      - Objective-C (2가지 언어 혼합 사용 환경)
 
    
   
  - AOS :
    
      - Android Studio 최신버전
 
      - Kotlin(주력)
 
      - Java (2가지 언어 혼합 사용 환경)
 
    
   
  - API :
    
      - PMS(오픈오브젝트) 개발서버 (http://dpms.openobject.net:4003/api/..)
 
      - Google Open API
 
    
   
  - 웹페이지
    
      - PMS (오픈오브젝트) 개발서버 (http://dpms.openobject.net:4003)
 
    
   
  - Firebase
    
      - push, dynamic link, analytics
 
    
   
  - 소스관리 :
    
      - Git (http://git.openobject.net:8880/) personal project 생성, 멤버 초대
 
      - merge시 마다 PR(MR)요청하여 각 파트 멤버들에게 리뷰 요청
 
    
   
기간
  - 언어 습득 및 앱제작 1,2,3,4 번 기능을 총 8~10주간 실습 (진행속도에 따라 단축)
 
  - 앱제작 기능별 내용을 정리하여 인수인계 형식으로 각 파트 동료들과 리뷰 진행
 
  
    
      | 항목 | 
      상세 | 
      1주 | 
      2주 | 
      3주 | 
      4주 | 
      5주 | 
      6주 | 
      7주 | 
      8주 | 
      9주 | 
      10주 | 
    
  
  
    
      | 개발환경 세팅 | 
      IDE, SDK 설치, Git 생성 | 
      O | 
        | 
        | 
        | 
        | 
        | 
        | 
        | 
        | 
        | 
    
    
      | 언어 습득 | 
      Swift, Kotlin | 
      O | 
      O | 
        | 
        | 
        | 
        | 
        | 
        | 
        | 
        | 
    
    
      | 앱제작-방리스트 화면 | 
      MVC, MVVM 패턴 조사 | 
        | 
        | 
      O | 
        | 
        | 
        | 
        | 
        | 
        | 
        | 
    
    
      |   | 
      파일 JSON fetch | 
        | 
        | 
      O | 
        | 
        | 
        | 
        | 
        | 
        | 
        | 
    
    
      |   | 
      리스트 화면 구성 | 
        | 
        | 
      O | 
        | 
        | 
        | 
        | 
        | 
        | 
        | 
    
    
      |   | 
      필터링 , 소팅 기능 | 
        | 
        | 
        | 
      O | 
        | 
        | 
        | 
        | 
        | 
        | 
    
    
      |   | 
      페이징 기능 | 
        | 
        | 
        | 
      O | 
        | 
        | 
        | 
        | 
        | 
        | 
    
    
      | 앱제작-책검색 | 
      통신모듈 작성 | 
        | 
        | 
        | 
        | 
      O | 
        | 
        | 
        | 
        | 
        | 
    
    
      |   | 
      구글 API 통신 | 
        | 
        | 
        | 
        | 
      O | 
        | 
        | 
        | 
        | 
        | 
    
    
      |   | 
      검색, 리스트 화면 구성 | 
        | 
        | 
        | 
        | 
        | 
      O | 
        | 
        | 
        | 
        | 
    
    
      |   | 
      상세화면 구성 | 
        | 
        | 
        | 
        | 
        | 
      O | 
        | 
        | 
        | 
        | 
    
    
      | 앱제작-firebase활용 | 
      firebase앱등록 | 
        | 
        | 
        | 
        | 
        | 
        | 
      O | 
        | 
        | 
        | 
    
    
      |   | 
      앱내 SDK 적용 | 
        | 
        | 
        | 
        | 
        | 
        | 
      O | 
        | 
        | 
        | 
    
    
      |   | 
      푸시 기능 | 
        | 
        | 
        | 
        | 
        | 
        | 
      O | 
        | 
        | 
        | 
    
    
      |   | 
      다이나믹 링크 기능 | 
        | 
        | 
        | 
        | 
        | 
        | 
        | 
      O | 
        | 
        | 
    
    
      |   | 
      애널리틱스 기능 | 
        | 
        | 
        | 
        | 
        | 
        | 
        | 
      O | 
        | 
        | 
    
    
      | 앱제작-웹뷰연동 | 
      PMS 로그인 화면 구성 | 
        | 
        | 
        | 
        | 
        | 
        | 
        | 
        | 
      O | 
        | 
    
    
      |   | 
      PMS 로그인 API | 
        | 
        | 
        | 
        | 
        | 
        | 
        | 
        | 
      O | 
        | 
    
    
      |   | 
      PMS 웹뷰 열기 | 
        | 
        | 
        | 
        | 
        | 
        | 
        | 
        | 
      O | 
        | 
    
    
      |   | 
      웹뷰 브릿지 환경 구성 | 
        | 
        | 
        | 
        | 
        | 
        | 
        | 
        | 
        | 
      O | 
    
    
      |   | 
      웹뷰 요청 기능 화면 구성 | 
        | 
        | 
        | 
        | 
        | 
        | 
        | 
        | 
        | 
      O | 
    
  
개발 언어 습득
  - swift, kotlin에 익숙치 않은경우 언어 습득 부터 진행
 
  - 해당 언어에 익숙하다면 앱 제작 실습 부터 진행
 
  - 책 구입 혹은 온라인 강의 지원
 
앱 제작 실습
1. 방(Room) 리스트 화면
  - MVVM 패턴을 조사하고 해당 방식으로 제작
 
  - 주어진 파일에서 JSON 모델 fetch
 
  - 이미지, 방 타입, 가격, 날짜 정보등을 전체 리스트 화면으로 표시
 
  - 특정 데이타 타입별로 필터링된 리스트 표시하는 기능
 
  - 높은 가격, 낮은 가격별로 소팅 하는 기능
 
  - 리스트 전부를 한번에 표시하지 않고, 10개씩 데이타를 가져와서 표시 (paging 기능)
 
2. 책(Book) 검색 화면
  - HTTP get, post 할수 있는 통신모듈 작성
 
  - HTTP API 통해서 Json model fetch
 
  - google book api 사용하여 책을 검색 조회
 
  - 책 제목, 설명, 이미지등을 리스트 화면으로 표시
 
  - 해당 책을 선택했을때 해당 책 상세 화면 표시
 
3. Firebase 활용
  - Google Firebase 앱등록
 
  - push 발송
 
  - FCM 등록
 
  - 앱 라우팅정보, 기타정보 포함
 
  - 콘솔에서 테스트 발송
 
  - 앱에서 푸시 수신 후, 라우팅 정보를 파악하여 앱 화면 이동
 
  - 앱애서 푸시 수신 후, 수신된 정보를 앱에 저장하여 푸시 메시지함 제작
 
  - Dynamic 링크
 
  - 앱 라우팅정보를 포함하여 링크 제작
 
  - 링크 클릭시 앱 연결 및 라우팅 정보를 파악하여 앱 화면 이동
 
  - Analytics
 
  - 모든 버튼 동작시 애널리틱스 전송
 
4. 하이브리드 웹뷰
  - ID, PW를 입력받는 로그인 화면 제작하고, PMS 로그인 API를 이용하여 로그인
 
  - 로그인 이후 웹뷰에 로그인 정보를 세팅하여 PMS 웹페이지 열기
 
  - PMS 웹페이지와 네이티브간의 정보를 공유하는 환경 세팅
 
  - 네이티브와 웹페이지간의 정보 공유하는 방식 조사
 
  - 오픈소스 FlexHybridApp을 적용
 
  - 웹뷰에서 원하는 데이타를 전달
 
  - 네이티브가 원하는 데이타를 웹뷰에서 전달받음
 
기술 기록
  - 앱 제작 실습 시, 조사했던 것중, 개인적으로 흥미로웠던 내용이나, 유의미한 기술 내용을 개인 블로그 기록하여 공유한다.
 
기타
  - 실습, 교육내용은 멘토에 의해 변경, 추가 될수 있음
 
  - 각 앱화면의 디자인 가이드 제작 예정
 
        
      
      
      
      
  
     
    
      
    
  
Leave a comment