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

文/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.mzph.cn/pingmian/26459.shtml

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

相关文章

AI早班车6.13

全球AI新闻速递 1.Yandex 开源模型训练工具“YaFSDP”,提升 GPU 利用率。 2.全天候激光智能除草机器人落地,环境零污染。 3.苹果2024开发者大会-Siri 更智能。 4.CampusAI筹集1000万美元种子资金,创建虚拟校园用于学习AI技能。 5.OpenAI&…

C语言详解(预编译)

Hi~!这里是奋斗的小羊,很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~~ 💥💥个人主页:奋斗的小羊 💥💥所属专栏:C语言 🚀本系列文章为个人学习…

什么是DMZ?路由器上如何使用DMZ?

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 DMZ 📒🚀 DMZ的应用场景💡 路由器设置DMZ🎈 注意事项 🎈⚓️ 相关链接 ⚓️📖 介绍 📖 在网络管理中,DMZ(Demilitarized Zone,隔离区)是一个特殊的网络区域,常用于将公共访问和内部网络隔离开来。DMZ功能允许…

遇到JSON文件就头大?掌握Python这几种方法,让你轻松应对

目录 1、标准库json模块 📄 1.1 json.load()函数介绍 1.2 json.loads()处理字符串 1.3 使用json.dump()写入JSON 1.4 json.dumps()美化输出 1.4 错误处理与编码问题 1.5 高效读取大文件技巧 2、第三方库simplejson加持 🔧 2.1 安装与导入simplejson 2.2 性能优势与…

解决css文本内容为符号不会换行问题

错误样式如上,超出了规定的文本区域。 在css上增加word-wrap: break-word;即可。

电商价格监测对于品牌渠道管控的重要性

当品牌开启经销渠道或涉足电商渠道时,必须着手进行线上线下价格监测。只有监控到电商价格,才能明晰出货后的商品历经多轮市场演绎后的实际价格,进而了解市场需求下的真实低价行为。借助力维网络开发的电商价格监测系统,品牌商能知…

uni-app利用renderjs实现安卓App上jssip+freeswitch+webrtc音视频通话功能

效果图 前置知识 利用renderjs在app端加载for web库 JsSIPFreeSwitchVue实现WebRtc音视频通话 原始模块 <template><viewclass"test-sip":userExtension"userExtension":change:userExtension"JsSIP.handleUserExtenSionChange":tar…

Python邮箱发送如何设置?Python发信方法?

Python邮箱发送邮件需要哪些库&#xff1f;怎么使用Python发信&#xff1f; Python的强大之处在于其丰富的库和模块&#xff0c;使得开发者可以轻松地实现各种功能&#xff0c;包括通过电子邮件发送信息。AokSend将介绍如何在Python中设置和发送电子邮件&#xff0c;以及相关的…

超高频载码体有哪些特点?

载码体由线圈、已编程的芯片&#xff0c;以及电池(在有源读写系统中)组成&#xff0c;具有唯一的电子编码&#xff0c;拥有大容量的存储空间&#xff0c;通常附着于产品载体乃至是产品本身&#xff0c;成为一个随产品移动的移动数据库&#xff0c;可以帮助企业更好的物料、成品…

AH8652:220V转5V非隔离电源芯片

### AH8652&#xff1a;220V转5V非隔离电源芯片&#xff0c;高效转换新选择 #### 引言 随着电子设备对电源稳定性和安全性要求的提高&#xff0c;非隔离电源转换芯片因其简单、高效和成本效益而受到市场的欢迎。AH8652是一款专为220V转5V设计的非隔离电源芯片&#xff0c;以其…

Ubuntu安装Protobuf

以前的版本中&#xff0c;有./configure&#xff0c;所以参照下面的博客链接 Ubuntu安装Protobuf&#xff0c;指定版本_ubuntu更新protobuf-CSDN博客 后来的版本中&#xff0c;没有了./configure文件&#xff0c;需要安装bazel,参照下面的官网链接 protobuf/src/README.md a…

基于 Redis 实现分布式缓存

一、单节点 Redis 的问题 1.1 存在的问题 1、数据丢失问题&#xff1a;Redis 是内存存储&#xff0c;服务重启可能会丢失数据。 2、并发能力问题&#xff1a;单节点 Redis 并发能力虽然不错&#xff0c;但也无法满足如 618 这样的高并发场景。 3、故障恢复问题&#xff1a;如果…

实践分享:鸿蒙跨平台开发实例

先来理解什么是跨平台 提到跨平台&#xff0c;要先理解什么是“平台”&#xff0c;这里的平台&#xff0c;就是指应用程序的运行环境&#xff0c;例如操作系统&#xff0c;或者是Web浏览器&#xff0c;具体的像HarmonyOS、Android、iOS、或者浏览器&#xff0c;都可以叫做平台…

用于云医疗图像的缩略图保持加密方案

论文标题&#xff1a;《Data hiding with thumbnail-preserving encryption for cloud medical images》&#xff0c;作者提出了一种用于云医疗图像的可逆数据隐藏方案&#xff0c;同时保留了缩略图。下面是论文的创新点和算法过程的总结。 一、缩略图保持加密与传统图像加密 …

GD32 MCU超频后无法再次下载程序的解决办法

我们知道&#xff0c;MCU的系统时钟主频就相当于人的心跳或脉搏&#xff0c;为所有的工作单元提供时间基数&#xff0c;所以一般在程序最开始的地方都需要进行主频配置。 GD32固件库中提供了多种宏定义&#xff0c;可以很方便的将系统时钟配置为想要的频率。 GD32固件库中所用…

AI宣传文案软件有哪些?5款AI软件推荐

AI宣传文案软件有哪些&#xff1f;AI宣传文案软件在现代营销和创意产业中扮演着越来越重要的角色&#xff0c;它们凭借先进的自然语言处理、机器学习和深度学习技术&#xff0c;不仅解放了创作者的双手&#xff0c;还大大提升了文案的生成效率和质量。这些软件能够精准捕捉用户…

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…

redis 08 慢查询日志

1.什么是慢查询日志 2.慢查询和两个参数有关 2.1 2.2 3.例子&#xff1a; 4 参数详细介绍&#xff1a;

ICRA 2024:基于视觉触觉传感器的物体表⾯分类的Sim2Real双层适应⽅法

⼈们通常通过视觉来感知物体表⾯的性质&#xff0c;但有时需要通过触觉信息来补充或替代视觉信息。在机器⼈感知物体属性⽅⾯&#xff0c;基于视觉的触觉传感器是⽬前的最新技术&#xff0c;因为它们可以产⽣与表⾯接触的⾼分辨率 RGB 触觉图像。然⽽&#xff0c;这些图像需要⼤…

如何通过亚马逊测评提升产品竞争力的关键策略

在亚马逊这个全球领先的跨境电商平台上&#xff0c;随着卖家数量的激增&#xff0c;产品间的竞争愈发激烈&#xff0c;为了在市场中脱颖而出&#xff0c;提高产品的竞争力成为了每位卖家必须面对的问题&#xff0c;而在这其中&#xff0c;亚马逊测评作为一种有效的市场策略&…