原标题:想要打通Windows和Linux的任督二脉,少不了API这层功力
每每Windows一更新,都伴随着一波又一波的高潮,从界面UI到系统布局,再到各种新功能的加入,每个版本的Windows或多或少都有些改变。
当然,在用户的眼中,所关心的无外乎是新版Windows有哪些新功能,会不会有BUG存在。就比如最近更新的Win10「2004版」,新增了诸如独立的Cortana、网页预览、任务管理器显示GPU温度等全新功能,但也有不少BUG。
2004版搜索预览功能
而在开发者眼中,他们所关心的是有没有新框架,新接口的支持,能够让Windows应用的开发变得更加容易,受众更广。而在这些的背后,少不了今天的主角——「API」。
什么是API
其实到目前为止,API在业界中一直没有一个明确的定义。这是因为作为「专有名词」的API,随着互联网技术和数字经济的高速发展,最初所表达的含义已经容纳不下这些新的内容,而且它的外延还在不断扩大,所包含的内容也越来越多。
我们先来看看网络上对API的描述:来源:维基百科
API又被称为「应用程序编程接口」,它能通过定义一组函数、协议和数据结构,来明确APP中各个组件之间的交互方式,然后通过接口的形式,将Web应用、操作系统、数据库等提供给外部使用
这就是我们暂时知道的API。说人话就是:有了API作为接口,系统就能利用它在各大APP中来回切换。
随着近年来,软件规模的日益庞大,开发者们常常需要把复杂的系统,划分成细小的组成部分,而其中的「API接口设计」就显得十分重要。只有使软件系统的职责得到合理划分,良好的接口设计就能降低系统各部分的相互依赖,从而提高系统的可维护性和可扩展性。
说人话就是:通过API接口合理分工,APP的开发和使用才会更加便捷。
作为用户的我们,平时能够直接接触的API几乎没有(因为API是面向开发者的)。但基本上都会使用到,比如朋友发来的并夕夕拼单链接,点击进入后会直接跳转到并夕夕APP当中(当然这是较为简单的API接口)
API分类
如果说操作系统是用户与硬件系统之间的接口,那么API就是硬件系统与软件之间相互连通的枢纽(简单来说就是起「插头」的作用)。因为用途、功能和使用环境的不同,一般将API分为「类库型API」、「操作系统型API」、「远程应用型API」和「web应用型API」这四大类,而我们多数时间能够接触到的API,一般是操作系统型和web应用型这两类。
1.操作系统型API
就如字面意思那样,通常是操作系统层对外部提供的接口,可以让开发者在不了解应用程序「工作原理」的情况下,使用它的功能,完成对操作系统的操作。就像我们需要使用电时,只需要插上插头就会有电流过来,而不用了解电流的产生原理。
比如,在Windows API环境下,我们下载东西时,可以通过浏览器调用客户端程序进行下载。
2.Web应用型API
这类API通过使用「http协议」,在企业与不同的应用程序之间、企业与企业之间,通过web开发架构的方法,以服务的形式,对外提供调用接口,从而满足消费者的需求。这在我们生活中很常见,例如各类APP的用户登录界面,就是使用的这类API。
就开发者而言,最让他们抓狂的就是「平台接口混乱」现象了,而我们熟知的Windows平台就是这样的。然而,在今年5月20日的微软「Build开发者大会」上,微软为开发者们带来了福报,展示了全新的Windows 开发工具「Project Reunion」。
从字面上,就能感受到一股浓浓的「Microsoft WindowFamily」的味道(是不是很香?)。
根据微软的介绍,Project Reunion 是一组库、框架、组件和工具的集合体,结合了 Win32 本机应用程序的功能和现代API技术(新 API、聚合 API 和 API 子集)。
简单来说就是集合了几乎所有类型的API,让开发者可以在Windows 平台中的任何应用程序中使用它。如果开发者想将自己的应用发布至不同的Windows 平台,只需要通过Project Reunion工具即可,无需再进行重新编写。
目前,Project Reunion 中已有的组件包括:WinUI 3 for XAML 利用 XAML 的功能,可以帮助开发者为各种应用程序构建流畅的 UX;C++/WinRT、RUST/WinRT 和 C#/WinRT 提供自定义类型的语言本地投影,方便开发人员调用 Windows API,更轻松地使用自己熟悉的语言构建各类 Windows 应用和组件;MSIX-Core 用于打包应用程序,以通过商店或自己的交付管道分发到 Windows 桌面计算机。
来源:OSCHINA
更为可怕的是,Project Reunion为新的应用程序提供一个共同的平台,从而让开发者能够紧跟平台步伐,而不在乎用的是C++、.NET还是ReactNative。这意味着可以在Linux和Windows系统下,进行并行计算,彻底打通了Linux和Windows之间的隔阂!(在Win 10的2004版中加入Linux子系统就是体现)
Linuxer们可能万万没想到,最终敲破Linux和Windows之间窗户的石头,居然来自微软自己。
随着Windows的不断更新,相信Project Reunion这个工具向的技术也会包含更多的API,为我们想要的下一代Windows提供最为牢固的基础。目前物联网和5G技术的飞速发展,各种新的API仍在不断地涌现,而API技术的安全将会是下一个浪潮的开端。返回搜狐,查看更多
责任编辑: