UNDERSTANDING THE ARCHITECTURE OF UNIVERSAL WINDOWS PLATFORM

August 15, 2019
4 mins read

The architecture of Universal Windows Platform is most exclusive with the center of gravity which is One Windows Core. Now the whole development will follow the common refactored core that will common for all the windows Releases. It’s all about One Core, One Hardware Platform, Universal Hardware Driver and Standalone Network and I/O.

For the First time, there is a true binary compatibility with loads of platforms. Microsoft has changed the tradition of shipping different sets of Operating System for different types of hardware devices, now it is only one core that is common for all the windows releases for all different devices. From small size IoT device up to large size surface hub including gaming station like Xbox, they all shared a single Binary.

Windows Core is a very small and short subset of all the versions of windows. Now Windows has one single codebase rather than a shared codebase and the usage on an entire range of devices. Hence the apps that were Universal Apps had different and separate binaries whereas now the Windows Core has one single binary across all platforms.

The UAP (Universal App Platform) is a collection of versions. Now the App will not develop for the OS or the version of an OS but it will target a version of UAP. The UAP is built on the Windows Core that is the collection of low-level APIs that are arranged in the form of Contracts. These Contracts are a kind of assurance given by Microsoft to App Developers stating that they can now start building against the UAP. Microsoft will ensure that no matter what Windows platform and device the users are on, they will be able to run it and Microsoft will ensure that the App runs smoothly on the previous compatible version as well.

This essentially means that the developers will no longer write the application targeting Windows, rather they will write it against the UAP and Microsoft will guarantee that the applications will run on all platforms.

UAP ensures that no matter what you target and whichever version you target. You will get the application running. So, developers don’t need to worry much about which specific Windows to test on.

Let us take a quick view on app development convergence journey. An Image explain it briefly.

See, how the app development was so diverse in different platforms. Each platform’s app had its own way of development. For developers, it was extremely difficult to build app for other platforms.

Before Windows 8, the way of development was extremely lost. Every platform had its own ways of development with a unique type of code.

After Windows 8, Platforms come closer. Perhaps still the development was quite different in different platforms.

In Windows 8.1 the concept of Universal App was introduced first time with Windows 8.1 and Windows Phone 8.1 with shared code. i.e. there was a single project where three different projects exist, one for Windows 8.1, one for Windows Phone 8.1 and a shared project which contained the unique code which was run as platform-specific when the app run any of the platforms.

But from Windows 10, the whole climate of development is changed. Now Windows 10 developer code for once for the only platform that is called Universal Windows Platform which runs on all Windows devices.

So it’s all about Single Binary, running on any device, testing for capabilities and adjust to all devices.

If I do say to myself, it’s extremely cool! Now we, the Windows 10 developers can proudly stand among the developers’ community. Because now the developer story is;

  • When Writing for iOS

A developer writes for iPad & iPhone

  • When Writing for iOS

A developer writes for all supported devices

  • When writing for Windows 8

A developer writes for each device

  • And! When writing for Windows 10

A developer writes for Every Device.

So that’s the beauty of Windows 10 Development! Isn’t it?

But again, technically you will not build for Windows 10, you will build for a range of version of UWP or Universal Windows Platform.

It’s up to 96% of an app code is same that is compatible across all the devices. The remaining 4% is different according to different features of specific platforms, which is smartly handled by Visual Studio 2015.

Perhaps Sometimes that default UWP that guarantees to run across all the devices is not enough! So, where Microsoft extend the UWP API set with device family-specific also. As one device family may use different set API than other device families. So to access those with extension SDKs for the platform. The extension SDK is not like adding an extension to your project, it’s the package you need to create for that device family. Because extensions don’t invalidate binaries on other devices!

For Development on Windows 10! Traditional Microsoft technologies are not the only way to create Windows apps like XAMAL & C#!

