iOS 现状与开发者生态及Xcode简介 | 青训营笔记

398 阅读7分钟

这是我参与「第四届青训营 」笔记创作活动的的第14天

一、前言

今天学习到的是【iOS 客户端专场 学习资料一】第四届字节跳动青训营的第一二节:iOS 现状与开发者生态及Xcode简介;在IOS开发中,ios是一个封闭的平台,相较其他开放的手机操作系统平台有较多的限制。因此涉及到硬件底层或者系统安全性的功能可能在ios开发中无法实现。xcode是苹果的集成开发环境(IDE)。你使用Xcode来为苹果设备创建app,比如,iPad、iPhone、Apple Watch、Apple TV、Mac。在app的创建、测试、优化、发布到AppStore这整个开发流程中,Xcode提供了一套工具来方便你进行管理

二、本节课知识点大纲:

image.png

iOS 现状与开发者生态

# Xcode 简介

iOS 现状与开发者生态

2021年一季度互联网和相关服务业运行情况

2021年上半年互联网和相关服务业运行情况

2021年1-10月份互联网和相关服务业运行情况

2021年互联网和相关服务业运行情况

2022年一季度互联网和相关服务业运行情况

WWDC22 - Videos - Apple Developer

Canalys Newsroom - North American smartphone shipments up 4% in Q1 despite growing inflation concern

Canalys Newsroom - Canalys: Global smartphone shipments fall 11% due to adverse headwinds

Canalys Newsroom - Canalys: Apple grows 40% to take the crown in China smartphone market in Q4 2021

工业和信息化部举行2021年汽车工业发展情况新闻发布会(附实录)

Xcode & Objective-C 简介

image.png

Xcode

Xcode 简介

Xcode 是苹果公司推出的一款开发工具,第一个版本于2003时推出,截至目前最新的版本是14.0

它集合了 编译,测试,Git,甚至能直接将你的App提交到AppStore 去做审核。

developer.apple.com/documentati…

Xcode工程体系介绍

  • Workspace:Workspace 是 Xcode 提供的一个工作空间,一个Workspace可以包含多个project,可以通过多个Project分工组合成一个庞大且复杂的工程
  • Project:Project 是一个工程的核心,你可以透过它来管理源代码,资源文件,添加其他三方库...等等,一个Project 可以包含多个 Target
  • 而Target可以看做是一个特定的构建目标,可以是以构建一个App主体为目标,或是构建命令行工具,构建代码二进制库...等

    • 每个Target都可以从它隶属的Project中,圈出一批源代码文件或资源文件,然后基于该Target的配置Build Configurations, Build Phase ,执行构建就能得到Target对应的产物 Product,也就是运行的最终结果。

Project文件

Project他是一个大型目录,它既包含了各种文件,资源,以及构建信息,也包含了一个或多个的Target。

.pbxproj 详细介绍:www.jianshu.com/p/e82ec6a56…

Project本质是一个 .pbxproj 为后坠名的文件,文件的内容使用 Old-Style ASCII Property Lists的格式,记录了各种信息,信息包括以下内容:

  • 对文件的引用

    • 原代码,.m / .h / .cc / .swift... 等等
    • 资源文件
    • Framework, Library
  • 虚拟文件夹,Group

    • 将多个文件组织成虚拟文件夹,但不影响实际文件目录的结构
  • 包含的Target
  • 构建配置

Targets介绍

原文:developer.apple.com/library/arc…

翻译大致如下:

一个Target,详细定义了Project中的一批文件到构建出一个Product的整个过程,

它定义了构建系统的所有输入和文件的处理配置,而构建系统的输出就是Product。

处理配值指的则是 Target的Build Settings 和 Build Phases。

同学们可以这样理解,你创建了一个食品工厂(Workspace & Project),然后你创建一个鸡块生产线(Target),生产线的输入是鸡肉,淀粉,食用油(Input File, 资源文件),你需要设置搅拌速度,油温和处理顺序(Build Settings, Build Phases),最后你按下机器运行(Build & Run),就会得到产物麦乐鸡块(Product)

你还可以依赖本工厂(Workspace & Project)其他生產線的产物,例如酱料(Other Target & Product),编译器会自动排列编译的顺序。

Targets 分类

创建项目后,主界面就显示出来了。这个窗口就是你观察、编辑以及管理你项目的交互界面了。它不但可以拉伸和配置,来适应你手头上工作的需要,还可以组装成符合你工作方式的样子。

使用工具条可以构建、运行app,查看运行任务的进度,配置工作环境。在组合菜单中你可以选择程序目标运行的终点——比如,一个模拟器或者某个设备。(如果工具条隐藏了,选择 View > Show Toolbar 来显示它)。在工具条的最右侧是分割控制器,用来显示或隐藏主界面的不同区域。


使用导航区域来快速获取工程的不同部分。点击导航条上的按钮,导航内容区域会显示出相应的内容。例如,要查看工程的文件,点击工程导航按钮,并且所有文件会在内容区域展示出来

 

在导航区选中一个文件,编辑区就会把它打开。例如,你选择一个源文件,文件编辑器就会打开它。如果你选择一个界面交互文件,界面构建器就会打开它。界面构建器是内嵌在Xcode里的一个界面可视化的编辑器。如果选中的文件类型没有对应的编辑器可以打开,那么在编辑区会显示该文件的预览。

选择工程文件(导航区的根文件)打开工程编辑器。它可以查看编辑你的工程和其他设置。使用标签切换不同的设置页面。

 

 使用检查区查看和编辑你在导航区和编辑区选中的对象。点击检查条上的按钮来显示检查区的内容。

 

查看符号、界面对象、你选中编辑区构建设置的描述,点击检查条上快速检查按钮或者选择 View >Inspectors > Show Quick Help Inspector. 查看符号的整个文档描述,点击查看器下面的“Open in Developer Documentation”链接。

 在工具条上选择一个库,就可以使用库里已经准备好的资源了。例如,想使用一个用户交互界面文件,选中对象库按钮,就可以获得用户交互用的视图和控件资源。把这个对象拖到主屏幕的编辑区域就可以使用了

课外补充

快捷键 文件

  • CMD + N: 新文件; CMD + SHIFT + N: 新项目; CMD + O: 打开;

  • CMD + S: 保存; CMD + SHIFT + S: 另存为;

  • CMD + W: 关闭窗口; CMD + SHIFT + W: 关闭文件

编辑

  • CMD + [: 左缩进;CMD + ]: 右缩进;

  • CMD + CTRL + LEFT: 折叠;CMD + CTRL + RIGHT: 取消折叠;

  • CMD + CTRL + TOP: 折叠全部函数;CMD + CTRL + BOTTOM: 取消全部函数折叠;

  • CTRL + U: 取消全部折叠;

  • CMD + D: 添加书签; CMD + /: 注释或取消注释;

  • CTRL + .: 参数提示; ESC: 自动提示列表

调试

  • CMD + : 设置或取消断点;

  • CMD + OPT + : 允许或禁用当前断点;

  • CMD + OPT + B: 查看全部断点;

  • CMD + RETURN: 编译并运行(根据设置决定是否启用断点);

  • CMD + R: 编译并运行(不触发断点);

  • CMD + Y: 编译并调试(触发断点);

  • CMD + SHIFT + RETURN: 终止运行或调试;

  • CMD + B: 编译;

  • CMD + SHIFT + K: 清理;

引用参考:

课外补充引用:

文章学习来源:

感谢以上作者的文章,今天的学习收获满满!!Thanks and HappyCoding!