SlideShare a Scribd company logo
1 of 99
Download to read offline
Xamarin.Forms로
iOS, 안드로이드앱
두 마리 토끼잡기
이길복 (주) 바이트코드랩 이사
Microsoft MVP
http://1drv.ms/1BGxndp
이길복 (Gilbok Lee)
•  현재는 (주)바이트코드랩 이사
전에는 (주)휴즈플로우 CTO
•  Microsoft MVP 7년
•  Expression Blend(2008~2009) → Silverlight(2010~2012) → ClientApp Dev(2013) → Windo
ws Platform Development(2014)
•  C#으로 하는 건 뭐든 좋아!
•  Silverlight
•  WPF
•  Windows Phone
•  Windows Store App
•  Unity
•  Xamarin
바이트코드랩?
•  “뭐! 게임에 카카오톡을 붙였더니 서버가
한 시간도 못 버티고 죽는다고??!”
•  모바일 게임서버, Hive5에서 시작하세요.
•  Hive5 SDK
•  (REST API)
•  유니티 3D
•  Unreal (개발중)
목차
1.  Xamarin 인포그래픽
2.  Xamarin의 시대적 사명
3.  Xamarin 개발환경
4.  Xamarin.Forms  헬로월드
5.  Xamarin.Forms 개요
6.  PCL(Portable Class Library)
7.  Shared Project
8.  Navigation
9.  다국어지원
10. IPlatformDependent
11. More Xamarin
(Windows Phone, Mac OS, Component Store)
Xamarin 인포그래픽
http://goo.gl/q63jY3
Xamarin 시대적 사명
일타쌍피의 정신계승: 크로스플랫폼
사업가의 니즈
관리자의 니즈
개발자의 니즈
여러 모바일 플랫폼 앱들을
단 하나의 C#언어로 통일.
오! LINQ!
플랫폼 간 코드를 공유
- 비즈니스로직: PCL
- 리소스: SharedProject
플랫폼 간 코드를 공유
- UI & 워크플로우: Xamarin.For
ms !
혹시 Visual Studio를 사용한다면,
최강의 인텔리센스, Resharper 등
개발자 경험 그대로~
혹시 윈도우폰/윈도우스토어 앱을
개발해 놓은 코드가 있다면, 재활용할
수 있을지 몰라…
혹시 클라우드서비스 중 애저를 좋아
한다면, Windows Azure Compone
nt를 쓰면 되고!
Xamarin 개발환경 구축하기
원클릭 설치
•  http://xamarin.com 구석구석 Download Now 버튼
Main IDE #1: Xamarin Studio
Main IDE #2: Visual Studio
시간절약합시다
•  Visual Studio 2013 Update 3
•  Nuget Package Manager (2.3 이상) 업데이트 필수
•  [Tools ­– Extensions and Updates ­– Online Update]
요구사항
•  Mac
•  Mac OS Mountain Lion 이상
•  XCode(iOS SDK 함께 깔림)
•  Windows
•  Windows 7 이상
•  Visual Studio 2010 Professional 이상
•  Express Edition은 안 되요. (Add-ins 기능 미지원)
•  없으면 Xamarin Studio 쓰세요!
AOT Compiler가 네이티브앱 생성 iOS API 100% 지원
iOS 5부터 현재까지 same-day shipping기존 Objective C 코드 호출가능
JIT Compilation -> Native APK
기존 Java 코드 호출가능
Android API 100% 지원
ICS부터 현재까지 same-day shipping
맥이 없어도 되나?
•  Sorry, 그건 아님.
Xamarin.iOS Build Host
Xamarin.iOS Build Host : Mac
특이사항
•  보통은 기다리다 지쳐 IP 입력수동연결!
•  윈도우/맥 양쪽에 설치된 Xamarin 버전이 일치해야함!
•  실패하면 진단
안드로이드 에뮬레이터: 지니모션
Nuget & Component Store
Xamarin.Forms 헬로월드
코드리뷰
Xamarin.Forms 개요
Overview
Xamarin.Forms
•  하나의 UI 코드로 여러 플랫폼을 동시에!
•  XAML Controls임!
•  그런데 미안해! 알고있는 그 XAML 아님.
•  즉, 고대부터 존재한 XAML Designer와 호환되지 않음.
•  MVVM과 데이터바인딩!
•  애니메이션!
•  애니메이션과 async/await
Xamarin.Forms
Pages
Layouts
Controls
PCL을 소개합니다.
(Portable Class Library)
PCL은 멀티플랫폼을 target하기 위해 만
들어진 클래스 라이브러리.
다시 컴파일 하는 일 없이 다양한 .NET 플
랫폼 위에서 사용될 수 있는 어셈블리를 만
들어내는 클래스 라이브러리
System.IO네임스페이스 136개 클래스 중
40
in Xamarin.iOS and Xamarin.Android
14
in PCL
플랫폼마다 지원하는 BCL 범위 다름
BCL = .NET Base Class Library
아… 진짜 사랑해 LINQ
장점(pros)
•  중앙집중식 코드 공유
•  다른 라이브러리들 사용하면서, 한 프로젝트에 코드 작성하고 테스트 가능
•  리팩토링 작업이 전역적으로 영향을 미칠 수 있음
•  PCL라이브러리와 각각의 플랫폼 앱 프로젝트를 동시에 수정하는 것이 가능
•  솔루션 내의 다른 프로젝트에 아주 쉽게 참조추가
•  출력 어셈블리를 공유할 수 있음
단점(cons)
•  서로서로 공통인 것만 인정해 주기 때문에 특정 플랫폼 타는 라이브러리
는 참조 불가. 예를 들어, Community.CsharpSqlite.WP7 따위
•  MonoTouch()와 Mono for Android가 동시에 지원하고 있지 않은 클
래스는 포함하고 있지 않음.
Shared Project를
소개합니다
이미지, 코드, 미디어 파일을 공유.
일단 SharedProject에 어떤 파일을
넣으면 모든 플랫폼에서 공유함.
Add as a link 기억하세요?
파일 링킹과 유사한 컨셉.
코드의 경우 조건부 컴파일 가능.
아이폰, 안드로이드폰 코드 섞어 놓고
빌드 설정으로 제어가능.
#if __Android__
GitHub에서 Tasky 프로젝트
https://github.com/xamarin/mobile-samples/tree/mas
ter/Tasky
Xamarin Studio 5
Visual Studio 2013 Update 2
부터 지원
Navigation
Page A Page B
await this.Navigation.PushModalAsync(signInPage);
await this.Navigation.PopModalAsync();
다른 페이지 위에 Modal로
열 때:
닫을 때:
await this.Navigation.PushAsync(eventDetailPage);
await this.Navigation.PopAsync();
다른 페이지로
이동할 때:
돌아올 때:
다국어지원
Localization
다국어 리소스준비
Country Code
ISO 1366
Code에서 사용하기
XAML에서 사용하기 STEP1
•  TranslateExtension.cs 구현
•  Xamarin.Forms Sample에 들어있음
•  https://github.com/xamarin/xamarin-forms-samples/blob/master/
UsingResxLocalization/UsingResxLocalization/PagesXaml/TranslateE
xtension.cs
XAML에서 사용하기 STEP2
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="ServicePointPush.SignInPage"
xmlns:local="clr-namespace:ServicePointPush;assembly=ServicePointPush"
xmlns:i18n="clr-namespace:ServicePointPush;assembly=ServicePointPush">
<StackLayout Padding="20" Orientation="Vertical">
<Entry x:Name="UserIdText"
Placeholder="{i18n:Translate View_SignIn_PlaceHolder_UserId}" />
<Entry x:Name="PasswordBox" IsPassword="true"
Placeholder="{i18n:Translate View_SignIn_PlaceHolder_UserPw}" />
</StackLayout>
</ContentPage>
IPlatformDependent
Interface for native feature support
플랫폼 의존성을 가진 기능 지원하는 방법
•  SQLite
•  Notification
•  UUID얻기
•  OS의 언어설정 얻기
•  Camera 등 하드웨어 관련
Nuget Package Manager
SQLite.NET 이용하기
•  Nuget Package Manager로
•  PCL 프로젝트에 SQLite.Net PCL 추가
•  iOS 프로젝트에 SQLite.Net PCL과
SQLite.Net PCL ­– XamarinIOS Platform 추가
•  Android 프로젝트에 SQLite.Net PCL과
SQLite.Net PCL ­– XamarinAndroid Platform 추가
PCL
Android
iOS
PCL에 ISQLite 추가
namespace ServicePointPush
{
public interface ISQLite
{
SQLiteConnection GetConnection();
bool ExistsTable<T>(SQLiteConnection conn);
}
}
iOS 프로젝트에 ISQLite 구현
[assembly: Dependency(typeof(SQLiteiOS))]
namespace ServicePointPush.iOS
{
public class SQLiteiOS : ISQLite
{
public SQLiteiOS() { }
public SQLite.Net.SQLiteConnection GetConnection()
{
var sqliteFilename = AppDb.DbFileName;
string documentsPath = Environment.GetFolderPath(Environment.SpecialFolder.Personal); // Documents folder
string libraryPath = Path.Combine(documentsPath, "..", "Library"); // Library folder
var path = Path.Combine(libraryPath, sqliteFilename);
var plat = new SQLitePlatformIOS();
var conn = new SQLiteConnection(plat, path);
return conn;
}
public bool ExistsTable<T>(SQLiteConnection conn)
{
return conn.ExistsTable<T>();
}
}
}
Android 프로젝트에 ISQLite 구현
[assembly: Dependency(typeof (SQLiteAndroid))]
namespace ServicePointPush.Droid
{
public class SQLiteAndroid : ISQLite
{
public SQLiteAndroid () {}
public SQLite.Net.SQLiteConnection GetConnection ()
{
var sqliteFilename = AppDb.DbFileName;
string documentsPath = System.Environment.GetFolderPath (System.Environment.SpecialFolder.Personal);
var path = Path.Combine(documentsPath, sqliteFilename);
var plat = new SQLitePlatformAndroid();
var conn = new SQLiteConnection(plat, path);
return conn;
}
public bool ExistsTable<T>(SQLiteConnection conn)
{
return conn.ExistsTable<T>();
}
}
}
사용할 땐
var sqlite = DependencyService.Get<ISQLite>();
if (sqlite == null)
throw new NullReferenceException("sqlite should not be null");
_conn = sqlite.GetConnection();
if (sqlite.ExistsTable<NotificationData>(_conn) == false)
{
_conn.CreateTable<NotificationData>();
}
More Xamarin
More
•  Google Wear, Google Glass
•  Windows Phone
•  Windows Store App
자기주도학습 시작점
http://developer.xamarin.com
무료 C# 티셔츠!
https://xamarin.com/c-sharp-shirt
Contact
gilbok@live.com
감사합니다.

