编程语言中什么是框架?什么是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等编程技术的技巧经验分享),若作品对您有帮助,请关注、分享、点赞、收藏、在看、喜欢,您的支持是我们为您提供帮助的最大动力。

相关推荐
songgeb6 小时前
YYImage Bug:一行之差,正常 JPEG 如何在 iOS 被读成条纹
ios·swift
浪扼飞舟7 小时前
WPF(数据绑定)
wpf
fthux8 小时前
Tick Rest,一个休息提醒工具的自我修养
macos·开源·swift
BroNekoX8 小时前
我将基于 QtQuick 框架开发的音乐播放器性能做到顶级
qt
小小晓.12 小时前
Qt 对话框、QLineEdit 与布局管理实战详解
开发语言·qt
茶底世界之下13 小时前
阴天花摊不必变暖:用 Awaking 留住花色与湿街
ios·app·产品
Fatbobman(东坡肘子)1 天前
快速消失的硬盘容量 -- 肘子的 Swift 周报 #160
开发语言·人工智能·redis·ios·swiftui·iphone·swift
chaoahyl1 天前
WaterDiary 喝水记录 App 实战(2)· 实现喝水首页与本地保存
swift
samble1 天前
从零搭建半导体设备上位机(四):单实例、启动流程与配置文件,App 里那 526 行到底在干什么
wpf·配置文件·单实例
FPGA小迷弟1 天前
FPGA 与千兆以太网:各类物理接口的形式、区别、使用方法与应用场景详解
tcp/ip·macos·fpga开发·udp·fpga