Objective-C基础语言开发来袭,你准备好了吗?

news2024/11/15 18:03:59

文/ZaiZai

前言

今天小白电脑技术的公众号迎来了一位Objective-C语言开发大神——ZaiZai。接下来有想要学习写插件(iOS/macOS/iPadOS/tvOS)的小伙伴可以关注微信公众号,教程将持续更新。

ZaiZai个人介绍……呃……他不让放。

Objective-C是一门基于iOS/macOS/iPadOS/tvOS系统的软件开发语言。本教程分为多期,后期会更新代码编写和程序设计等教程。

首先,我们要先了解什么是 Objective-C(简称 OC)。

Objective-C 是一种面向对象的编程语言,它是 C 语言的扩展,由 BradCox 在 20 世纪 80年代初期开发。Objective-C 最初是为了在 NeXTSTEP 操作系统上开发应用程序而设计的,后来被苹果公司采用并成为了 iOS 和 macOS 等操作系统的主要编程语言之一。

百度百科

OC 有什么优点?

动态性 Objective-C 具有很强的动态性,支持动态类型、动态绑定、动态方法解析等特性,使得程序更加灵活和易于扩展。丰富的框架和库Objective-C 提供了丰富的框架和库,包括 Foundation 框架、Cocoa框架、 CoreData 框架、 CoreAnimation 框架以及 UIKit 框架等,可以大大提高开发效率和程序的质量。

腾讯云

简单概括,就是很牛。

OC 可以干什么?

OC 可以开发基于iOS/macOS/iPadOS/tvOS系统的各种应用 APP,你在 AppStore 里看到的大部分 APP都是基于 OC 开发的,在越狱获取 ROOT 最高权限的情况下,你可以干更多有趣的事!

开发 OC 需要什么环境?

上文提到 OC 是为 Apple 服务的,那么开发 OC 当然基于我们的 MacOS 了。(使用Windows系统是无法直接完成开发的,需要在电脑上安装VMware虚拟机,然后在虚拟机里安装macOS系统,或者是直接把电脑做成双系统:黑苹果+Windows系统)。

有些朋友没有Mac 怎么办呢?没关系, 只要你有 Windows,你就可以利用 VMware 虚拟机构建一个虚拟的 Mac 系统,可以满足日常的需要。

  • VMware虚拟机安装macOS系统教程(点我跳转)

当然如果您有实力可以直接购买一台mac电脑(MacBook Air或Macmini)在小型开发中性能是足够的,体验中会比虚拟机运行起来更加流畅。

有相对应的系统之后,还需要做什么准备才能进行开发?

开发环境配置

无论是什么语言,一定离不开编辑器,那么 OC 的编辑器是什么呢?

图片

Xcode全版本记录表icon-default.png?t=N7T8https://pan.xunlei.com/s/VNzxSFb_TJ29LWIGkjjF-IBrA1?pwd=j9kn#

下载文件之后打开就能看到一个全版本记录表,按照自己的电脑版本选择对应的Xcode版本下载。

图片

点击【下载Xcode】按钮之后会跳转到苹果官网下载,此时你需要有一个Apple ID,登录上去之后注册为开发者。(推荐 Xcode14)

图片

然后有一大串英文的界面,打个勾,然后点击【Agree】

图片

再返回到Xcode界面,重新点击【下载Xcode】

图片

文件就开始下载了。

图片

    安装教程

双击 Xcode_xx.x.xip 解压缩文件(文件有点大,请耐心等待)

图片

然后双击 Xcode.app 文件

图片

点击【Agree】

图片

输入macOS的开机密码,然后选择想要开发的平台方向,需要的方向打勾,然后点击【Install】

图片

等待安装完成

图片

安装完成之后,并没有任何提示……

这时候再点击刚刚的Xcode.app,就能看到这个界面

图片

看到这个界面,你就踏出了成为开发大佬的第一步!恭喜你!

--End--

XCODE 的常用快捷键有哪些?

Win/Commond+ R: 编译并运行(不触发断点);

Win/Commond + Y: 编译并调试(触发断点);

Win/Commond + SHIFT + RETURN: 终止运行或调试;