More Related Content

What's hot

하이브리드앱
하이브리드앱하이브리드앱
하이브리드앱knight1128
 
The Future of C# and .NET Framework
The Future of C# and .NET FrameworkThe Future of C# and .NET Framework
The Future of C# and .NET Framework명신 김
 
2016 W3C Conference #8 : IONIC으로 하이브리드 앱 개발하기, 사례와 시사점
2016 W3C Conference #8 : IONIC으로 하이브리드 앱 개발하기, 사례와 시사점2016 W3C Conference #8 : IONIC으로 하이브리드 앱 개발하기, 사례와 시사점
2016 W3C Conference #8 : IONIC으로 하이브리드 앱 개발하기, 사례와 시사점양재동 코드랩
 
[H3 2012] Bridge over troubled water : make plug-in for Appspresso
[H3 2012] Bridge over troubled water : make plug-in for Appspresso[H3 2012] Bridge over troubled water : make plug-in for Appspresso
[H3 2012] Bridge over troubled water : make plug-in for AppspressoKTH, 케이티하이텔
 
한발 앞서 배워보는 Xamarin overview
한발 앞서 배워보는 Xamarin overview한발 앞서 배워보는 Xamarin overview
한발 앞서 배워보는 Xamarin overviewYoung D
 
Android와 Flutter 앱 개발의 큰 차이점 5가지
Android와 Flutter 앱 개발의 큰 차이점 5가지Android와 Flutter 앱 개발의 큰 차이점 5가지
Android와 Flutter 앱 개발의 큰 차이점 5가지Bansook Nam
 
