경희대 해커 기술 세미나 - Xamarin을 이용한 크로스 플랫폼 앱 개발(이현규)
Transcript of 경희대 해커 기술 세미나 - Xamarin을 이용한 크로스 플랫폼 앱 개발(이현규)
Xamarin을 이용한
크로스 플랫폼 앱 개발
Xamarin for Cross-Platform
29기 이현규
© Eguni. All right reserved.
2016 Hacker Seminar
INDEX
1. Introduction of Xamarin
2. Xamarin 개발에 필요한 것들
3. Xamarin 기본 구조 맛보기
4. 레퍼런스 가이드
어리버리한 부회장(?)
C#으로 꾸준히 개발해 온 (현재까지는)C# 개발자
.NET으로 이것저것 건드리면서 노는 걸 좋아함
최근에 Xamarin을 접하고 열렬히 공부 중!
자기소개!
Introduction of Xamarin 자마린? 그게 뭔데?
Xamarin 소개 : Mono?
Xamarin을 설명하기 위해 먼저 Mono부터..
.NET 기술들은 .NET Framework가설치되어 있어야 사용할 수 있음
Windows에서만 지원되는 .NET Framework다른 플랫폼에서도 지원되게 할 수는?
그래서 등장한 것이 Mono
Xamarin 소개
Xamarin 소개
+ =
Xamarin 소개
Xamarin 소개
Xamarin : C#을 사용하는 모바일 앱 개발 도구
Cross-Platform 지원Android, iOS, Windows Phone 개발을 한 번에!어마어마한 비용의 절약이 가능
모바일 앱 개발 뿐만 아니라Windows, Mac App 개발도 동시에 가능!
Xamarin 소개
Xamarin 소개
MS에서 Xamarin 전격 인수
Xamarin을 왜 사용해야 하는가?
1. 크로스 플랫폼 지원
- 여러 플랫폼에 공유되는 모듈을 통해 개발 시간의 단축 유도
2. 모바일 환경 개발에서의 .NET 라이브러리 지원
- 기존 .NET 프로그래머가 쉽게 적응할 수 있는 환경에서 모바일 앱 개발 가능
Windows APIs for Xamarin
Windows + Android APIs for Xamarin
Windows + iOS APIs for Xamarin
Xamarin 개발에 필요한 것들뭔지는 알겠는데, 뭘 깔아야 되는데?
Xamarin 개발용 IDE
Xamarin Studio Visual Studio
Emulator for Android
Xamarin Android Player(currently deprecated)
Visual Studio Android Emulator
가장 중요한 것
← iOS 개발에 필수
Windows <-> Mac 연동
Windows <-> Mac 연동
Xamarin 구조 맛보기흠, 그래서 구조는 어떻게 되어 있다고?
Xamarin Basic Structure
백엔드는 Full-Shared Code
프론트엔드는 각각 따로 작업해 줘야 함Android의 네이티브 컨트롤,iOS의 네이티브 컨트롤… 등이 다 다르기 때문
가장 기본적인 Xamarin의 구조그런데 프론트엔드를 꼭 이렇게 해야...?
Xamarin Basic Structure
Xamarin Basic Structure + Xamarin.Forms
Xamarin.Forms :프론트엔드 단을 크로스 플랫폼으로 처리
네이티브 컨트롤 처리 / 플랫폼별 UI 분기 처리는유지하되, 공통되는 부분은 한꺼번에 처리
axml 형식의 UI 출력
진정한 의미의 크로스 플랫폼!
Xamarin Solution Architecture
Xamarin Solution Architecture
Code Sharing Options
Shared Asset Project vs PCL
Shared Asset Project
Portable Class Library
Shared Project vs PCL
[자마린 개발자 커뮤니티, Xamarin님 글 인용]
NuGet 지원
Xamarin 레퍼런스 가이드더 공부하고 싶은데, 어디서 공부함?
우선은 책부터
커뮤니티는?
전문적으로 배울 곳은?
https://www.xamarin.com/university