Win/Commond + B: 编译;CMD + SHIFT + K: 清理;

这里的【Win】按键指的是你安装VMware虚拟机或者黑苹果的时候,它的功能键映射。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1818610.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

HTML制作一个日蚀的动画特效

大家好&#xff0c;今天制作一个日蚀动画特效&#xff01; 先看具体效果&#xff1a; 使用一个逐渐扩大的圆形阴影来模拟月亮遮挡太阳的效果。使用了CSS的keyframes动画和border-radius属性来创建一个简单的圆形阴影效果。 HTML <!DOCTYPE html> <html lang"e…

阿里巴巴 2024 最新 Java 架构师进阶宝典!助力程序员金九银十面试跳槽涨薪

最近感慨面试难的人越来越多了&#xff0c;一方面是市场环境&#xff0c;更重要的一方面是企业对Java的人才要求越来越高了。 基本上这样感慨的分为两类人&#xff0c;第一&#xff0c;虽然挂着3、5年经验&#xff0c;但肚子里货少&#xff0c;也没啥拿得出手的项目&#xff0c…

C#下WinForm多语种切换

这是应一个网友要求写的&#xff0c;希望对你有所帮助。本文将介绍如何在一个WinForm应用程序中实现多语种切换。通过一个简单的示例&#xff0c;你将了解到如何使用资源文件管理不同语言的文本&#xff0c;并通过用户界面实现语言切换。 创建WinForm项目 打开Visual Studio&a…

26大技巧教你使用好AI大模型

前言 在探索与生成式AI如ChatGPT、Microsoft Copilot等前沿工具交互的过程中&#xff0c;我们不可避免地会遇到一个核心问题——如何编写出既能让大模型轻松理解又能准确执行的prompt。这一挑战不仅要求用户精准把握问题的核心&#xff0c;提炼出简洁明了的关键词&#xff0c;…

若依对数据二次处理导致查询total只有十条的问题处理办法

前言&#xff1a; 在使用若依框架的过程中&#xff0c;如果是查询结果数据直接返回&#xff0c;那么其自带的分页插件可以正常返回数据以及总条数&#xff0c;若是在业务逻辑层对数据进行了其他二次处理&#xff0c;再返回就会出现异常&#xff0c;无论查询了多少条&#xff0…

NVMe全闪存储系统性能测试及产品功能与应用场景

今天我们继续对全闪存储系统GS 5024UE的评测&#xff0c;重点关注GS 5024UE的性能测试数据&#xff0c;以及产品所具备的功能、应用场景。通过Windows IOmeter测试软件&#xff0c;来测试GS 5024UE设备的性能&#xff0c;在机器上配上24颗 NVMe 3.84TB硬盘, 16条32Gb FC数据&am…

Ubuntu安装opendaylight控制器

目录 实验任务 实验环境 安装过程&#xff1a; 将opendaylight添加到环境变量中 实验任务 在虚拟机1中安装opendaylight控制器并安装相应的组件在虚拟机2中使用mininet创建一个测试拓扑并将控制器的地址指向虚拟机1在虚拟机1中的opendaylight的web界面可以查看到创建的拓扑将…

python快速入门之Flask框架

文章目录 一、pip安装二、接口开发三、测试 一、pip安装 pip install flask 二、接口开发 from flask import Flaskapp Flask(__name__)app.route("/test") def index():return "test"if __name__ __main__:app.run()三、测试 http://127.0.0.1:5000…

AI大模型探索之路-实战篇:智能化IT领域搜索引擎之GLM-4大模型技术的实践探索

系列篇章&#x1f4a5; No.文章1AI大模型探索之路-实战篇&#xff1a;智能化IT领域搜索引擎的构建与初步实践2AI大模型探索之路-实战篇&#xff1a;智能化IT领域搜索引擎之GLM-4大模型技术的实践探索3AI大模型探索之路-实战篇&#xff1a;智能化IT领域搜索引擎之知乎网站数据获…

如何高效管理和监控 Elasticsearch 别名及索引?

0、引言 在 Elasticsearch 项目中&#xff0c;管理和监控索引是开发者的一项重要任务。 尤其是当我们需要在项目的管理部分展示索引和别名的统计信息时&#xff0c;了解如何有效地列出这些别名和索引显得尤为重要。 本篇博客将介绍几种在 Elasticsearch 中列出别名和索引的方法…