And Yes! Now you can build a native app on Windows 10 Platform by using Bridging Technologies. (Again That’s is the separate topic, required the separate ground to explain)! At this point, I can tell you that, now you can develop apps for iOS, Android, Web, and Win32 desktop by staying at Windows Platform and code. Not only that, by staying on Microsoft Visual Studio now you can code in Objective C for iOS, you can code in JAVA for Android by taking care of their platform-specific design.

For the Design point of view, you have got a few awesome things;

  • Responsive design

Flexible layout responds to small changes. Many controls handle basic responsiveness

  • Adaptive design

Smart layout adjusts to large changes. Features like visual states aid in this design

  • Tailored design

A device-specific app can simplify the design. Some devices have unique design languages

Not only that, but the code is also adoptive;

  • A compatible binary across devices; Universal API with device-specific implementation
  • Light up our app with capabilities; Testing for capabilities and namespaces

Also, make the app test compatible at run time by using the Adaptive Code to light-up your app on specific devices.

You can end with lots of ‘if’s! That what your app will run. What device family which your app is going to target. So if you don’t need any API or extension of any device family which your app is not supporting then you may exclude them and it will not compatible for that.

And Combine as one they work as one UAP;

So the device families you choose determines which APIs you can call freely! That creates One simple, unified, integrated development environment!

So! Long story short. It’s all about Universal Windows Platform;

  • One Operating System.

One Windows core for all devices.

  • One App Platform

Apps run across every device family

  • One Dev Center

Single submission flow and dashboard.

  • One Store

Global reach, local monetization. Consumers, Business and Education.

For Detailed Understanding from Windows 10 experts, take a view on the great online session named A Developer’s Guide to Windows 10 App Development given bellow;

Data Scientist & Solution Architect || IBM Recognised Speaker, Mentor, and Teacher || Debater || Blogger || Guinness World Record Holder || Watson Solution Developer || IBM Community Activist || Aspiring to Inspire.

Leave a Reply

Your email address will not be published.

Previous Story

Understanding of Automation Anyhwere | Robotic Process Automation

Next Story

SIMPLE NAVIGATION IN WINDOWS APPLICATION

Latest from Blog

Quantum Computing | What, Why & How

Now as we are starting the 5th decade after the very first proposed model in the 1980s, quantum computers are now commercially available, brought out of the lab, and into the industry by IBM Quantum. With many experts predicting it will revolutionize the way we approach problem-solving. With the recent

Case Study: Digital Transformation of “justSajid Bank”

In this current era of what we call “digital first”, industries are repeatedly changing and evolving with the help of technology. So as the banking industry is reshaping itself, banks need to keep adopting positive changes to counter and overcome the key challenges of the modern world to overcome the

Metaverse || A Whole New World.

Things are going to be super dramatic in the next few years. Metaverse is going to open a lot of new doors to revise things that we are doing now. The culture and lifestyle would be changed. Some new cultures would have emerged and everybody would be living without physical

Pakistan Day 2020 | Coronavirus Technical Solutions

Well, on Pakistan Day 2020 our nation along with the rest of the world is facing Corona Pandemic. As the sons of this great motherland, we are trying to play our roles at our places. Within the last few weeks, Alhamdulillah I’ve got a chance to develop two technical solutions

Password: Choose the Secure, Easy and Cool Password

A super secure Password is very common nowadays. Although according to experts the password is going to expire very soon. Moreover, the pin codes are also replacing password in some why. Perhaps still there is a lot of importance of a secure password in many places. The one of the most

JumpStart with DevOps

What is DevOps; DevOps is a Software Development Strategy, that bridges the gap between the Dev and the Ops side of the company. * It’s not a tool, it’s a Methodology to bridge the gap b/w development and operations teams! As there is always a lot of conflicts between the

JumpStart Programming with Python 3

Motivation; Well, if you want to play with data and deal with complex analytics problems then Python is the best for you. We can use Python for developing complex scientific and numeric apps. Python is designed with features to facilitate data analysis and visualization. The syntax in Python helps the programmers to do coding