TDD로 Widget 개발하기
TDD로 Widget 개발하기TDD로 Widget 개발하기
TDD로 Widget 개발하기Bansook Nam
 

What's hot (9)

하이브리드앱
하이브리드앱하이브리드앱
하이브리드앱
 
The Future of C# and .NET Framework
The Future of C# and .NET FrameworkThe Future of C# and .NET Framework
The Future of C# and .NET Framework
 
2016 W3C Conference #8 : IONIC으로 하이브리드 앱 개발하기, 사례와 시사점
2016 W3C Conference #8 : IONIC으로 하이브리드 앱 개발하기, 사례와 시사점2016 W3C Conference #8 : IONIC으로 하이브리드 앱 개발하기, 사례와 시사점
2016 W3C Conference #8 : IONIC으로 하이브리드 앱 개발하기, 사례와 시사점
 
1.develop environment
1.develop environment1.develop environment
1.develop environment
 
Overview
OverviewOverview
Overview
 
[H3 2012] Bridge over troubled water : make plug-in for Appspresso
[H3 2012] Bridge over troubled water : make plug-in for Appspresso[H3 2012] Bridge over troubled water : make plug-in for Appspresso
[H3 2012] Bridge over troubled water : make plug-in for Appspresso
 
한발 앞서 배워보는 Xamarin overview
한발 앞서 배워보는 Xamarin overview한발 앞서 배워보는 Xamarin overview
한발 앞서 배워보는 Xamarin overview
 
