术语表
本页面是 Skip 文档中使用的术语参考,涵盖 Skip 特定概念、iOS 开发和 Android 开发。
Skip 特定术语
Section titled “Skip 特定术语”一种使 iOS 开发者能够使用单一 Swift 代码库和 SwiftUI 构建原生 iOS 和 Android 应用的技术。Skip 可以在 Lite 模式下运行,将 Swift 代码转译为 Kotlin,也可以在 Fuse 模式下运行,使用 Swift Android SDK 为 Android 原生编译 Swift 代码。在这两种情况下,Skip 都利用 SwiftUI 到 Jetpack Compose 的转换过程,为两个平台生成真正的原生应用。
资源:
外部资源:
Skip Lite
Section titled “Skip Lite”Skip 的转译模式,其中 Swift 代码被转换(或转译)为 Kotlin 用于 Android。与 Skip Fuse 相对,后者使用 Swift Android SDK 来使用编译的 Swift 用于 Android 平台。两种模式都生成完全原生的应用。
了解更多: Skip Lite 与 Fuse 文档
Skip Fuse
Section titled “Skip Fuse”Skip 的现代应用开发模式,使用由 Swift Android SDK 构建的原生 Swift。Skip Fuse 对 Swift 语言支持没有任何限制,但会导致更大的应用体积。
相关术语: Skip Lite
了解更多: 原生和转译模式
另见:
Skip Plugin
Section titled “Skip Plugin”一个 Xcode 和 SwiftPM 插件(也称为 skipstone),处理将 iOS 项目转换为 Android 项目。该插件处理资源转换和打包、本地化处理、在 Skip Fuse 模式下构建 Swift 和 Kotlin 之间的桥接,以及在 Skip Lite 模式下执行 Swift 到 Kotlin 的转译。在两种模式下,插件都会在你开发时自动将 SwiftUI 转换为 Jetpack Compose。
相关术语: Xcode、转译器、SwiftPM、Skip Lite、Skip Fuse、Skip Bridge
外部资源:
Skip CLI
Section titled “Skip CLI”用于创建和管理 Skip 项目、处理与 gradle 和 Android 模拟器的交互,以及执行系统检查和项目验证的 skip 命令行工具。Skip CLI 通过 Homebrew 包管理系统安装和管理。
参考: 安装、Skip CLI 参考
SkipUI
Section titled “SkipUI”一个将 SwiftUI 桥接到 Jetpack Compose 的 Skip 框架,允许 SwiftUI 视图在 Android 上使用 Compose 原生渲染。是 Skip 核心框架栈的一部分。
相关术语: SwiftUI、Jetpack Compose
参考: SkipUI
SkipFoundation
Section titled “SkipFoundation”一个提供 Swift Foundation API 的 Android 实现的 Skip 框架,使日期处理、网络和数据结构等通用功能能够在两个平台上工作。
相关术语: Swift Foundation、转译器
参考: SkipFoundation
SkipLib
Section titled “SkipLib”核心 Skip 库,提供将 Swift 代码转译为 Kotlin 的基础转译支持和运行时工具。
参考: SkipLib
SkipBridge
Section titled “SkipBridge”一个促进 Swift 和 Kotlin 代码之间无缝集成的框架,支持 iOS 和 Android 平台特定实现之间的直接调用。桥接由 Skip 插件自动透明地处理,通过 Skip Lite 的源处理和 Skip Fuse 生成的 JNI 接口实现。
相关术语: 平台定制
参考: SkipBridge
SkipModel
Section titled “SkipModel”一个通过桥接到 Compose Runtime 为 Swift 的 Observation 框架提供跨平台支持的 Skip 框架。SkipModel 使响应式状态管理模式能够在 iOS 和 Android 之间无缝工作,允许 @Observable 类在 SwiftUI 和 Jetpack Compose 中触发 UI 更新。
相关术语: Observation、Compose Runtime、SwiftUI、Jetpack Compose
参考: SkipModel
SkipUnit
Section titled “SkipUnit”一个将 Apple 的 XCTest 框架桥接到 Android 的 JUnit 测试框架的 Skip 框架,使开发者能够用 Swift 编写一次测试并在两个平台上自动运行。SkipUnit 对于 Skip 项目中的 parity 测试至关重要。
相关术语: XCTest、JUnit、Parity Testing、单元测试
参考: SkipUnit
Skip Zero
Section titled “Skip Zero”Skip Lite 中的一种模式,使应用的 iOS 端能够剥离所有 Skip 依赖,这意味着你的 iOS 应用对任何 Skip 框架都没有运行时依赖。这实现了最小的应用大小和内存占用,并消除了 iOS 端对 Skip 的任何依赖。
相关术语: Skip Lite
当使用 Skip Zero 和 Skip Lite 时,_可弹出性_指的是从项目中完全移除 Skip 并仍然拥有功能完整的 iOS 和 Kotlin 应用的能力,这些应用可以单独迭代。它通过为使用 Skip 开发的技术提供保险来降低采用 Skip 的风险,即使项目决定未来不再继续使用 Skip,这些技术仍然可行。
相关术语: Skip Lite
一种源到源的编译器,将代码从一种编程语言转换为另一种语言。Skip Lite 的转译器将 Swift 代码转换为 Kotlin,将 SwiftUI 视图转换为 Jetpack Compose 组件。转译是 Skip 插件的功能之一。
外部资源:
在 Skip 项目中为 iOS 和 Android 编写平台特定代码的能力,允许开发者在共享代码不足时利用原生 API 和框架。
相关术语: SkipBridge、条件编译
了解更多: 跨平台主题指南
Dual-Platform Development
Section titled “Dual-Platform Development”从单一代码库同时为 iOS 和 Android 开发的实践,这是 Skip 的核心价值主张。Skip 支持使用单一语言(Swift)和单一 IDE(Xcode)同时迭代开发 iOS 和 Android 应用。
相关术语: 跨平台开发
Parity 测试
Section titled “Parity 测试”一种 Skip 独有的测试方法,相同的测试用例在 iOS(通过 XCTest)和 Android(通过 JUnit)上同时执行,以验证跨平台的相同行为。Parity 测试确保共享业务逻辑在两个平台上产生一致的结果,并有助于在开发早期发现平台特定的 bug。Skip CLI 包含一个 skip test 命令,运行 parity 测试并生成比较报告。
相关术语: 单元测试、XCTest、JUnit、Skip CLI
了解更多: 测试文档
iOS 开发术语
Section titled “iOS 开发术语”Apple 为 macOS 提供的集成开发环境(IDE),用于开发 iOS、macOS、watchOS 和 tvOS 软件。Xcode 是 Skip 开发的主要 IDE,它依赖 Skip 构建插件 在每次构建项目时自动将 iOS 项目转换为 Android 项目。
外部资源:
Apple 开发的现代类型安全编程语言,用于 iOS、macOS 和其他 Apple 平台。Swift 是 Skip 开发中使用的主要语言,用于编写在 iOS 和 Android 上运行的代码。
外部资源:
Swift SDK for Android
Section titled “Swift SDK for Android”官方支持的交叉编译 SDK,可以将 Swift 代码编译到 Android 平台,由 swift.org 分发。Swift Android SDK 由 Skip 团队与 Swift 社区成员共同开发,于 2025 年正式发布。
See Also:
外部资源:
SwiftUI
Section titled “SwiftUI”Apple 的声明式 UI 框架,用于在所有 Apple 平台构建用户界面。在 Skip 中,SwiftUI 代码用于创建在 iOS 上原生渲染为 SwiftUI、在 Android 上渲染为 Jetpack Compose 的 UI。
相关术语: Swift、Jetpack Compose、声明式 UI
外部资源:
Swift Foundation
Section titled “Swift Foundation”Apple 的基础框架,提供基本数据类型、集合和操作系统服务。Skip Foundation 提供了许多 Foundation API 的 Android 实现。
相关术语: Swift、SkipFoundation
外部资源:
Observation
Section titled “Observation”在 iOS 17 和 macOS 14 中引入的 Swift 框架,使用 @Observable 宏提供现代的可观察状态管理方法。SkipModel 将 Observation 桥接到 Android 的 Compose Runtime,使可观察模式在 Skip 应用的两个平台上工作。
相关术语: SwiftUI、SkipModel、Compose Runtime
外部资源:
SwiftPM (Swift Package Manager)
Section titled “SwiftPM (Swift Package Manager)”Apple 官方的 Swift 项目依赖管理器,集成在 Xcode 中。Skip 项目使用 SwiftPM 管理 iOS 和 Android 依赖。
外部资源:
Apple 较旧的命令式 UI 框架,用于 iOS 开发,早于 SwiftUI。Skip 专注于 SwiftUI 而非 UIKit。
外部资源:
Apple 的移动操作系统,驱动 iPhone 和 iPad。Skip 使开发者能够构建也在 Android 上原生运行的 iOS 应用。
外部资源:
Liquid Glass
Section titled “Liquid Glass”Apple 为 iOS 26 发布的下一代用户界面。 Apple 在 iOS 26 中引入的系统级视觉设计语言,代表了一次美学革新,用具有动态半透明、实时光线折射和流体运动的”数字超材料”取代了扁平元素。Skip 应用完全支持 Liquid Glass。
另见:
外部资源:
Apple App Store
Section titled “Apple App Store”Apple 的 iOS 应用数字分发平台。Skip 构建的应用可以与 Google Play Store 分发一起发布到 App Store。
相关术语: Google Play Store
外部资源:
XCTest
Section titled “XCTest”Apple 的测试框架,用于用 Swift 和 Objective-C 编写单元测试和 UI 测试。在 Skip 项目中,XCTest 用例通过 SkipUnit 自动转译或桥接到 JUnit 测试,实现跨两个平台的 parity 测试。
相关术语: 单元测试、JUnit、SkipUnit、Swift
外部资源:
Android 开发术语
Section titled “Android 开发术语”Android
Section titled “Android”Google 的开源移动操作系统,驱动全球数十亿设备。Skip 将 iOS 应用转译为使用 Kotlin 和 Jetpack Compose 在 Android 上原生运行。
相关术语: iOS、Kotlin、Android Studio
外部资源:
Android Studio
Section titled “Android Studio”Android 开发的官方集成开发环境(IDE),基于 IntelliJ IDEA。虽然 Skip 的主要 IDE 是 Xcode,但 Android Studio 可用于高级 Android 定制。
外部资源:
Kotlin
Section titled “Kotlin”一种现代静态类型编程语言,运行在 JVM 上,是 Google 首选的 Android 开发语言。Skip 的转译器将 Swift 代码转换为 Kotlin 用于 Android。
外部资源:
Jetpack Compose
Section titled “Jetpack Compose”Android 的现代声明式 UI 工具包,类似于 SwiftUI。Skip 将 SwiftUI 视图转换为 Jetpack Compose 组件,生成原生 Android UI。
外部资源:
Android Views
Section titled “Android Views”Android 原始的命令式 UI 工具包,类似于 iOS 上的 UIKit。Android Views 有时被称为 XML Views,已被 Jetpack Compose 取代作为构建现代 Android 应用的推荐技术。
相关术语: Jetpack Compose、Java、命令式 UI
Gradle
Section titled “Gradle”用于 Android 项目的构建自动化系统。Skip 生成的 Android 项目使用 Gradle 进行构建、测试和依赖管理。Gradle 可以看作是 Swift Package Manager 的 Java/Kotlin 等效物。
相关术语: Android Studio、构建系统、SwiftPM
外部资源:
Fastlane
Section titled “Fastlane”一套开源工具,旨在自动化为 Apple App Store 和 Google Play Store 构建和分发移动应用的过程。它简化了生成截图、处理代码签名、管理应用元数据和上传构建到应用商店等任务。Skip 在使用 skip create 或 skip init 创建应用项目时会自动生成 fastlane 项目模板。
参考: 部署、Skip CLI 参考
外部资源:
See Also:
Android SDK (Software Development Kit)
Section titled “Android SDK (Software Development Kit)”开发 Android 应用所需的工具、库和 API 集合。Skip 开发者需要安装 Android SDK 来构建应用的 Android 版本。
相关术语: Android Studio、Gradle
外部资源:
JVM (Java Virtual Machine)
Section titled “JVM (Java Virtual Machine)”执行 Java 和 Kotlin 字节码的运行时环境。用 Kotlin 编写的 Android 应用运行在 Android Runtime (ART) 上,它基于 JVM 原理。
相关术语: Kotlin、Java、Android Runtime
外部资源:
JNI (Java Native Interface)
Section titled “JNI (Java Native Interface)”为 Java 以外的编程语言(如 Swift)设计与 Java 库交互的外部函数接口。JNI 是 Skip Fuse 创建到 Android SDK 桥接的必要组成部分,从而能够在 Android 平台上创建有用的应用。
相关术语: Kotlin、Java、Android Runtime
外部资源:
Android Runtime (ART)
Section titled “Android Runtime (ART)”Android 的托管运行时环境,执行应用代码。ART 取代了 Dalvik,并通过预先编译(AOT)提供改进的性能。
外部资源:
Google Play Store
Section titled “Google Play Store”Google 官方的 Android 应用分发平台。Skip 构建的应用可以与 App Store 分发一起发布到 Google Play。
相关术语: Apple App Store、Android
外部资源:
在 Kotlin 成为 Google 首选语言之前广泛使用的 Android 开发编程语言。Kotlin 和 Java 都以 JVM 和 Android Runtime 为目标。Skip 的转译和桥接目标是 Kotlin 而非 Java。
相关术语: Kotlin、JVM、Android Runtime
外部资源:
Robolectric
Section titled “Robolectric”一种 Android 框架单元测试模式,测试在本地 JVM 上执行,而不是连接到 Android 模拟器或设备。使用 Robolectric 运行的测试更轻量、运行更快,但不能覆盖完整的 Android API 表面,也不支持测试用户界面组件。
相关术语: 单元测试、JVM、Android Runtime
外部资源:
广泛用于 Java 和 Kotlin 应用的测试框架。在 Skip 项目中,XCTest 用例通过 SkipUnit 自动转换为 JUnit 测试,使相同的测试能够在 iOS 和 Android 上运行。
相关术语: 单元测试、XCTest、SkipUnit、Kotlin、Robolectric
外部资源:
Compose Runtime
Section titled “Compose Runtime”Jetpack Compose 底层的响应式状态管理系统。Compose Runtime 处理状态观察、重新组合和 UI 更新。SkipModel 将 Swift 的 Observation 框架桥接到 Compose Runtime,使响应式模式能够在两个平台上工作。
相关术语: Jetpack Compose、SkipModel、Observation
外部资源:
ADB (Android Debug Bridge)
Section titled “ADB (Android Debug Bridge)”一个命令行工具,促进开发计算机与 Android 设备或模拟器之间的通信。Skip 开发者使用 ADB 执行查看日志(adb logcat)、安装应用和管理已连接设备等任务。ANDROID_SERIAL 环境变量可以设置为在运行 Skip 测试时 targeting 特定设备。
相关术语: Android SDK、Android Studio、Gradle
外部资源:
APK (Android Package Kit)
Section titled “APK (Android Package Kit)”用于在 Android 设备上分发和安装应用的包文件格式。Skip 的 skip export 命令生成一个包含编译后的 Android 版本应用的 APK 文件。APK 文件类似于 iOS 的 .ipa 文件。
相关术语: Android、Google Play Store、Gradle
外部资源:
通用开发概念
Section titled “通用开发概念”Cross-Platform Development
Section titled “Cross-Platform Development”从单一代码库构建在多个操作系统或平台上运行的应用的实践。Skip 是专门为 iOS 和 Android 设计的跨平台解决方案。
Native Development
Section titled “Native Development”使用为特定操作系统设计的平台特定语言、框架和工具构建应用。Skip 为 iOS 和 Android 生成真正的原生应用。
相关术语: 跨平台开发
Declarative UI
Section titled “Declarative UI”一种编程范式,其中 UI 被描述为状态的函数,专注于 UI 应该是什么样子,而不是如何构建它。SwiftUI 和 Jetpack Compose 都是声明式 UI 框架。
相关术语: SwiftUI、Jetpack Compose、命令式 UI
外部资源:
Imperative UI
Section titled “Imperative UI”一种编程范式,其中 UI 通过明确的逐步指令构建。iOS 上的 UIKit 是命令式 UI 的一个例子。
相关术语: 声明式 UI、UIKit、Android Views
IDE (Integrated Development Environment)
Section titled “IDE (Integrated Development Environment)”提供全面软件开发设施的软件应用程序,通常包括代码编辑器、调试器和构建工具。Xcode 和 Android Studio 都是 IDE。
相关术语: Xcode、Android Studio
Compiler
Section titled “Compiler”将源代码从高级编程语言转换为机器码或中间代码的程序。与转译器不同,转译器转换为另一种高级语言。
Build System
Section titled “Build System”自动化将源代码编译为可执行程序的软件。Gradle 是 Android 的构建系统,而 SwiftPM 和 Xcode 的构建系统处理 iOS 构建。
Package Manager
Section titled “Package Manager”自动化安装、升级和管理软件依赖的工具。SwiftPM 管理 Swift 依赖,而 Gradle 处理 Android 依赖。
Homebrew
Section titled “Homebrew”macOS(和 Linux)的包管理器,用于安装和管理软件包。Skip CLI 及其先决条件通过 macOS 和 Linux 上的 Homebrew 分发。
外部资源:
Conditional Compilation
Section titled “Conditional Compilation”一种预处理功能,允许基于编译时条件包含或排除代码。Skip 开发者使用条件编译为 iOS 和 Android 编写平台特定代码。
相关术语: 平台定制
外部资源:
API (Application Programming Interface)
Section titled “API (Application Programming Interface)”允许不同软件组件通信的一组规则和协议。Skip 桥接 iOS 和 Android API 用于双平台开发。
Framework
Section titled “Framework”提供可由开发者扩展的核心功能可重用软件平台。SwiftUI、Jetpack Compose 和 Skip 自己的框架都是示例。
Library
Section titled “Library”开发者可以用来优化任务的预编写代码集合。与框架不同,库是由你的代码调用的,而不是调用你的代码。
SDK (Software Development Kit)
Section titled “SDK (Software Development Kit)”使特定平台开发成为可能的工具、库、文档和示例集合。Android SDK 是 Skip 开发所必需的。
Runtime
Section titled “Runtime”程序执行的期间,或执行程序的软件环境。Skip 的 Skip Zero 方法意味着不会向 iOS 应用添加额外的运行时。
相关术语: JVM、Android Runtime
Source Code
Section titled “Source Code”用编程语言编写的人类可读程序指令。Skip 的转译器将 Swift 源代码转换为 Kotlin 源代码。
Unit Testing
Section titled “Unit Testing”一种软件测试技术,其中单独的代码单元(如函数、方法或类)被独立测试以验证它们是否按预期运行。单元测试通常是自动化的,在开发期间频繁运行以尽早发现回归。
在 Skip 项目中,单元测试特别有价值,因为用 Swift 编写的共享业务逻辑可以测试一次并在 iOS 和 Android 目标上验证,增加对跨平台正确性的信心。
外部资源:
Integration Testing
Section titled “Integration Testing”一种软件测试实践,其中多个组件或模块一起测试以验证它们的交互是否正常工作。与单元测试不同,单元测试是独立测试组件,而集成测试验证系统的不同部分是否正确集成。在 Skip 项目中,集成测试可以验证 iOS 和 Android 实现是否与平台特定的 API 和服务正确交互。
外部资源:
Continuous Integration
Section titled “Continuous Integration”一种开发实践,代码变更被自动构建和频繁测试,通常在每次提交到版本控制时。Skip 项目通过 GitHub Actions 等标准工具支持 CI,使用 Skip CLI 在自动化工作流中运行 iOS 和 Android 的 parity 测试。
相关术语: 单元测试、Parity Testing、构建系统
外部资源:
Localization
Section titled “Localization”使应用适应支持多种语言和地区的过程。Skip 通过 SwiftUI 的字符串目录系统(.xcstrings 文件)支持本地化,这些文件会自动为 iOS 和 Android 处理。这使单一翻译源能够在两个平台上工作。
了解更多: 本地化文档
外部资源:
Flutter
Section titled “Flutter”Google 开发的开源 UI 框架,用于从单一 Dart 代码库构建跨平台应用。Flutter 使用自定义图形引擎渲染 UI,而非原生平台 UI 框架。
与 Skip 相比,Flutter 有几个显著的缺点:
- 非原生 UI 渲染: Flutter 不使用 SwiftUI 或 Jetpack Compose,这可能导致平台行为、可访问性和视觉保真度的细微差异。
- 额外的运行时和引擎: Flutter 应用附带大型运行时和渲染引擎,与 Skip 的原生输出相比增加了应用大小和内存使用。
- 有限的平台集成: 与平台特定 API 的深度集成通常需要用 Swift/Objective-C 和 Kotlin/Java 编写和维护平台”通道”。
- 语言碎片化: Flutter 引入 Dart 作为第三种语言,而 Skip 允许 iOS 开发者完全留在 Swift 生态系统中。
相比之下,Skip 使用平台标准 UI 框架和工具生成真正的原生应用,没有自定义渲染引擎,也没有强制的额外运行时。
外部资源:
React Native
Section titled “React Native”Meta(Facebook)创建的跨平台移动开发框架,允许开发者使用 JavaScript 或 TypeScript 和基于 React 的 UI 模型构建应用。
与 Skip 相比,React Native 有几个缺点:
- JavaScript 桥接开销: React Native 依赖 JavaScript 和原生代码之间的桥接(或基于 JSI 的运行时),这可能引入性能瓶颈和调试复杂性。
- 非原生开发模型: 虽然 React Native 渲染原生视图,但应用逻辑运行在 JavaScript 运行时中,而不是使用平台原生语言如 Swift 或 Kotlin。
- 工具链碎片化: 开发者必须并行管理 Node.js、npm/yarn、Metro 和原生构建系统,增加了项目复杂性。
- 较弱的平台一致性: 平台特定行为、API 和 UI 惯例通常需要自定义原生模块和重复逻辑。
Skip 通过直接使用 Swift 开发,与 Xcode 紧密集成,生成原生 SwiftUI 和 Jetpack Compose UI,并消除任何 JavaScript 运行时或桥接来避免这些问题。
外部资源:
Xamarin
Section titled “Xamarin”一个跨平台开发框架(现在是 .NET MAUI 的一部分),允许使用 C# 和 .NET 构建 iOS 和 Android 应用。与使用原生 UI 框架(SwiftUI 和 Jetpack Compose)的 Skip 不同,Xamarin 历史上使用原生 UI 绑定(Xamarin.iOS/Android)或跨平台 UI 抽象(Xamarin.Forms,现在是 .NET MAUI)。Xamarin 要求开发者学习 C#,而不是利用现有的 Swift 知识。
对比: Skip、Flutter、React Native
相关术语: 跨平台开发
外部资源:
Cordova
Section titled “Cordova”一个移动应用开发框架(也称为 Apache Cordova 或 PhoneGap),支持使用在 WebView 中运行的 HTML、CSS 和 JavaScript 构建应用。与生成真正原生应用的 Skip 不同,Cordova 应用本质上是包装在原生容器中的 Web 应用,导致非原生 UI、性能限制和对平台能力的受限访问。
外部资源:
Android 和 Apple 平台
Section titled “Android 和 Apple 平台”熟悉 iOS 和其他 Apple 平台的开发者使用许多不同的工具和技术,如 Swift、Xcode 和 SwiftPM。当开始接触 Android 平台时,许多围绕 Android 开发的术语可能一开始看起来很陌生。但通常,iOS 开发的每个组件在 Android 开发世界中都有对应的等效物。
Skip 处理在 Apple 平台和 Android 之间转换这些元素。此表格概述了各种 Apple 特定术语,并将它们映射到等效的 Android 术语,同时标注 Skip 是否在转换过程中提供帮助。
| 平台 | Apple | [Skip] | Android |
|---|---|---|---|
| 语言(现代) | Swift1 | → | Kotlin2 |
| 语言(遗留) | Objective-C3 | Java4 | |
| UI 框架(现代) | SwiftUI5 | → | Jetpack Compose6 |
| UI 框架(遗留) | UIKit7 | Android Views8 | |
| 构建工具 | SwiftPM9 | → | Gradle10 |
| IDE | Xcode11 | Android Studio12 | |
| 调试器 | lldb13 | adb14 | |
| 单元测试 | XCTest15 | → | JUnit16 |
| UI 测试 | XCUITest17 | Espresso18 | |
| 本地测试 | macOS19 | → | JVM w/ Robolectric20 |
| 本地应用运行器 | iOS 模拟器21 | → | Android 模拟器22 |
| 设计语言 | HIG23 | Material Design24 |
Footnotes
Section titled “Footnotes”-
Swift: https://www.swift.org ↗ ↩
-
Kotlin: https://kotlinlang.org ↗ ↩
-
Objective-C: https://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/ObjectiveC/Introduction/introObjectiveC.html ↗ ↩
-
Java: https://www.java.com/en/download/help/whatis_java.html ↗ ↩
-
Jetpack Compose: https://developer.android.com/develop/ui/compose ↗ ↩
-
Android Views: https://developer.android.com/develop/ui/views/layout/declaring-layout ↗ ↩
-
Swift Package Manager (SwiftPM): https://www.swift.org/documentation/package-manager/ ↗ ↩
-
Gradle: https://gradle.org ↗ ↩
-
Android Studio: https://developer.android.com/studio ↗ ↩
-
LLDB 调试器:https://lldb.llvm.org ↗ ↩
-
Android 调试桥(adb):https://developer.android.com/tools/adb ↗ ↩
-
XCTest: https://developer.apple.com/documentation/xctest ↗ ↩
-
JUnit: https://junit.org/junit4/ ↗ ↩
-
用户界面测试(XCUITest):https://developer.apple.com/documentation/xctest/user_interface_tests ↗ ↩
-
Espresso: https://developer.android.com/training/testing/espresso/ ↗ ↩
-
跨平台测试:https://developer.apple.com/documentation/xcode/creating-a-standalone-swift-package-with-xcode#Make-your-Swift-package-cross-platform-compatible ↗ ↩
-
Robolectric: https://robolectric.org ↗ ↩
-
iOS 模拟器:https://developer.apple.com/documentation/xcode/running-your-app-in-simulator-or-on-a-device/ ↗ ↩
-
Android 模拟器:https://developer.android.com/studio/run/emulator ↗ ↩
-
HIG: https://developer.apple.com/design/human-interface-guidelines/ ↗ ↩
-
Material Design: https://m3.material.io/develop/android/jetpack-compose ↗ ↩