Understanding of Data Science Methodology

Motivation: It’s all about the different methods used in data science. Data Science Methodology: There is the following methodology used in data science which can further categories into different phases; From Problem to Approach Business Understanding Analytical Approach Working with Data Data Requirements Data Collection Data Understanding Data Preparation Deriving the

Understanding Machine Learning Methodology

Motivation Well, if we talk about a human cell sample extracted from a patient. The cell would have some characteristics. One of the interesting questions we can ask, what kind of statistics that cell have? One could easily presume that only a doctor with years of experience could diagnose a tumor and

SIMPLE NAVIGATION IN WINDOWS APPLICATION

The Navigation of UWP Apps is extremely cool and easier than other platforms. It allows enabling a variety of intuitive user experiences for moving between apps, pages, and content. Navigation is the key part of the Application. In your small Apps, you may maintain your contents and functionality in a

Guinness World Record Holder | Hajj Hackathon | Khadim Al-Haramain Al-Sharifain

Khadim Al-Haramain Al-Sharifain Built an MVP of a cognitive platform name “Khadim Al-Haramain Al-Sharifain“.  Objective The objective was to facilitate Hajj operations by introducing cognitive services integrated with Hajj systems. Hence millions of Muslims who are there for Allah Rab-ul-Izat, can perform anything without disturbing their focuses and concentrations.  Functionalities

JumpStart with IBM Bluemix

IBM Bluemix is the world most exclusive cloud platform that provides developers to quickly develop, Deploy and manage Apps over the cloud without dealing with any underline infrastructure. Bluemix provides great open source platforms for your needs. Tech experts believe that up to 2020 the computing era would completely change.

JumpStart Into Big Data With HDInsight

What would happen when the volume of your data increased repeatedly over time and you need high velocity at the same time. Not only that but you have a different variety of data and Variability also exists in your data. So how would you handle all that data? If we

Microsoft SharePoint: Create an Intranet in SharePoint

As you should already have some hands on with SharePoint. So, Lets do some hands on with SharePoint Intranet for Small company. Simply start with a Blank Site Collection. Let’s assume that the company has 3 Departments: Sales, Production and Support. They each have their own area in which they should

.NET Core

.NET Core 1.0  .NET Core 1.0 is a major new investment in the future of .NET and laying the foundation for decades to come. Still, it is in its early stage, and for some time you might still focus .NET Framework 4.6 depending on your application needs. But for many scenarios,

JUMPSTART WITH DATA BINDING IN UWP

Data Binding is one of the most interesting topics in Universal App Development. In order to perform the better functionality, you really need to have some great usage of Data Binding in you Apps. So! First thing first. What is actually the Data Binding and is its usage in UWP.

justSajid | A PLACE FOR MY THOUGHTS

This blog is my personal mental playground. The views expressed are mine, and mine alone. They do not represent the views of my employer, my family, my friends, my imaginary friends, my neighbors, people who live in my city, province, country, region, or planet, nor do they represent the views

justSajid | A PLACE FOR MY THOUGHTS

justSajid is my personal mental playground. The views expressed are mine, and mine alone. They do not represent the views of my employer, my family, my friends, my imaginary friends, my neighbors, people who live in my city, province, country, region, or planet, nor do they represent the views of

Agentic AI: The Future of Machines Acting with Purpose

Artificial Intelligence (AI) has come a long way from being a fancy algorithm for chess games to becoming our digital assistant, creative collaborator, and even a philosopher’s muse. One of the more intriguing advancements in AI is Agentic AI—an AI system that can act autonomously, pursue goals, and make decisions,
GoUp

Don't Miss

SIMPLE NAVIGATION IN WINDOWS APPLICATION

The Navigation of UWP Apps is extremely cool and easier

Architecture of .NET Framework

.NET Framework is developed by Microsoft. The .NET Framework is