신뢰성을 극대화한 - kyoceradocumentsolutions.co.kr · 지원하는 스마트폰 애플리캐이션 기반 솔루션입니다. 스마트 폰 내 저장된 오피스 문서,
[Td 2015]70분에 보여준다. 웹표준을 지원하는 edge 브라우저부터 웹 앱...
-
Upload
sang-don-kim -
Category
Software
-
view
611 -
download
4
Transcript of [Td 2015]70분에 보여준다. 웹표준을 지원하는 edge 브라우저부터 웹 앱...
•Universal apps enable building applications on the converged Windows 8.1 and Windows Phone 8.1 platforms
•Supported for C#, C++ and JavaScript
•Create universal apps using project templates, migrating Windows 8.1 / Windows Phone 8.1 apps
Universal apps
DEMO
2:05
Universal App
•Allow sharing source between converged apps
•Don’t have any binary output
•Supports all item types • Code files .cs, .js, .cpp, .h
• XAML
• Images .png, .jpg…
• RESW
• XML etc…
Shared projects
C#: WINDOWS_APP and WINDOWS_PHONE_APP
#if WINDOWS_PHONE_APP
Windows.Phone.UI.Input.HardwareButtons.BackPressed += this.HardwareButtons_BackPressed;
#endif
C++: WINAPI_FAMILY_PC_APP and WINAPI_FAMILY_PHONE_APP
#if WINAPI_FAMILY==WINAPI_FAMILY_PHONE_APP
_backPressedEventToken = HardwareButtons::BackPressed +=
ref new EventHandler<BackPressedEventArgs^>(this,
&NavigationHelper::HardwareButton_BackPressed);
#endif
Use conditional constants
• Intellisense warnings for platform specific APIs
•Switch project context using navbar
Code editing experience
•Quick and easy way to change startup projects using debug target dropdown
•Supported for all Store platforms
• Enabled if you have more than one application project in the solution
Switching startup projects
Case Study
Case Study
크로스 플랫폼 기업 관리자의 필요 프로젝트 관리자의 필요 개발자의 필요
Case Study
C#으로 대동 단결?
iOS, Android, Windows Phone Linq, NuGet
Cross Platform Create native iOS, Android, Mac and Windows apps in Visual Studio and C# All in one development tool Cloud, Web, Embedded, IoT, BigData, Machine Learing …
Case Study
크로스 플랫폼 기업 관리자의 필요 프로젝트 관리자의 필요 개발자의 필요
Case Study
네이티브 앱 개발
The Silo Approach
Build App
Multiple Times
The Write-Once-Run-Anywhere Approach
Lowest Common
Denominator
Xamarin’s Unique Approach
Native With
Code Sharing
Windows APIs
iOS APIs | 100% Coverage
Android APIs | 100% Coverage
The Anatomy of a Native App
Native User Interfaces Native API Access Native Performance
Xamarin.iOS does full Ahead Of Time
(AOT) compilation to produce an AR
M binary for Apple’s App Store.
Native Performance
Xamarin.Android takes advantage
of Just In Time (JIT) compilation on
the Android device.
Case Study
플랫폼 간 코드 공유
비즈니스 로직: PCL 리소스: SharedProject UI: Xamrin.Forms Cloud: Windows Azure for Mobile Cloud Backend 개발툴: Visual Studio 2013 and Xamarin Studio
Case Study
개발환경
- Mac - Mac OS Mountain Lion 이상 - Xcode (iOS SDK)
- Windows
- Windows 7 or Higher - Visual Studio 2010 Professional or Higher
(Express Edition is not support)
iOS - AOT Compiler 가 네이티브 앱 생성 - Object C 코드 호출 가능 - iOS API 100% 지원 - iOS 5 이후 같은 날 업데이트
Android - JIT Compiler가 네이트브 앱 생성 - Android 코드 호출 가능 - Android API 100% 지원 - ICS 이후 같은 날 업데이트
맥은 반드시 필요~!!
Case Study
PCL(Portable Class Library) Multi-Platform을 목표로 만들어진 클래스 라이브러리. Binary Level에서 공유할 수 있는 어셈블리를 만들어내는 클래스 라이브러리
Case Study
SharedProject Image, Code, Media, Resource 등을 공유하는 프로젝트
DEMO
2:05
Xamarin
Portable Class Libraries
Xamarin + Xamarin.Forms With Xamarin.Forms:
more code-sharing, native controls Traditional Xamarin approach
Shared UI Code
Xamarin + Xamarin.Forms
Shared UI Code
Quickly and easily build native user interfaces using shared code Xamarin.Forms elements map to native controls and behaviors Mix-and-match Xamarin.Forms with native APIs
What’s Included
40+ Pages, Layouts, and Controls Build from code behind or XAML
Two-way Data Binding Navigation
Animation API
Dependency Service
Messaging Center
Pages
Content MasterDetail Navigation Tabbed Carousel
Layouts
Stack Absolute Relative Grid ContentView ScrollView Frame
Case Study
Navigation
Case Study
다국어 지원
Case Study
IplatformDependent
Case Study
Controls
Controls
ActivityIndicator BoxView Button DatePicker Editor
Entry Image Label ListView Map
OpenGLView Picker ProgressBar SearchBar Slider
Stepper TableView TimePicker WebView EntryCell
ImageCell SwitchCell TextCell ViewCell
Login Page – XAML
33,000,000,000,000 페이지
44,000,000,000 사이트
7,000 API
• 문서모드
• CV-List
• X-UA-Compatible
• 표준 준수
Internet Explorer 11
IE5 IE7 IE8
IE9 IE10 QME IE11
EMIE
DEMO
2:05
Edge
상호 운용성 벤다이어그램 모
바일
웹
Binary behaviors
Pluggable protocols
Shell Helper API
Active Documents
Custom Download Managers
Custom Security Managers
MIME filters
Custom Print and Print Preview Handlers
Explorer Bars
Edit Designers
Timers
Accelerators
Webslices
ActiveX
Browser Helper Objects(BHO)
Documents Modes
Vector Markup Language(VML)
VBScript
attachEvent/removeEvent
currentStyle
Coditional Comments
IE8 layout quirks
DirectX Filters and Transition
6백만명 이상의 인사이더 프로그램 참가자
33조개의 웹페이지
440억개의 사이트
7천개의 API
bing Web Crawler
Instrumentation
Project Spartan
0
20
40
60
80
100
120
140
160
Internet Explorer 11 Microsoft Edge Chrome Canary 43.0.2369.0 Firefox Alpha 40.0a1(04-14)
Apple JetStream Benchmark (higher is better)
1.5x
0
5000
10000
15000
20000
25000
Internet Explorer 11 Microsoft Edge Chrome Canary 43.0.2369.0 Firefox Alpha 40.0a1(04-14)
Google Octane 2.0 Benchmark (higher is better)
2.0x
Microsoft Edge: EdgeHTML.dll
상호 운용성
기본 브라우저
모던 HTML 웹사이트
웹 노트, 리딩 뷰, 코타나 등
고유의 사용자 기능 탑재
호환성
Legacy 지원
IE9 IE8 IE7 IE 5.5
인트라넷 혹은 엔터프라이즈 모드
사이트 우선
Internet Explorer: MSHTML.dll
Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/39.0.2171.71 Safari/537.36 Edge/12.0
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/600.1.25 (KHTML, like Gecko)
Version/8.0 Safari/600.1.25
Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/40.0.2214.93 Safari/537.36
Mozilla/5.0 (Windows NT 10.0; WOW64; rv:35.0) Gecko/20100101 Firefox/35.0
Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/39.0.2171.71 Safari/537.36 Edge/12.0
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/600.1.25 (KHTML, like Gecko)
Version/8.0 Safari/600.1.25
Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/40.0.2214.93 Safari/537.36
Mozilla/5.0 (Windows NT 10.0; WOW64; rv:35.0) Gecko/20100101 Firefox/35.0
거의 동일
http://modernizr.com/
http://dev.modern.ie/platform/status/
기존 기술 대응 표준 기술
ActiveX HTML5 기반 기술
*PDF 뷰어/플래쉬는 지원
*IE11 Enterprise Mode
Browser Helper Object(BHO) HTML/JavaScript 기반 확장기술(예정)
Document Modes 단일의 문서 모드만 지원
Vector Markup Language(VML) Scalable Vector Graphic(SVG)
VBScript JavaScript
attachEvent/removeEvent addEventListener
removeEventListener
currentStyle getComputedStyle
Conditional Comments Feature detection 활용
IE8 Layout quirks 표준 기반 레이아웃으로 변경
DirextX Filters & Transitions CSS3, SVG
IE 확장 기술 상호 운용이 불가능한 IE 고유 API
-ms prefix API
https://github.com/MicrosoftEdge/static-code-scan
2009 2010 2011 2012 2013 2014 2015
Windows 7
Internet Explorer 8
Internet Explorer 9
Internet Explorer 10
Internet Explorer 11
Windows 8 Internet Explorer 10
Windows 8.1 Internet Explorer 11
2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020
Windows 7
Internet Explorer 8
Internet Explorer 9
Internet Explorer 10
Internet Explorer 11
Windows 8 Internet Explorer 10
Windows 8.1 Internet Explorer 11
2016년 1월 12일부터
가장 최신 버전의 IE만
지원 대상에 포함 (D-145)
* Windows Vista는 IE9 지원
*지원 정책 변경에 대한 최초의 보도 자료는 2014-08-08
보안/비보안 업데이트
무료/유료 기술 지원
온라인 기술 콘텐츠 업데이트
강화된 호환성 모드
엔터프라이즈 모드 제공
2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020
Windows 7
Internet Explorer 8
Internet Explorer 9
Internet Explorer 10
Internet Explorer 11
Windows 10
Internet Explorer 11
Microsoft Edge
<브라우저 별 Malware 평균 차단율>
[Source: NSS Labs, Mar 31, 2014)]
NSS Labs의 보고서에 따르면,
사회공학적 악성 코드에 대한
IE11의 차단율은 99.9%로 타사
브라우저보다 월등히 높은 것으로 조사됨
공식적인 연구 보고서를 통해 IE11의 향상된 보안성이 입증 되었음
26배 빠른 성능
자바스크립트 성능 향상
Hosted Web Apps
Bootstrap
App Store (iOS, Android, Windows…)
Native app container
WebView
Web Site
custom bridge Native Code
App Store
Native app container
WebView
Web Site
Native Code Windows APIs
Native APIs
Native APIs
if (typeof Windows != ‘undefined’) {
// Create an appointment with Windows
.ApplicationModel.Appointments.Appointm
ent();
}
Manifest for Web Apps
{ "name": "Super Web App", "short_name": "SuperWA", "start_url": "http://www.example.com", "icons": [ { "src": "tiny.png", "sizes": "70x70" }, { "src": "square.png", "sizes": "150x150" }, { "src": "apple-touch-icon-72x72-precomposed.png", "sizes": "72x72" }, { "src": "niceicon.png", "sizes": "128x128" } ], "display": "standalone", "orientation": "landscape" }
http://w3c.github.io/manifest/
Windows Desktop
IoT HoloLens
Surface Hub
Windows Phone
XBox
ONE CORE OS
ONE APP PLATFORM
ONE STORE Windows 10
EdgeHTML.dll Chakra
all https://*.websites.net/
allowForWebOnly https://*.website.net/
none http://ads.website.net/
<meta name="msapplication-cortanavcd" content="http://mysite.com/vcd.xml"/>"
content="http://flightarcade.azurewebsites.net/vcd/vcd.xml"/>
// Add an event listener for the activation event if (Windows.UI.WebUI.WebUIApplication.addEventListener(“activated”, function (args)) { // Handle the Voice Command activation event var activation = Windows.ApplicationModel.Activation; if (args.kind === activation.ActivationKind.voiceCommand) { // Extract the result from the speech recognition from the event arguments var speechRecognitionResult = args.result; // Get the recognized command, defined in the VCD file var command = speechRecognitionResult.rulePath[0]; // Get the full string of text that was spoken var textSpoken = speechRecognitionResult.text; } });
http://aka.ms/td2015_again
TechDays Korea 2015에서 놓치신 세션은 Microsoft 기술 동영상 커뮤니티 Channel 9에서
추후에 다시 보실 수 있습니다.