3. Android, iOS App을 Windows 10에서 실행
C#을 사용해서 Android, iOS App을 개발
C++을 사용해서 Android, iOS App을 개발
HTML5와 Javascript로 Android, iOS App을 개발
개발 및 테스트를 위한 Android 에뮬레이터도 제공
크로스 플랫폼 개발
Windows, iOS, Android
우리들은 친구(?)예요~
4. 여러분의 코드가
어디서 작성되었든
Windows에서 구동할 수
있게 하는 프로젝트
Android 런타임을 위한 UWP Bridge
iOS 앱을 위한 UWP Bridge
Web 앱을 위한 UWP Bridge
기존 윈도우 애플리케이션을 위한
UWP Bridge
5. Wherever your code was born, you can bring it to Windows
Windows 플랫폼
Universal Windows 8 apps
Universal Windows 10 apps
Classic applications (via ‘Centennial’)
Middleware 플랫폼
Middleware (e.g., Xamarin)
Game engines (e.g., Unity)
그 밖의 mobile 플랫폼
Android apps (via ‘Astoria’)
iOS apps (via ‘Islandwood’)
Web 플랫폼
Web apps
Hybrid web apps (Cordova tooling)
Hosted web apps (via ‘Westminster’)
* http://blogs.windows.com/buildingapps/2015/04/29/expanding-the-universal-windows-platform-at-build-2015/
6. 브릿지는 Universal Windows Platform (UWP)으로 가는 가장 쉬운 길을 제공한다. 하지만..
BestGood
• 브릿지를 사용하여 여러분의
코드를 Windows 스토어로
가져온다
• 기존 앱의 기능과 동작을
계속해서 유지할 수 있다
Better
• UWP의 능력을 활용
• Windows 10 기능들을 추가
• 인앱 결제
• Windows UX
• 라이브 타일
• Notifications
• Native UWP 앱을 만든다
• 모든 디바이스 패밀리를 지원
Ease Experience Reach Ease Experience Reach Ease Experience Reach
7. UWP Bridge API Access
Incremental
Dev Investment
Incremental
App Maintenance Additional Notes
Web apps
‘Project Westminster’
• Server-side website
• Full UWP API access via
plug-in model
• Create app manifest
• Store submission
• Server-side website • Apps should avoid server-side
runtime functions
• Ideal where majority of the
experience is in website
Classic applications
‘Project Centennial’
• Most Win32 API access
• Full UWP API access
• Virtualize
• Store submission
• TBD
• Updates via Store • Limited support for plug-ins,
Windows services, and drivers
• Elevated privs not supported
Android apps
‘Project Astoria’
• Full AOSP API access
• Select UWP APIs
(notifications; live tile)
• AOSP compatibility
• Add Store assets
• Store submission
• Use your IDE
• Phone testing
• Shared app code
• More UWP capabilities over time
• Dev work done in existing IDE
• Ideal for mobile-centric apps and
where devs want to use their IDE
iOS code
‘Project Islandwood’
• Full UWP APIs • Import into VS2015
• Store submission
• Visual Studio IDE
• Separate projects
• Shared ObjC code
• Support for most iOS APIs
• Support for runtime debugging
• Ideal for multi-device apps and
where team can install/use VS
9. 필요에 따라, 원하는 대로
데스크톱 응용프로그램
공유 앱(Shared app)
브라우저 기반의
응용프로그램
크로스 플랫폼 모바일용 C++
10. Xamarin을 이용하여
크로스 플랫폼 코드 공유
플랫폼에 걸쳐 앱 로직을 공유
• Windows, iOS, Android 디바이스 지원
• Native 앱을 위한 가장 생산적이고 강력한
플랫폼을 제공
• 코드 재사용 극대화 (Universal 프로젝트 및
Portable 클래스 라이브러리를 사용)
100% API 지원
• xCode나 ADT에서 할 수 있는 것을 모두
동일하게 수행할 수 있음
UI 디자인 지원
• 최상의 Android 디자이너 지원
C# + XIB C# + AXML C# + XAML
Native UI Native UI Native UI
11. Cordova 도구를 이용한
범용적인 앱 개발
Black Box
Hybrid-HTML 앱
• 가장 빠르게 크로스 플랫폼 앱을 개발
• 웹 개발자들이 쉽게 빠르게 앱을 만들 수
있는 도구 지원
Visual Studio 용 Cordova 도구
• Hybrid 앱을 위한 높은 생산성을 제공
• 복잡한 기업용 앱 대응(TypeScript 지원)
• End-to-end 개발 워크플로우 포함
• 다양한 Javascript 프레임워크 연동
12. 크로스플랫폼 C++
코드 이식성
• 기존의 C++ 코드를 최신 모바일
플랫폼에서 활용가능
• iOS와 Android 기술 지원
• 광범위한 호환성
• 크로스 플랫폼 코드 작성
• 강력한 디버깅 경험을 그대로 활용
• Visual Studio와의 통합
When we think of Visual Studio 2015 Preview there are 3 pillars that we think of: cross-platform, productivity, and DevOps.
Today, there are two primary ways to share code for cross-platform development: Native or Web.
Developers using the native platform technologies: Developers in this group create native applications for each device, by using the native tools provided by every vendor (xCode in iOS, Android Developer Tools in Android, Visual Studio / .NET in Windows, etc.). These developers struggle with the ability to reuse code and skills between devices or target new devices with their existing skills on a specific technology (e.g. .NET developers). Therefore they are looking for Cross-Platform Mobile Native apps solutions.
Developers using web technologies: Developers in this category use web technologies such as HTML5 and JavaScript to create browser-based applications that target mobile devices. The browser is constrained developers struggle with the ability to create applications that can leverage the full capabilities of the devices they target and therefore are looking for Multi-device Hybrid solutions.
Whether your aiming to create rich, high performance apps, or targeting maximum device compatibility, Visual Studio 2015 Preview has the tools to support you.
You can use Xamarin, or C++ for MDD in combination with Shared apps or Desktop apps to deploy your app natively across multiple platforms.
On the Web side, the Cordova library will enable you to reach native device functionality on whatever you’re targeting, while reaching as many platforms as possible.
Let’s take a closer look at these three options.
Xamarin and Visual Studio are far and away the most productive and powerful platform for building rich, native apps that can run on multiple platforms. Working only in C#, you can leverage the skills you already have to create app logic that Xamarin will allow you to share across any platform. With the combination of Universal Projects and Portable Class Libraries you can combine shared app logic that can access 100% of the underlying platform with rich, full featured platform specific UI layers for the best of both worlds: great experiences running natively and maximum code sharing all from a single solution.
With Visual Studio 2015 Preview, Xamarin has become a first class citizen.
[2min]
This preview adds new project templates and tools for you to target the Apache Cordova project within Visual Studio. It is built on top the existing great HTML, CSS and JavaScript tooling in Visual Studio, but it integrates it with Apache Cordova, so you have things like intellisense support for the Cordova API, build for any targeted platform such as Android and directly from Visual Studio, run and debug the app on a device emulator or a remote device.
The cool thing about these tools is that you will naturally know how to use it if you are familiar with web development. It supports TypeScript, which is very handy for these applications that can get very complex. It also supports the most popular JavaScript frameworks that you are probably using already for your mobile web applications such as Angular, JQuery Mobile or Backbone.
Now you have the option to choose the multi-device strategy that is better for you:
Native development with .NET
Hybrid development with HTML and CSS
Many organizations have critical code bases written in C++ that have been highly optimized over the years that they would like to extend onto new platforms. With C++ for MDD there is no need for expensive ports into new languages, developers can build C++ libraries that execute across multiple targets, including iOS, Windows Desktop, Windows Store, and Android. You can even take advantage of your optimized C++ libraries from a C#/Xamarin app, giving you the maximum flexibility.
Whether you’re bringing across an existing application, or looking to leverage C++’s amazing performance in your new modern apps, Visual Studio offers the industry leading developer experience you would expect. A complete, end-to-end ALM and DevOps solution, from code authoring to automated builds, deployments and a full-featured debugging experience.
Visual Studio 2015 provides for a rich set of features.
It starts with a personalized IDE that you can make your own.
You get tools for coding productivity so you can get more done.
It includes state of the art development and debugging features to help you write the best code possible.
Code you and write with better tools for every type of application.
Visual Studio 2015 is all about you having a great personalized experience.
We’ve made enhancements to profile management making it easier to have a single sign-in experience for your Visual Studio profile, Visual Studio Online, and Microsoft Azure.
With Visual Studio 2015, we’ve added support for multiple window layouts. This feature makes it easy change the layout of your various tool windows based on need—code only, cloud work, team work—whatever.
You’ll find three distinct color profiles (you can of course customize as you see fit) and save them.
All of this data is synced with your Visual Studio profile so it’s easy to sit down and be productive at any of your machines.
Visual Studio 2015 is our most modern version of the IDE ever.
We’ve added support for touch including features like pinch to zoom in the code editor.
We’ve worked hard to make sure Visual Studio 2015 looks good on those high resolution desktop and portable displays.
And of course you continue to get great multi-monitor support when you need it.
In this demo, I’m going to show you how the new window layouts and the new account management features for working with Visual Studio Online and Microsoft Azure.
Visual Studio 2015 is all about making your more productive.
A great new feature you find is advanced refactoring brought to you by the .NET Compiler Platform ("Roslyn").
You’ll find these refactorings are available a number of ways including our new “light bulbs” that show up in context.
Light bulbs help you with suggestions for better, cleaner code. In addition, they provide you with fixes to compile errors where you can see one or more suggested fixes as well as how it will affect your code in an in-place differencing window.
In Visual Studio 2015, you’ll find we’ve made the static code analysis tools easier to use. Now you’ll find suggestions, warnings, and errors right in the Error List window.
And to make the Error List easier to use, we’ve added filter options for columns like code, project, and file.
In this demo, I’m going to show you some of these great new productivity tools including light bulbs, live code analysis, and the enhanced error list.
Visual Studio 2015 continues to cement its position as the world class tool for writing and debugging tools.
As with the new refactorings, the .NET Compiler Platform ("Roslyn"), you get faster and richer .NET debugging.
Visual Studio now has Performance Tips that show up when you break execution during debugging.
We’ve even made it easier to enable and configure breakpoints without modal dialogs.
And the new profiling tools for WPF and Windows Store apps make visual debugging a breeze.
In this demo, I’m going to show you Performance Tips, the new breakpoint experience, and the WPF visual profiler.
IntelliTest is an intelligent assistant for software development, designed to help reduce test maintenance costs and increase testing efficiency.
IntelliTest helps you automatically generate unit tests and it keeps your test in sync as you change you code.
You can then save these tests for future use as regression tests.
In this last demo, I’m going to give you a tour of IntelliTest.
IntelliTest is an intelligent assistant for software development, designed to help reduce test maintenance costs and increase testing efficiency.
IntelliTest helps you automatically generate unit tests and it keeps your test in sync as you change you code.
You can then save these tests for future use as regression tests.
In this last demo, I’m going to give you a tour of IntelliTest.
IntelliTest is an intelligent assistant for software development, designed to help reduce test maintenance costs and increase testing efficiency.
IntelliTest helps you automatically generate unit tests and it keeps your test in sync as you change you code.
You can then save these tests for future use as regression tests.