<aside>
[훈련목표]
프로그래밍 언어 학습을 통해 앱 및 웹 프로그래밍을 할 수 있고
컴퓨터비전 및 자연어처리와 같은 머신러닝 기술을 앱에 통합하여 개발할 수 있는
신입 개발자 양성 과정
</aside>
<aside>
[사용 언어 & 스택]
Front End
- 안드로이드 앱 : JAVA, KOTLIN
- 웹 프로그래밍 : HTML, CSS, JAVASCRIPT, REACT
- 크로스플랫폼 앱 : Flutter, React Native
Back End
- 백엔드 서비스 : PHP, node.js, Web Hosting, Firebase
- 데이터베이스 : MySQL, SQLite, Firestore No-SQL DB
Machine Learning
- Google ML kit, Tensorflow, Tensorflow lite, Keras, PyTorch
- Python, JavaScript
형상관리 & 공공데이터
- Git, GitHub
- OPEN API, REST API
</aside>
PART1. AI 앱 프로그래밍
학습주차 |
목차 및 주요내용 |
학습 목표 |
1~4주 |
기초 프로그래밍 |
|
- 개발환경 구축
- Java 기본 개념 및 문법 학습
- 객체지향프로그래밍 학습
- 스레드, 네트워크 통신 등의 고급 문법 학습
- GUI 프로그래밍 맛보기 | - 대한민국에서 가장 많은 개발자가 사용하는 Java언어에 익숙해져보기
- Java를 잘하자! 가 아니라 개발을 한다는 행위를 체득하기 |
| 5~10주 | 앱 프로그래밍
- 개발환경 구축
- Java 언어를 이용한 앱 개발 기초 학습 및 미니 앱 개발
- Kotlin 언어 기본 개념 및 문법 학습과 앱 개발 방법 학습
- Open API를 이용한 정보제공 앱 개발 [ REST API ]
- 위치기반서비스, 카메라 기술을 적용한 앱 개발
- Backend 서버를 이용한 정보공유 앱 개발
- Jetpack 라이브러리를 활용
- MVP, MVVM 아키텍처 패턴 | - 헬스케어기기에서 사용하는 앱들은 아직도 Java로 앱을 개발해요. Java로 안드로이드 기본 앱을 만들어 보기
- Java언어를 현대적인 문법으로 개선한 Kotlin 언어의 문법적 특징을 이해하기
- 안드로이드의 공식 개발언어인 Kotlin을 이용하여 앱을 개발하는 방법을 습득하기 |
| 11~13주 | 앱 개발 개인 프로젝트
⇒ 신입 앱 개발자의 포트폴리오에 필수로 요구하는 기술을 포함한 자유 주제 앱 개발 개인 프로젝트
| - 본인이 생각하는 아이디어로 앱을 만들어 봄으로서 이전단계에서 학습한 앱 개발 기술 역량 강화
- [기획-설계-개발-테스트-배포] 의 앱 개발 프로세스를 A부터 Z까지 스스로 수행해 보기
- 앱을 실제 마켓에 배포하고 관리해보기 |
| 13~14주 | Machine Learning API 교과
- ML-kit 얼굴인식, 객체탐지, 광학문자인식 API 앱 개발 방법 학습
- TensorFlow-Lite 이미지분류, 글씨 분석 API 앱 개발 방법 학습
- Python 언어의 기초 문법
- Python 언어를 활용한 Custom Machine Learning model 만들기 | - 머신러닝 이미지 분류 모델 빌드
- 머신러닝 자연어 처리 모델 빌드
- MLkit, Tensorflow Lite와 같은 머신러닝 API를 이용하여 온 디바이스 AI 앱 만들어보기 |
| 14~16주 | AI 지능형 앱 개발 팀 프로젝트
- 주제: 머신러닝 라이브러리를 활용하여 OCR, 이미지분류 등의 기능을 기존 앱에 통합하기
- 음식사진 칼로리 정보추출 앱, 공공요금 고지서 자동 추출 및 관리 앱 | - 참여기업에서 승인한 실무과제를 수행함으로서 현업과 유사한 경험을 해보기
- 팀 프로젝트 수행을 위한 협업기법 Git, Github, Figma 등을 활용해보기 |
PART2. 지능형 웹앱 프로그래밍
학습주차 |
목차 및 주요내용 |
학습 목표 |
17~18주 |
웹 서비스 프로그래밍 |
|
- HTML, CSS, JavaScript 기초 문법 학습
- PHP, Node.js등 다양한 서버사이드 언어를 이용하여 Back-end(서버) 서비스 활용
- 반응형 웹 디자인 학습
- 게시판 웹 페이지 만들기 | - 전통적인 웹 개발 언어인 HTML, CSS, JavaScript를 학습하기
- 웹페이지를 개발하는 신입개발자들이 가장 많이 수행한 기술면접 과제인 게시판 웹 만들어 보기 |
| 19~20주 | 프론트엔드 프레임워크
- React 프레임워크의 구조 및 특징 학습
- JSX, 컴포넌트, SPA에 대한 이해
- state, props, HOOK 기술 학습
- 일정관리 todo webapp 만들기
- OPEN API 영화정보제공 웹앱 만들기
- 호스팅 서버를 이용하여 웹앱 서비스 시작하기 | - 기존 웹개발 기술과 다른 React CRA 프레임워크의 개발 구조 및 방법을 이해하며 웹앱 만들어 보기
- React의 주요특징인 JSX, 컴포넌트, SPA, state, props, HOOK 기술을 이해하며 실무 제작기법에 유사한 경험해보기
- 웹뷰를 이용하여 웹앱으로 만들어 플레이 스토어에 배포하기 |
| 20~21주 | 크로스플랫폼 앱
- React Native프레임워크의 구조 및 특징 학습
- 영화정보 제공 앱 만들기
- Flutter프레임워크의 구조 및 특징 학습
- Dart 언어에 대해 알아보기
- IOS, ANDROID 플랫폼 별 개발환경 구축 및 빌드 해보기 | - 웹 프론트엔드 프레임워크인 React와 크로스플랫폼 프레임워크인 React Native 와의 차이를 확인해보며 앱 개발해보기
- React Native와 같은 목적의 크로스플랫폼 프레임워크인 Flutter로 앱 개발해보기
- 하나의 앱 개발 프로젝트로 IOS, ANDROID 용 앱을 모두 빌드하여 배포해보기 |
| 22~26주 | 지능형 웹앱 서비스 개발 팀 프로젝트
- 주제 : React 컴포넌트와 머신러닝 모델을 통합하고 사용자 경험을 최적화하는 지능형 웹 서비스 개발하기
- 리뷰 텍스트 분석 서비스, 사용자 취향분석 숙소추천 웹서비스, AI 대화형 영어 학습 웹서비스
- 웹 호스팅 및 플레이 스토어에 웹앱 배포 | - React 컴포넌트에 머신러닝 API를 적용하여 고객데이터를 분석하여 서비스하는 지능형 웹앱 서비스 개발하기
- 웹뷰를 이용하여 웹앱으로 만들어 플레이 스토어에 배포하기
- 카메라, 전화, 연락처 등 디바이스 고유기능 구현을 위해 kotlin을 이용한 네이티브 앱과 연동하기 |