Android와 Flutter 앱 개발의 큰 차이점 5가지
Android와 Flutter 앱 개발의 큰 차이점 5가지Android와 Flutter 앱 개발의 큰 차이점 5가지
Android와 Flutter 앱 개발의 큰 차이점 5가지
 
TDD로 Widget 개발하기
TDD로 Widget 개발하기TDD로 Widget 개발하기
TDD로 Widget 개발하기
 

Viewers also liked

C#,자마린실습(Hello 안드로이드,이뮬레이터와 휴대폰에서 직접실행)_닷넷기초/C#기초/자마린,Xamarin 앱개발강좌
C#,자마린실습(Hello 안드로이드,이뮬레이터와 휴대폰에서 직접실행)_닷넷기초/C#기초/자마린,Xamarin 앱개발강좌C#,자마린실습(Hello 안드로이드,이뮬레이터와 휴대폰에서 직접실행)_닷넷기초/C#기초/자마린,Xamarin 앱개발강좌
C#,자마린실습(Hello 안드로이드,이뮬레이터와 휴대폰에서 직접실행)_닷넷기초/C#기초/자마린,Xamarin 앱개발강좌탑크리에듀(구로디지털단지역3번출구 2분거리)
 
AppsWorld 2015 - Cross Platform Native Applications in JavaScript
AppsWorld 2015 - Cross Platform Native Applications in JavaScriptAppsWorld 2015 - Cross Platform Native Applications in JavaScript
AppsWorld 2015 - Cross Platform Native Applications in JavaScriptJason Kneen
 
Mvvm Pattern in Xamarin - MvvmCross and Xamarin.Forms
Mvvm Pattern in Xamarin - MvvmCross and Xamarin.FormsMvvm Pattern in Xamarin - MvvmCross and Xamarin.Forms
Mvvm Pattern in Xamarin - MvvmCross and Xamarin.FormsLeaware.com
 
Reactive Model-View-ViewModel Architecture
Reactive Model-View-ViewModel ArchitectureReactive Model-View-ViewModel Architecture
Reactive Model-View-ViewModel ArchitectureGyuwon Yi
 
Web app 개발 방법론
Web app 개발 방법론Web app 개발 방법론
Web app 개발 방법론Sang Seok Lim
 
[124] 하이브리드 앱 개발기 김한솔
[124] 하이브리드 앱 개발기 김한솔[124] 하이브리드 앱 개발기 김한솔
[124] 하이브리드 앱 개발기 김한솔NAVER D2
 
Helpful Review Recommendation (리뷰 추천시스템)
Helpful Review Recommendation (리뷰 추천시스템)Helpful Review Recommendation (리뷰 추천시스템)
Helpful Review Recommendation (리뷰 추천시스템)FAST CAMPUS
 
객체지향 개념 (쫌 아는체 하기)
객체지향 개념 (쫌 아는체 하기)객체지향 개념 (쫌 아는체 하기)
객체지향 개념 (쫌 아는체 하기)Seung-June Lee
 
Naive bayes model을 활용한 영화 별점 예측 시스템
Naive bayes model을 활용한 영화 별점 예측 시스템Naive bayes model을 활용한 영화 별점 예측 시스템
Naive bayes model을 활용한 영화 별점 예측 시스템FAST CAMPUS
 
