首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    SwiftObjective-C混编在有赞移动的实践

    )中导入需要暴露给 Swift 模块的 Objective-C 类,即可在 Swift 中访问相应 Objective-C 的类方法 Objective-C 访问 SwiftObjective-C...类中导入 ProductName-Swift.h,即可访问 Swift 中暴露给 Objective-C 的类方法 2、利用 cocoapods 包管理工具,进行二/三方库混编 Swift 访问 Objective-C...用 Swift Module 系统,需要用到的 Objective-C 类用 import xxx 进行引用,即可在 Swift 中访问相应的 Objective-C 的类方法 Objective-C...访问 SwiftObjective-C 类中导入 ProductName-Swift.h,即可访问 Swift 中暴露给 Objective-C 的类方法 由于我们目前的业务比如商品模块、消息模块...如果想要实现 Swift Objective-C 的互相访问,需要 Objective-C 库,以及对应的 umbrella.h modulemap 支持。

    2.2K20

    【技术创作101训练营】如何从Objective-C转向Swift开发

    如何从Objective-C 转向Swift开发.pptx 如何从Objective-C转向Swift开发 自我介绍 大家好,我是筑梦师Winston,是一名iOS开发者,我已经从事iOS开发将近五年了...Objective-C语言的痛点 这门语言是C的超集,缺点随着时代的变迁技术的迭代,显得越来越臃肿,难学,包括iOS这行,已经越来越少的新人加入这行,反倒是H5Java两行的新人越来越多。...面试官过来又问我:请问你会Swift吗,我说我还没有进行这方面的学习,因为那时候可能才是Swift 23,听说ABI不稳定我就没有急切的进行学习,于是,在这场我觉得我发挥非常稳定的面试中,因为不会Swift...上手快、简单易用、提高市场竞争力这三个鲜明的特点,而且从Objective-C转向Swift,往往要比从别的语言转快的多。...结束语 好的,谢谢大家,这就是我要给大家讲的《如何从Objective-C转向Swift开发》

    1.5K42

    从预编译的角度理解SwiftObjective-C及混编机制

    本文从预编译的基础知识入手,由浅至深的介绍了 Objective-C Swift 的工作机制,并通过这些机制来解释混编项目中使用到的技术各种参数的作用,由此来指导开发者如何进行混编。...如果你想了解 Swift Objective-C 是如何找寻方法声明的,可以从 【Swift 来了】的章节阅读,这会让你从原理上理解混编的核心思路和解决方案。...当 Swift Objective-C 文件同时在一个 App 或者 Unit Test 类型的 Target 中,不同类型文件的 API 寻找机制如下: ?...当 Swift Objective-C 文件在不同 Target 中,例如不同 Framework 中,不同类型文件的 API 寻找机制如下: ?...当 Swift Objective-C 文件同时在一个 Target 中,例如同一 Framework 中,不同类型文件的 API 寻找机制如下: ?

    2.2K31

    Swift之 ? !

    Swift语言使用var定义变量,但别的语言不同,Swift里不会自动给变量赋初始值,也就是说变量不会有默认值,所以要求使用变量之前必须要对其初始化。...经喵神提醒,Optional其实是个enum,里面有NoneSome两种类型。...个人认为苹果是很认真的推出Swift的,从Swift的各种细微的设计也能看的出来。 另外这两个小符号就花费了我不少的时间来理解,可能依然会有错误不妥之处,欢迎大家指正,本文旨在抛砖引玉。...除此之外,Swift还有很多很棒的特性,WWDC 2014 会有四五个Swift语言相关的Video,大家也可以去关注一下。 最后要感谢喵神的纠正了多处有问题的地方,thx, have fun!...REF The Swift Programming Language Understanding Optionals in Swift

    50830

    Objective

    pthread_cond_signal( &_condition); test2线程被激活 输出3 Test1中解锁unlock Test2 执行lock操作中继续执行 输出2 test2中解锁 8-9 10...不仅可以发送信号signal 还可以发送广播 pthread_cond_boradcast 激活所有pthread_cond_wait 注意点 使用condition的时候 不要使用同一个线程调用waitsignal...//在一定时间内是否可以加锁 如果可以 直接加锁返回YES 复制代码 5、NSRecursiveLock NSLock是对mutex PTHREAD_MUTEX_RECURSIVE递归锁的封装 APINSLock...)lockBeforeDate:(NSDate *)limit; //在一定时间内是否可以加锁 如果可以 直接加锁返回YES 复制代码 6、NSCondition NSCondition是对mutexcond...的封装 //用法mutex condtion 一样 可以参考上面代码 - (void)lock;// 加锁 - (void)unlock;//解锁 - (void)wait;//等待 - (BOOL

    64920

    Objective-C中的继承多态

    面向对象编程之所以成为主流的编程思想和他的继承多态是分不开的,只要是面向对象语言都支持继承多态,当然不同的OOP语言之间都有其特点。...在Objective-C中super是指向直接父类的指针,而self是指向本身的指针,self就相当于java中的this指针。...= str1"); }     ​    ​Objective-C中的继承         继承是is-a的关系,比如猫咪是一个动物,那么动物是父类,而猫咪是动物的子类。...子类具有父类的属性 行为,以及自身的属性行为,也就是说“父类更一般,子类更具体”。用一个富二代的类来说明一下类的继承。  ...2014-07-30 08:38:12.958 HelloOC[483:303] 我是富二代BILL`s son,我超喜欢飙车 ​Objective-C中的多态     ​    ​多态简单的说就是对于不同对象响应同一个方法时做出的不同反应

    1.2K80

    Swift入门: 常量变量

    每个有用的程序都需要在某个时刻存储数据,在Swift中有两种方法:变量常量。变量是一个可以随时更改其值的数据存储,而常量是一个可以设置一次且永远不会更改的数据存储。...分离常量变量的优点之一是Xcode会告诉我们是否犯了错误。如果我们说“让这个日期成为一个常数,因为我知道它永远不会改变”,然后10行之后尝试改变它,Xcode将拒绝构建我们的应用程序。...Swift开发人员非常倾向于尽可能使用常量,因为它使您的代码更易于理解。事实上,在最新版本的Swift中,Xcode实际上会告诉你,如果你做了一个变量,那么永远不要改变它!...重要提示:变量常量名称在代码中必须是唯一的。...本文来自Hacking with Swiftswift初学者的入门课程Swift for Complete Beginners 的 Variables and constants

    1.1K10

    KotlinSwift横向对比

    kotlin面世已经有不短的时间了,从安卓宣布kotin为安卓官方开发语言开始,kotlin的热度开始猛涨,作为一个从swift1.0开始写iOS程序的开发者自然会对这两门语言做一些对比,本篇文章主要介绍两个语言的基础语法的对比...变量 Kotlin Swift var a: Int = 1 var a: Int = 1 var b = 2 var b = 2 val a: Int = 1 let a: Int = 1 val...maxOf(a: Int, b: Int): Int { if (a > b) { return a } else { return b } } Swift...enum Direction { NORTH, SOUTH, WEST, EAST } 总结 从上面的一些对比可以看到,kotlin的语法swift的语法大致相同,但也存在一些差异,总的来说这两个语言的设计思想都是差不多的...还有一些更加深的语法本文并没有涉及,感兴趣的同学可以到kotlin官网Swift官网了解更多。

    1.1K20

    swift结构体

    teacher.name = "teacher" print(student.name) print(teacher.name) 结构体是值类型 值类型被赋予给一个变量、常量或被传递给一个函数的时,其值会被拷贝(在 Swift...尽管terter1有着相同的nameage,但其实它们是两个完全不同的实例 var ter1 = ter ter1.name = "good teacher" //通过log证明terter1...但是,依然可以改变stu.namestu1.name,因为stustu1这两个常量的值并未改变。它们并不存储这个Student实例,而是指向Student的实例。...(对于结构体枚举来说,这并不成立。因为它们作为值类型,在被赋予到常量、变量或者传递到函数时,其值总是会被拷贝。) 能够判定两个常量或者变量是否引用同一个类实例,使用===!...== if stu === stu1 { print("same Student instance") } 类结构体对比 Swift 中类结构体有很多共同点 定义属性用于存储值

    18510

    Swift基础 结构

    翻译自:https://docs.swift.org/swift-book/LanguageGuide/ClassesAndStructures.html 结构类是通用的、灵活的结构,成为程序代码的构建块...您定义属性方法,使用定义常量、变量函数的相同语法为结构类添加功能。 与其他编程语言不同,Swift不要求您为自定义结构类创建单独的接口实现文件。...然而,与其他语言相比,Swift结构类的功能要接近得多,本章的大部分内容描述了适用于类或结构类型的实例的功能。因此,使用了更通用的术语实例。 比较结构Swift中的结构类有很多共同点。...事实上,Swift中的所有基本类型——整数、浮点数、布尔值、字符串、数组字典——都是值类型,并作为幕后结构实现。 所有结构枚举都是Swift中的值类型。...指针 如果您有使用C、C++或Objective-C的经验,您可能知道这些语言使用指针来引用内存中的地址。

    9500
    领券