• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

swift跟oc的区别

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

1.Swift可以面向协议编程、函数式编程、面向对象编程。

2.Swift是类型安全的,代码中使用字符串String,就不能传递一个整型Int给它。编译时会做类型检查,不匹配的类型会错误标记出来。

3.典型的struct enum tuple都是值类型,Int,Double,Float,String,Array,Dictionary,Set都是用结构体实现的,也是值类型。

4.Swift的枚举可以使用整型 浮点型 字符串等,还有拥有属性和方法,甚至支持泛型,协议,扩展等

5.Swift支持泛型,支持泛型类型约束。

6.Swift对协议支持更丰富,可以实现面向协议编程。

7.Swift可以直接定义函数类型变量,可以作为其他函数参数传递,可以作为函数返回值返回。(这一点跟js的闭包很像)

 

1.Objective-C以面向对象编程为主,当然你可以引入类似ReactiveCocoa的类库来进行函数式编程。

2.OC则不是,你声明一个NSString变量,仍然可以传递一个NSNumber给他,编译期间只会警告,不会报错。

3.OC里面NSNumber,NSString以及集合类对象都是指针类型。

4.OC的枚举只是个标记值。

5.OC在swift2之后加入Generics泛型支持,不过泛型约束停留在编译器警告阶段。

6.OC的协议缺乏强约束,提供optional特性往往成为很多问题的来源。

7.OC需要用selector或block才能模拟Swift类似效果。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Swift 性能探索和优化分析发布时间:2022-07-13
下一篇:
swift教程中文手册发布时间:2022-07-13
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap