编程语言中什么是框架?什么是Cocoa?Foundation.framework的底层实现?Swift如何引入ObjC框架?

编程语言中什么是框架?

在编程语言中,框架(Framework)是一种特定的软件库,它提供了一套预先定义的代码和组件,用于加速和简化特定类型的应用程序的开发。框架通常提供了一套标准化的开发工具集和约定,使得开发者可以专注于应用程序的核心逻辑,而不是从头开始编写所有底层代码。

  • 框架作者觉得这些代码交给其它程序员开发,浪费时间,还容易写错,最终难以维护,不如直接写好给他们用。

Java的Springboot, Windows的WPF/MFC, 跨平台组件QT,移动端Vue/React,iOS的Cocoa Touch UIKit都是框架的一种。

什么是Cocoa?

Cocoa是苹果操作系统macOS和iOS上的应用程序开发框架集合,核心语言是Objective-C编程语言,在移动平台被称为Cocoa Touch,Cocoa包含多个子框架,其中最重要的包括Foundation和AppKit(macOS上)或UIKit(iOS上).

  • Foundation框架提供了一系列与图形用户界面无关的基本服务,如字符串处理、集合、文件系统操作等。这些服务对于所有类型的应用程序都是必要的基础设施。
  • AppKit和UIKit是Cocoa中负责用户界面的部分,它包含了创建和管理苹果平台应用程序的用户界面所需的所有类和接口,例如视图(Views)、控制器(Controllers)、窗口(Windows)和其他UI元素。UIKit使得开发者能够以可视化的方式构建应用程序,并处理用户交互。

Windows平台同样有类似的框架以方便程序员使用,例如早期的MFC、ATL,较新的例如WPF.

Foundation.framework的底层实现?

Cocoa框架的XX类库底层可能会利用Core XX来实现。比如Foundation.framework底层依赖CoreFoundation.framework的实现,简称CF框架,它提供了C语言接口。可以理解成ObjC语言是C语言上面封装了一层壳。

Swift如何引入ObjC框架?

import指令引入ObjC库,Swift可以直接使用ObjC类库,非常方便。例如import Cocoa或import Foundation分别引入Cocoa和Foundation类库。


若文章对您有帮助,欢迎关注 程序员小迷 。助您在编程路上越走越好!

微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。

我是 程序员小迷 (致力于C、C++、Java、Kotlin、Android、iOS、Shell、JavaScript、TypeScript、Python等编程技术的技巧经验分享),若作品对您有帮助,请关注、分享、点赞、收藏、在看、喜欢,您的支持是我们为您提供帮助的最大动力。

相关推荐
R6bandito_34 分钟前
Qt几何数据类型:QLine类型详解(基础向)
c语言·开发语言·c++·经验分享·qt
吾与谁归in2 小时前
【WPF中ControlTemplate 与 DataTemplate之间的区别?】
c#·wpf·template
胡少侠75 小时前
macOS运行amd64的镜像
macos·docker·platform·amd64
妞宝宝14 小时前
mac电脑多个ssh keys共存
macos·ssh
kevin--你不知道的事14 小时前
QT实战-qt各种菜单样式实现
qt
feiyangqingyun15 小时前
Qt/C++实现帧同步播放器/硬解码GPU绘制/超低资源占用/支持8K16K/支持win/linux/mac/嵌入式/国产OS等
qt·帧同步播放器·qt帧同步
行思理15 小时前
如何使用brew安装phpredis扩展?
redis·macos·brew·phpredis
zyy2918291816 小时前
嵌入式Linux无窗口系统下搭建 Qt 开发环境
linux·嵌入式硬件·qt·物联网·iot
程序员JerrySUN16 小时前
Qt 信号与槽:UI设计的基础
开发语言·qt·ui
yuyuyuliang0017 小时前
Qt5中使用EPICS通道访问读写EPICS PV
linux·开发语言·qt·epics