A Brief Immersion - 傅若愚## A BRIEF IMMERSION FROM OBJECTIVE-C TO SWIFT ## WHO IS THIS GUY? 傅若愚 (Ruoyu Fu) A Mobile Developer from ThoughtWorks Author of SwiftyJSON ▶ A Geek with Drinking Problems ## WHEN&WHT? ## 让我们从一段 929947/p15_1.jpg) ## DESIGN PATTERNS 对设计模式进行任何具体的解析,从来都不是一件妥当的事情,他们应当自动地浮现,而不应当执着地实现! 但我们在从Objective-C转到Swift的过程中还是可以遵循一定的原则 ## DESIGN PATTERNS Rule No.1:除非不得已,不要使用继承 Rule No.2:除非不得已,不要使用继承 Why?0 码力 | 40 页 | 3.39 MB | 2 年前3
Swift Style - Greg Heobooks. Our overarching goals are conciseness, readability, and simplicity. Writing Objective-C? Check out our Objective-C Style Guide too. ## Table of Contents • Naming Prose Class Prefixes • Spacing0 码力 | 73 页 | 3.38 MB | 2 年前3
Swift 迁移之路 - 唐巧I8e02820bbd3ecb6962ed616f29c6aaf0316f429c • 历史 Objective-C 代码行数:8 万行 • 团队 iOS 成员人数:2 人 - 大家都对使用 Swift 抱有极高的兴趣 ## 决策方案 混编,从此之后不再写 Objective-C! ## 混编进展 • 优势: - 面向协议编程, Lazy Load, type - 升级打包机和开发机 - 当前项目代码量: • Objective-C 25万行 • Swift 5万行 • 2018 年1月开始,新的项目代码用 Objective-C 编写 ## 猿辅导老师版 的 Swift 迁移之路 ## 决策回顾 • 背景 • 时间:2016 年 7 月 - 全新的项目,历史 Objective-C 代码行数:0 行 - 需要依赖 C++ 直播组件 • 在编写,但是感觉并不太特别舒服 ## 小猿搜题 的 Swift 迁移之路 ## 决策回顾 • 背景 • 时间:2016 年 10 月 • Swift 版本:3.0 版本 - 历史 Objective-C 代码行数:8 万行 • 团队 iOS 成员人数:3 人 • 挑战 - 产品迭代需求无法保证团队有充足时间换到 Swift - 兄弟产品混编 Swift 遇到了很多问题 ## 决策方案0 码力 | 43 页 | 1.37 MB | 2 年前3
Kotlin 1.9.10 官方文档 中文版
4 映射来自 C 语言的字符串——教程 1.10.2.4.5 创建使用 C 语言互操作与 libcurl 的应用——教程 1.10.2.4.6 与 Objective-C 互操作性 1.10.2.5 与 Swift/Objective-C 互操作性 1.10.2.5.1 Kotlin/Native 开发 Apple framework——教程 1.10.2.5.2 CocoaPods 集成 项目的静态库或动态库以及 C 语言头文件 - 用于Swift与Objective-C项目的Apple框架 支持直接在 Kotlin/Native 中使用以下现有库的互操作: - 静态或动态C语言库 - C语言、Swift以及Objective-C框架 将编译后的Kotlin代码包含进用C、C++、Swift、Objective-C以及其他语言编写的现有项目中会很容易。直接在Kotlin/Na tive中使用现有原生代码、静态或动态C语言库、Swift/Objective-C框架、图形引擎以及任何其他原生内容也很容易。 Kotlin/Native库有助于在多个项目之间共享Kotlin代码。POSIX、gzip、 OpenGL、 Metal、 Foundation以及许多其他流行库与Apple框架都已预先导入并作为Kotlin/Native库包含在编译器包中。 ## 在多个平台之间共享代码0 码力 | 3753 页 | 29.69 MB | 2 年前3
Kotlin 1.9.10 官方文档 中文版
语言的字符串——教程 1.10.2.4.5 6. 创建使用 C 语言互操作与 libcurl 的应用——教程 1.10.2.4.6 5. 与 Objective-C 互操作性 1.10.2.5 1. 与 Swift/Objective-C 互操作性 1.10.2.5.1 2. Kotlin/Native 开发 Apple framework——教程 1.10.2.5.2 项目的静态库或动态库以及 C 语言头文件 用于Swift 与 Objective-C 项目的 Apple 框架 支持直接在 Kotlin/Native 中使用以下现有库的互操作: 静态或动态 C 语言库 C 语言、 Swift 以及 Objective-C 框架 将编译后的 Kotlin 代码包含进用 C、 C++、 Swift、 Objective-C 以及其他语言编写的现有项目中会很容易。 直接在 Kotlin/Native Kotlin/Native 中使用现有原生代码、 静态或动态 C 语言库、 Swift/Objective-C 框架、 图形引擎以及任何其他原生内容 也很容易。 Kotlin/Native 库有助于在多个项目之间共享 Kotlin 代码。 POSIX、 gzip、 OpenGL、 Metal、 Foundation 以及许多其他 流行库与 Apple 框架都已预先导入并作为 Kotlin/Native0 码力 | - 页 | 22.65 MB | 2 年前3
User’s Guide for Free Pascal, Version 3.2.2be used in interfaces, Objective-C protocols and categories because all methods of an interface/protocol/category must be public. ## Error: An interface, helper or Objective-C protocol or category cannot cannot contain fields Declarations of fields are not allowed in interfaces, helpers and Objective-C protocols and categories. An interface/helper/protocol/category can contain only methods and properties Error: REINTRODUCE cannot be used in objects reintroduce is not supported for objects, Objective-C classes and Objective-C protocols. Error: Each argument must have its own location If locations for arguments0 码力 | 217 页 | 756.57 KB | 2 年前3
Reference guide for Free Pascal, version 3.2.2Identifiers ..... 166 11.8 Selectors ..... 167 11.9 The id type ..... 167 11.10 Enumeration in Objective-C classes ..... 167 12 Expressions ..... 169 12.1 Expression syntax ..... 170 12.2 Function Objective-C-related constructs. There are two kinds of Objective-C language features, discerned by a version number: Objective-C 1.0 and Objective-C 2.0. The Objective-C 1.0 language features can be enabled by adding the compiler. The Objective-C 2.0 language features can be enabled using a similar modewith: {$modeswitch objectivec2} or the command-line option -Mobjectivec2. The Objective-C 2.0 language features0 码力 | 268 页 | 700.37 KB | 2 年前3
Kotlin Language Documentation 1.9.20Write the application code 680 Compile and run the application 680 Interoperability with Swift/Objective-C ..... 681 Usage ..... 681 Mappings ..... 682 Casting between mapped types ..... 688 Subclassing Subclassing ..... 688 C features ..... 689 Export of KDoc comments to generated Objective-C headers ..... 689 .Unsupported ..... 690 Kotlin/Native as an Apple framework – tutorial ..... 690 .Create framework headers ..... 692 .Garbage collection and reference counting ..... 695 Use the code from Objective-C ..... 695 Use the code from Swift ..... 695 Xcode and framework dependencies ..... 696 Next0 码力 | 1299 页 | 32.44 MB | 2 年前3
Kotlin 官方文档中文版 v1.9C 语言的字符串——教程 1.10.2.4.5 创建使用 C 语言互操作与 libcurl 的应用——教程 1.10.2.4.6 与 Objective-C 互操作性 1.10.2.5 与 Swift/Objective-C 互操作性 1.10.2.5.1 Kotlin/Native 开发 Apple framework——教程 1.10.2.5.2 CocoaPods 项目的静态库或动态库以及 C 语言头文件 - 用于Swift 与 Objective-C 项目的 Apple 框架 支持直接在 Kotlin/Native 中使用以下现有库的互操作: • 静态或动态 C 语言库 ## • C 语言、Swift 以及 Objective-C 框架 将编译后的 Kotlin 代码包含进用 C、C++、Swift、Objective-C 以及其他语言编写的现有项目中会很容易。直接在 Kotlin/Native Kotlin/Native 中使用现有原生代码、静态或动态 C 语言库、Swift/Objective-C 框架、图形引擎以及任何其他原生内容也很容易。 Kotlin/Native 库有助于在多个项目之间共享 Kotlin 代码。POSIX、gzip、OpenGL、Metal、Foundation 以及许多其他流行库与 Apple 框架都已预先导入并作为 Kotlin/Native 库包含在编译器包中。0 码力 | 2049 页 | 45.06 MB | 2 年前3
Kotlin 1.2 Language Documentation.. 228 Kotlin/Native interoperability ..... 229 Kotlin/Native interoperability with Swift/Objective-C ..... 236 Kotlin/Native Gradle plugin ..... 240 Coroutines ..... 250 Table of contents . library or dynamic library with C headers for C/C++ projects — an Apple framework for Swift and Objective-C projects On the other hand, Kotlin/Native supports interoperability to use existing libraries dynamic C Libraries — C, Swift, and Objective-C frameworks It is easy to include a compiled Kotlin code into existing projects written in C, C++, Swift, Objective-C, and other languages. It is also easy0 码力 | 333 页 | 2.22 MB | 2 年前3
共 111 条
- 1
- 2
- 3
- 4
- 5
- 6
- 12
相关搜索词
Objective-CSwift傅若愚移动开发SwiftyJSONSwift Style GuideraywenderlichGreg HeoObjective-C Style GuideSwift迁移编译性能C++调用分阶段迁移KotlinKotlin 多平台Kotlin/NativeKotlin/JSKotlin/JVM1.9.10新特性兼容性指南翻译同步Free PascalDelphi编译器兼容性平台Free Pascal compilerPascal languageprocedure declarationassemblerexception handlingK2编译器Kotlin 1.9语言版本移除正则表达式捕获组编译器错误修正Kotlin 1.2数学运算API序列操作集合操作反射改进













