您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码:  验证码,看不清楚?请点击刷新验证码 必填



  求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Modeler   Code  
会员   
 
   
 
 
     
   
 订阅
  捐助
盘点开发者最喜爱的Swift技巧
 
作者 Realm 来源:Realm  火龙果软件  发布于 2014-12-30
  1766  次浏览      36
 

Swift发布才半年左右,却已深得众多开发者的青睐,也有了许多学习资源、项目和开发工具。在本文中,来自objc.io、LinkedIn等各个公司的软件工程师及资深开发者总结了自己在接触Swift过程中最喜爱的贴士与技巧。

屈指算来,Swift语言才发布半年左右,却已深得众多开发者的青睐,也有了许许多多的学习资源、项目和工具。在本文中,来自objc.io、LinkedIn等各个公司的软件工程师及资深开发者总结了自己在接触Swift过程中最喜爱的贴士与技巧,有些技巧即使是很早就入坑Swift的开发者都不知道,不妨一起来了解一下吧。

Natasha Murashev——Capital One iOS工程师、Natasha The Robot博主

当我在构建iOS应用时,Swift能够允许更多的函数式编程方法,所以,为了能在改善Swift代码时做出更好的决策,我一直在学习函数式编程。迄今为止,我最喜欢的函数方面的Swift资源有:

  • 功能型函数——能轻松更改函数,让代码更独立、可测试。
  • 包装类型——我喜欢用可读且安全的类型别名来编写代码。
  • 类型设计——在设计程序时大幅使用正确的类型,有利于编译器调试。
  • Swift中柯里化函数的运用——在Haskell中,某种类型的函数指针只能指向特定参数类型和数目以及返回值类型的函数,而Swift则允许“currying”或部分应用函数,从而实现代码块可重复使用。
  • Swift奇妙的差错处理——与Objective-C相比,我特别喜欢这种简单、可读性强而又安全的错误处理方式。
  • 面向对象编程直达车——它为在代码中进行错误处理提供了一种最快捷的方式,于程序猿而言,最幸福之事莫过于此。
  • Swift函数式编程——这是一本关于Swift函数比较深度的书籍,我每次重新读过时都会发现不一样的点,非常适合想要深入研究Swift函数以及如何将其运用到iOS代码中的开发者们阅读。

Chris Eidhof——objc.io创始人、《Swift函数式编程》作者

快速排序(Quicksort)——Swift中的快速排序实现可以说是前无古人后无来者,大多数Quicksort实现都需使用固定的内存,而Swift则能以最简洁清晰的程序实现快排:

Austin Zheng——LinkedIn高级软件工程师

我认为,精妙的Swift技巧应当如此:开发者可以通过创建一个已定义标准类的闭包来为匿名类实例设置委托,而闭包则将返回该类的一个新实例,并运行。示例代码如下:

Clay Smith——PagerDuty高级软件工程师

下面是我在处理所有Xcode问题(尤其是sourcekit)时所使用的最基本的Bash alias(命令别名),用来删除Xcode中的Derived Data:

Michael Helmbrecht——Motiv UX设计师兼iOS开发者

于我而言,最喜欢的一点应该是Swift能在String类型和NSString类型中自动转换,当无法打印String时,通过直接调用NSString的-description方法即可实现。

David Kobilnyk——ShopRunner软件工程师

作为一门编程语言,我觉得Swift还不够优雅,而我也并没有发现什么太特别的技巧,只是很喜欢原始类型、枚举一起使用,就像这样:

Alexis Gallagher——高级iOS开发者

要说我最喜欢的Swift技巧,应该有两个,一个是在REPL中,handy函数可直接用于获取表达式静态类型,而想要获取任意实例值的类型名称则可直接调用_stdlib_getDemangledTypeName。

JP Simard——Realm iOS工程师

开发者可以直接使用nm工具通过libswiftCore.dylib来获取所有私有的Swift标准库函数,比如_stdlib_getTypeName()、_stdlib_demangleName()和_stdlib_conformsToProtocol():

Warren Moore——《Metal By Example》作者

当结构体中的所有成员属于同一类型时(比如浮点型),通过Swift,开发者可以将其中的同类数组作为一个指针指向结构体中的成员类型。这一方法,让我能够非常简便地去创建顶点数据的Metal缓冲区,而无需其他多余的复杂操作。

Mustafa Furniturewala——Coursera软件工程师

我最喜欢的Swift资源是Swifter,对我来说,它是编程必备的参考指南,而最喜欢的技巧则是开发者可以使用任意的Swift函数来实现Objective-C风格的动态分配。

   
1766 次浏览       36
 
相关文章

手机软件测试用例设计实践
手机客户端UI测试分析
iPhone消息推送机制实现与探讨
Android手机开发(一)
 
相关文档

Android_UI官方设计教程
手机开发平台介绍
android拍照及上传功能
Android讲义智能手机开发
相关课程

Android高级移动应用程序
Android系统开发
Android应用开发
手机软件测试
最新活动计划
嵌入式软件架构设计 12-11[北京]
LLM大模型与智能体开发实战 12-18[北京]
嵌入式软件测试 12-25[北京]
AI原生应用的微服务架构 1-9[北京]
AI大模型编写高质量代码 1-14[北京]
需求分析与管理 1-22[北京]

android人机界面指南
Android手机开发(一)
Android手机开发(二)
Android手机开发(三)
Android手机开发(四)
iPhone消息推送机制实现探讨
手机软件测试用例设计实践
手机客户端UI测试分析
手机软件自动化测试研究报告
更多...   

Android高级移动应用程序
Android应用开发
Android系统开发
手机软件测试
嵌入式软件测试
Android软、硬、云整合


领先IT公司 android开发平台最佳实践
北京 Android开发技术进阶
某新能源领域企业 Android开发技术
某航天公司 Android、IOS应用软件开发
阿尔卡特 Linux内核驱动
艾默生 嵌入式软件架构设计
西门子 嵌入式架构设计
更多...