의료빅데이터 컨테스트 결과 보고서
의료빅데이터 컨테스트 결과 보고서의료빅데이터 컨테스트 결과 보고서
의료빅데이터 컨테스트 결과 보고서GY Lee
 

Viewers also liked (11)

C#,자마린실습(Hello 안드로이드,이뮬레이터와 휴대폰에서 직접실행)_닷넷기초/C#기초/자마린,Xamarin 앱개발강좌
C#,자마린실습(Hello 안드로이드,이뮬레이터와 휴대폰에서 직접실행)_닷넷기초/C#기초/자마린,Xamarin 앱개발강좌C#,자마린실습(Hello 안드로이드,이뮬레이터와 휴대폰에서 직접실행)_닷넷기초/C#기초/자마린,Xamarin 앱개발강좌
C#,자마린실습(Hello 안드로이드,이뮬레이터와 휴대폰에서 직접실행)_닷넷기초/C#기초/자마린,Xamarin 앱개발강좌
 
AppsWorld 2015 - Cross Platform Native Applications in JavaScript
AppsWorld 2015 - Cross Platform Native Applications in JavaScriptAppsWorld 2015 - Cross Platform Native Applications in JavaScript
AppsWorld 2015 - Cross Platform Native Applications in JavaScript
 
Manual nuevas tecnologias
Manual nuevas tecnologiasManual nuevas tecnologias
Manual nuevas tecnologias
 
Mvvm Pattern in Xamarin - MvvmCross and Xamarin.Forms
Mvvm Pattern in Xamarin - MvvmCross and Xamarin.FormsMvvm Pattern in Xamarin - MvvmCross and Xamarin.Forms
Mvvm Pattern in Xamarin - MvvmCross and Xamarin.Forms
 
Reactive Model-View-ViewModel Architecture
Reactive Model-View-ViewModel ArchitectureReactive Model-View-ViewModel Architecture
Reactive Model-View-ViewModel Architecture
 
Web app 개발 방법론
Web app 개발 방법론Web app 개발 방법론
Web app 개발 방법론
 
[124] 하이브리드 앱 개발기 김한솔
[124] 하이브리드 앱 개발기 김한솔[124] 하이브리드 앱 개발기 김한솔
[124] 하이브리드 앱 개발기 김한솔
 
Helpful Review Recommendation (리뷰 추천시스템)
Helpful Review Recommendation (리뷰 추천시스템)Helpful Review Recommendation (리뷰 추천시스템)
Helpful Review Recommendation (리뷰 추천시스템)
 
객체지향 개념 (쫌 아는체 하기)
객체지향 개념 (쫌 아는체 하기)객체지향 개념 (쫌 아는체 하기)
객체지향 개념 (쫌 아는체 하기)
 
Naive bayes model을 활용한 영화 별점 예측 시스템
Naive bayes model을 활용한 영화 별점 예측 시스템Naive bayes model을 활용한 영화 별점 예측 시스템
Naive bayes model을 활용한 영화 별점 예측 시스템
 
의료빅데이터 컨테스트 결과 보고서
의료빅데이터 컨테스트 결과 보고서의료빅데이터 컨테스트 결과 보고서
의료빅데이터 컨테스트 결과 보고서
 

Similar to Xamarin.Forms (MVP ComCamp 2015)

인프콘 2022 - Rust 크로스 플랫폼 프로그래밍
인프콘 2022 - Rust 크로스 플랫폼 프로그래밍인프콘 2022 - Rust 크로스 플랫폼 프로그래밍
인프콘 2022 - Rust 크로스 플랫폼 프로그래밍Chris Ohk
 
프로그래밍 언어의 F1머신 C++을 타고 Windows 10 UWP 앱 개발의 세계로~
프로그래밍 언어의 F1머신 C++을 타고 Windows 10 UWP 앱 개발의 세계로~프로그래밍 언어의 F1머신 C++을 타고 Windows 10 UWP 앱 개발의 세계로~
프로그래밍 언어의 F1머신 C++을 타고 Windows 10 UWP 앱 개발의 세계로~YEONG-CHEON YOU
 
하이브리드 앱(Hybrid App)
하이브리드 앱(Hybrid App)하이브리드 앱(Hybrid App)
하이브리드 앱(Hybrid App)Changhwan Yi
 