JAVA小知识18:常用数组操作API之Arrays

在JAVA小知识17中我们详细的讲述了关于数组的定义以及使用方法&#xff0c;今天来讲一个关于操作数组的工具类。java.util.Arrays是一个专门用于操作数组的工具类&#xff0c;它封装了非常多的方法方便我们操作数组。 一、常用方法 方法说明public static String toString(数组…

“全光无线星空”照亮津亚电子智能制造之路

随着第四次工业革命浪潮的到来,智能制造正成为制造业的新常态。工业4.0时代的工厂不再是封闭的制造孤岛,而是通过高度的数字化和网络化,实现生产过程的智能化、自动化和灵活化。在这样的大趋势下,制造业正经历着从传统制造向智能制造的深刻转型,数字化车间和智能化生产线成为推…

在Dataworks调度里检查上游表的分区是否已经产出

在Dataworks调度里检查上游表的分区是否已经产出 新建PyOdps3节点&#xff0c;贴如如下代码&#xff1a; import sys import time from datetime import datetimebizdate args[bizdate] if not o.exist_table(args[table]):sys.exit(1)# 设置结束时间为今天的20:00 end_time …

Linux-笔记 全志平台OTG虚拟 串口、网口、U盘笔记

前言&#xff1a; 此文章方法适用于全志通用平台&#xff0c;并且三种虚拟功能同一时间只能使用一个&#xff0c;原因是此3种功能都是内核USB Gadget precomposed configurations的其中一个选项&#xff0c;只能单选&#xff0c;不能多选&#xff0c;而且不能通过修改配置文件去…

入门 Axure RP 9 | 原型设计基础教程

选择正确的原型设计工具并非易事&#xff0c;Axure RP 9能够快速完成原型设计。原型设计是一种经过时间考验的方法&#xff0c;可以将你的设计快速放置在用户的设备并交到他们手中。替代Axure RP 9的原型设计工具即时设计是一个完全集成的协同设计工具&#xff0c;无需使用不同…

【算法与数据结构】【数组篇】【题11-题15】

系列文章 本人系列文章-CSDN博客https://blog.csdn.net/handsomethefirst/article/details/138226266?spm1001.2014.3001.5502 1.数组基本知识点 1.1概念 数组就是一个集合。数组会用一些名为索引的数字来标识每项数据在数组中的位置&#xff0c;且在大多数编程语言中&…

齐普夫定律在循环神经网络中的语言模型的应用

目录 齐普夫定律解释公式解释图与公式的关系代码与图的分析结论 使用对数表达方式的原因1. 线性化非线性关系2. 方便数据可视化和分析3. 降低数值范围4. 方便参数估计公式详细解释结论 来自&#xff1a;https://zh-v2.d2l.ai/chapter_recurrent-neural-networks/language-model…

企业网站安装OV SSL证书的必要性

一、什么是OV SSL证书 SSL OV证书&#xff0c;即组织验证型SSL证书&#xff0c;它要求证书颁发机构对申请证书的组织进行身份验证&#xff0c;确认组织的真实性后&#xff0c;才会发放证书。这种验证方式提高了安全性&#xff0c;因为它确保了证书背后的实体是真实存在的组织&…

SpringBoot实现图片文件上传和回显的两种方式

目录 一 功能需求 二 上传本地 2.1 实现文件上传的controller层 2.2 图片访问资源映射 二 上传OSS 一 功能需求 实现图片的上传和回显功能其实在业务中是非常常见的,比如需要上传头像,或者交易平台需要上传物品的图片等等,都需要上传和回显,所以我接下来给大家介绍两种…

VsCode中C文件调用其他C文件函数失败

之前一直使用CodeBlocks&#xff0c;最近使用vscode多&#xff0c;感觉它比较方便&#xff0c;但在调用其他C文件的时候发现报错以下内容基于单C文件运行成功&#xff0c;否则请移步 博文&#xff1a;VSCode上搭建C/C开发环境 报错信息 没有使用CodeRunner插件&#xff0c;弹…