我在网上搜索了一下,试图弄清楚框架、库和 API 到底是什么。
但我仍然不明白。Windows API 处理的框架/库是什么?
Win32 是 Windows API 的一个版本,我在 Wikipedia Windows API 页面(“版本”选项卡)上看到:“Win32 的核心 DLL 是 kernel32.dll、user32.dll 和 gdi32.dll”。
但是这些 .dll 的框架是什么?Windows?但 Windows 是一个操作系统,而不是一个框架……也许两者都是,但我很困惑 :/。
有人能帮助我吗?:P
答案1
Windows 应用程序编程接口 (API) 是 Microsoft Windows 操作系统系列的系统编程接口。
在推出 64 位版本的 Windows XP 和 Windows Server 2003 之前,32 位版本的 Windows 操作系统的编程接口称为 Win32 API,这与原始的 16 位 Windows API 有所区别。
Windows API 包含数千个有文档记录的可调用子例程,例如 CreateProcess、CreateFile 和 GetMessage。以下是 Windows API 函数的主要类别:
- 基础服务:进程、线程、内存管理、文件 I/O 等。
- 组件服务:COM/COM+ 支持。
- 用户图形和多媒体服务。
- 消息传递和协作。
- 联网。
- 网页服务。
框架是一种通用结构,它提供了可用于实现特定软件的骨架架构。
库是指提供可从您自己的代码中调用来处理常见任务的函数的代码。
答案2
让我们从用户界面。什么是用户界面?界面一般是与软件交互的一种方式。因此,用户界面是用户可以用来与软件交互的东西。你习惯于图形用户界面 (GUI)但旧电脑和一些现代专业软件使用命令行界面 (CLI),用户可以在其中输入文本命令并以文本形式接收结果。
还有一些界面不是用户界面,即它们不是为了与人类交互而设计的。例如网络接口是通过网络在两个或多个设备之间进行交互的严格定义的手段。以太网适配器和Wi-Fi适配器提供网络接口。
最后,API:应用程序编程接口。这些是由一个软件公开的接口,旨在让其他软件可以与其交互。当我想使用某个库时,我必须了解它的 API,即它提供的功能以及如何利用它。当我想使用一个框架时,我必须了解它的 API,即如何将我的自定义代码插入框架。
Windows(以及任何操作系统)是运行其他软件的平台。程序由 Windows 以特定方式启动,它们可以加载库、与其他程序交互、读取和写入文件、使用硬件、等待特定事件(按下键、窗口失去焦点等)……如您所见,有很多东西。所有这些东西或多或少都是由 Windows 提供的,但程序必须知道如何访问它。这就是 Windows API。
但是这些.dll的框架是什么?
没有。东西并不总是属于某个框架。最初的计算机程序不使用任何框架甚至库,后来才发明了这些,以使常用的代码片段可重复使用,而不是一遍又一遍地编写它们。