GDG DevFest Busan 16" Android Nougat Developer's Note
GDG DevFest Busan 16" Android Nougat Developer's NoteGDG DevFest Busan 16" Android Nougat Developer's Note
GDG DevFest Busan 16" Android Nougat Developer's NoteSeok-yong Kim
 
[uengine.org-uEngine Day] 스마트폰과BPM의만남:프로세스터치프로젝트발표자료
[uengine.org-uEngine Day] 스마트폰과BPM의만남:프로세스터치프로젝트발표자료[uengine.org-uEngine Day] 스마트폰과BPM의만남:프로세스터치프로젝트발표자료
[uengine.org-uEngine Day] 스마트폰과BPM의만남:프로세스터치프로젝트발표자료Hannah Kim
 
모바일 웹앱 프로그래밍 과정
모바일 웹앱 프로그래밍 과정모바일 웹앱 프로그래밍 과정
모바일 웹앱 프로그래밍 과정Kenu, GwangNam Heo
 
차세대 웹비즈니스를 위한 "HTML5"
차세대 웹비즈니스를 위한 "HTML5"차세대 웹비즈니스를 위한 "HTML5"
차세대 웹비즈니스를 위한 "HTML5"Changhwan Yi
 
01.모바일 프레임워크 이론
01.모바일 프레임워크 이론01.모바일 프레임워크 이론
01.모바일 프레임워크 이론Hankyo
 
HTML5 로 iPhone App 만들기
HTML5 로 iPhone App 만들기HTML5 로 iPhone App 만들기
HTML5 로 iPhone App 만들기정혁 권
 
ant로 안드로이드 앱을 자동으로 빌드하자
ant로 안드로이드 앱을 자동으로 빌드하자ant로 안드로이드 앱을 자동으로 빌드하자
ant로 안드로이드 앱을 자동으로 빌드하자Sewon Ann
 
WeAreDevelopers_micro_frontend_framework.pdf
WeAreDevelopers_micro_frontend_framework.pdfWeAreDevelopers_micro_frontend_framework.pdf
WeAreDevelopers_micro_frontend_framework.pdfjaneSim13
 
웹:앱 기술 동향
웹:앱 기술 동향웹:앱 기술 동향
웹:앱 기술 동향ssuser0e53c8
 
한 번에 개발하는 안드로이드&iOS 앱 with 앱메소드
한 번에 개발하는 안드로이드&iOS 앱 with 앱메소드한 번에 개발하는 안드로이드&iOS 앱 with 앱메소드
한 번에 개발하는 안드로이드&iOS 앱 with 앱메소드Devgear
 
UX 핫 트렌드, 멀티 플랫폼 모바일 개발(1)
UX 핫 트렌드, 멀티 플랫폼 모바일 개발(1)UX 핫 트렌드, 멀티 플랫폼 모바일 개발(1)
UX 핫 트렌드, 멀티 플랫폼 모바일 개발(1)mosaicnet
 
Web devmobile 8회열린세미나
Web devmobile 8회열린세미나Web devmobile 8회열린세미나
Web devmobile 8회열린세미나Pumsuk Cho
 
C1 하이브리드 앱 어떻게 개발해야 하나
C1 하이브리드 앱 어떻게 개발해야 하나C1 하이브리드 앱 어떻게 개발해야 하나
C1 하이브리드 앱 어떻게 개발해야 하나NAVER D2
 
React native development
React native developmentReact native development
React native developmentSangSun Park
 
웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트
웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트
웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트Rhio Kim
 
Front end dev 2016 & beyond
Front end dev 2016 & beyondFront end dev 2016 & beyond
Front end dev 2016 & beyondJae Sung Park
 
Mozilla 오픈 웹 모바일 플랫폼 (2012)
Mozilla 오픈 웹 모바일 플랫폼 (2012)Mozilla 오픈 웹 모바일 플랫폼 (2012)
Mozilla 오픈 웹 모바일 플랫폼 (2012)Channy Yun
 

Similar to Xamarin.Forms (MVP ComCamp 2015) (20)

인프콘 2022 - Rust 크로스 플랫폼 프로그래밍
인프콘 2022 - Rust 크로스 플랫폼 프로그래밍인프콘 2022 - Rust 크로스 플랫폼 프로그래밍
인프콘 2022 - Rust 크로스 플랫폼 프로그래밍
 
