File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -47,6 +47,23 @@ iOS App Intents 是苹果生态中实现「功能原子化」的核心工具,
4747
4848![ Instrument] ( https://private-user-images.githubusercontent.com/20059859/406284776-42907aa6-5814-49c6-ac06-402502bfe4a6.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk2Mjc3NTYsIm5iZiI6MTczOTYyNzQ1NiwicGF0aCI6Ii8yMDA1OTg1OS80MDYyODQ3NzYtNDI5MDdhYTYtNTgxNC00OWM2LWFjMDYtNDAyNTAyYmZlNGE2LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTUlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjE1VDEzNTA1NlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTk1MDViZDg1N2NjNmM5YzZjZmExYTk4ZDU0YmY3NjdjNDNiYWM3MTcxNWU1OTliMDZmMDRmYWJhZjA5Zjg3YmUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.T6ExkgPmnmE25MLVKIMRcekXeQgYcJu1QjGWgChesrQ )
4949
50+ ### 🐢 [ SweetPad: Develop Swift/iOS projects using VSCode] ( https://github.com/sweetpad-dev/sweetpad )
51+
52+ [ @阿权] ( https://github.com/bqlin ) :之前你可能听说过 VSCode 插件 [ Swift Programming Language] ( https://marketplace.visualstudio.com/items?itemName=swiftlang.swift-vscode ) ,官方大力宣传可以 Swift 可以跨平台开发了,但也就仅限于开发 Swift 了(语法高亮、代码补全、错误检查、Swift Package Only),还是不能取代 Xcode 进行 iOS 开发。
53+
54+ [ SweetPad] ( https://github.com/sweetpad-dev/sweetpad ) 或许能做到这一点,其也是一款 VSCode 插件,旨在使用 VSCode 开发 Swift/iOS 项目,成为 Xcode 以外的替代 IDE 方案。[ SweetPad] ( https://github.com/sweetpad-dev/sweetpad ) 通过集成各种开源工具(swift-format、swiftlint、xcodebuild、xcrun、xcode-build-server、sourcekit-lsp 等)直接在 Xcode 生成(当然也可以用 [ XcodeGen] ( https://github.com/yonaskolb/XcodeGen ) 或 [ Tuist] ( https://tuist.io/ ) 生成)的项目文件进行开发、运行和调试。换句话说,[ SweetPad] ( https://github.com/sweetpad-dev/sweetpad ) 通过各种命令行工具实现并对齐 Xcode 的各项能力。
55+
56+ [ SweetPad] ( https://github.com/sweetpad-dev/sweetpad ) 目前实现能力有:
57+
58+ - Xcode 项目文件编辑:通过 [ Tuist] ( https://tuist.io/ ) 工具实现。
59+ - 自动补全(SourceKit-LSP)、单元测试:通过 [ Swift] ( https://marketplace.visualstudio.com/items?itemName=sswg.swift-lang ) 插件 + [ xcode-build-server] ( https://github.com/SolaWing/xcode-build-server ) 工具实现。
60+ - 调试:通过 [ CodeLLDB] ( https://marketplace.visualstudio.com/items?itemName=vadimcn.vscode-lldb ) 实现。
61+ - 运行到模拟器和真机:通过 ` xcrun simctl ` 和 ` xcrun devicectl ` 命令行实现。
62+ - 格式化:通过 [ swift-format] ( https://github.com/apple/swift-format ) 实现。
63+
64+ [ SweetPad] ( https://github.com/sweetpad-dev/sweetpad ) 还没使用最近开源的 [ swift-build] ( https://github.com/swiftlang/swift-build ) ,还是使用 ` xcodebuild ` + ` sourcekit-lsp ` 的方案,所以还是得安装 Xcode 环境。另外,诸如 SwiftUI Preview、XIB/Stroyboard 可视化、签名证书管理等也尚未支持。
65+
66+ 之前 [ #224 ] ( https://github.com/SwiftOldDriver/iOS-Weekly/blob/master/Reports/2023/%23244-2023.05.15.md ) 周报有提到 [ 用 VSCode 基于 Bazel 打造 Apple 生态开发环境] ( https://mp.weixin.qq.com/s/7UJdgJIYWkhzSjtKsHqC2g ) 则是实现一套 Bis + Bazel 编译系统的 VSCode 开发环境,感兴趣的同学可以对比着阅读。
5067
5168## Tips
5269
You can’t perform that action at this time.
0 commit comments