프로그래밍 언어의 F1머신 C++을 타고 Windows 10 UWP 앱 개발의 세계로~
프로그래밍 언어의 F1머신 C++을 타고 Windows 10 UWP 앱 개발의 세계로~프로그래밍 언어의 F1머신 C++을 타고 Windows 10 UWP 앱 개발의 세계로~
프로그래밍 언어의 F1머신 C++을 타고 Windows 10 UWP 앱 개발의 세계로~
 
하이브리드 앱(Hybrid App)
하이브리드 앱(Hybrid App)하이브리드 앱(Hybrid App)
하이브리드 앱(Hybrid App)
 
GDG DevFest Busan 16" Android Nougat Developer's Note
GDG DevFest Busan 16" Android Nougat Developer's NoteGDG DevFest Busan 16" Android Nougat Developer's Note
GDG DevFest Busan 16" Android Nougat Developer's Note
 
[uengine.org-uEngine Day] 스마트폰과BPM의만남:프로세스터치프로젝트발표자료
[uengine.org-uEngine Day] 스마트폰과BPM의만남:프로세스터치프로젝트발표자료[uengine.org-uEngine Day] 스마트폰과BPM의만남:프로세스터치프로젝트발표자료
[uengine.org-uEngine Day] 스마트폰과BPM의만남:프로세스터치프로젝트발표자료
 
모바일 웹앱 프로그래밍 과정
모바일 웹앱 프로그래밍 과정모바일 웹앱 프로그래밍 과정
모바일 웹앱 프로그래밍 과정
 
차세대 웹비즈니스를 위한 "HTML5"
차세대 웹비즈니스를 위한 "HTML5"차세대 웹비즈니스를 위한 "HTML5"
차세대 웹비즈니스를 위한 "HTML5"
 
01.모바일 프레임워크 이론
01.모바일 프레임워크 이론01.모바일 프레임워크 이론
01.모바일 프레임워크 이론
 
HTML5 로 iPhone App 만들기
HTML5 로 iPhone App 만들기HTML5 로 iPhone App 만들기
HTML5 로 iPhone App 만들기
 
ant로 안드로이드 앱을 자동으로 빌드하자
ant로 안드로이드 앱을 자동으로 빌드하자ant로 안드로이드 앱을 자동으로 빌드하자
ant로 안드로이드 앱을 자동으로 빌드하자
 
WeAreDevelopers_micro_frontend_framework.pdf
WeAreDevelopers_micro_frontend_framework.pdfWeAreDevelopers_micro_frontend_framework.pdf
WeAreDevelopers_micro_frontend_framework.pdf
 
웹:앱 기술 동향
웹:앱 기술 동향웹:앱 기술 동향
웹:앱 기술 동향
 
한 번에 개발하는 안드로이드&iOS 앱 with 앱메소드
한 번에 개발하는 안드로이드&iOS 앱 with 앱메소드한 번에 개발하는 안드로이드&iOS 앱 with 앱메소드
한 번에 개발하는 안드로이드&iOS 앱 with 앱메소드
 
UX 핫 트렌드, 멀티 플랫폼 모바일 개발(1)
UX 핫 트렌드, 멀티 플랫폼 모바일 개발(1)UX 핫 트렌드, 멀티 플랫폼 모바일 개발(1)
UX 핫 트렌드, 멀티 플랫폼 모바일 개발(1)
 
Web devmobile 8회열린세미나
Web devmobile 8회열린세미나Web devmobile 8회열린세미나
Web devmobile 8회열린세미나
 
C1 하이브리드 앱 어떻게 개발해야 하나
C1 하이브리드 앱 어떻게 개발해야 하나C1 하이브리드 앱 어떻게 개발해야 하나
C1 하이브리드 앱 어떻게 개발해야 하나
 
React native development
React native developmentReact native development
React native development
 
웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트
웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트
웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트
 
Front end dev 2016 & beyond
Front end dev 2016 & beyondFront end dev 2016 & beyond
Front end dev 2016 & beyond
 
Mozilla 오픈 웹 모바일 플랫폼 (2012)
Mozilla 오픈 웹 모바일 플랫폼 (2012)Mozilla 오픈 웹 모바일 플랫폼 (2012)
Mozilla 오픈 웹 모바일 플랫폼 (2012)
 

Xamarin.Forms (MVP ComCamp 2015)