首先打开 Xcode 新建一个 Cocoa Touch 项目,interface 选择 Storyboard。
越来越多同学打算开始用 Swift 来开发了,可很多人以前都没接触过 Swift。这篇和我以前文章不同的是,本篇只是面向 Swift 零基础的同学,内容主要是一些直接可用的小例子,例子可以直接在工程中用或自己调试着看。
在上一篇关于 TCA 的文章中,我们通过总览的方式看到了 TCA 中一个 Feature 的运作方式,并尝试实现了一个最小的 Feature 和它的测试。在这篇文章中,我们会继续深入,看看 TCA 中对 Binding 的处理,以及使用 Environment 来把依赖从 reducer 中解耦的方法。
请概括一下你在构建iOS应用时的测试过程。iOS应用如何实现对其他语言、日期格式以及货币单位的支持?
常见问题 你昨天/这周学习了什么? 你为什么热衷于软件开发? 你对哪一种控制系统比较熟悉? 是否参与过GitHub项目? 是否参与过GitHub或其他同类型网站的iOS开源项目? 请描述一下你的iOS应用开发流程。 是否熟知CocoaPods?它是什么?如何运行的? 请概括一下你对软件授权的理解,及其对软件开发的影响。 请概括一下你在构建iOS应用时的测试过程。iOS应用如何实现对其他语言、日期格式以及货币单位的支持? 请描述一下Instruments及其作用。 关于iOS技术 请解释一下Handoff是什
Swift 想必大家都已经非常熟悉了,它是苹果公司推出的一门开源语言。Swift 与 Kotlin 几乎是同一段时间开始研发,也是前后呈现在公众面前。二者语法设计上有诸多相似之处,它们的关系让我甚至想到了当年的 Java 和 C#。更神奇的是,Kotlin-Native 居然支持了与 Objective-C 的互调用,进而也就相当于某种意义上支持了与 Swift 的互调用,这下它们就更亲密了。
Xcode 11 + macOS 10.15 可以实时预览 SwiftUI 实现的界面,这个预览可以帮助我们快速查看代码对应的效果而不需要运行。
作为一个刚入门ios开发的人来说,对于ios开发,对于xcode一切都是那么的陌生,那么我们如何开始我们的第一步呢?首先对开发的ide是必须要了解的,其实要对开发的语言要慢慢熟悉起来,今天我们先来熟悉
SE-0296提案终于为开发者带来了期待已久的 async/await,语法基本上和javascript中的很像。
SE-0287提案改进了Swift使用隐式成员表达式的能力。Swift 5.4之后不但可以使用单个 使用,而且可以链起来使用。
梁启健,携程金融支付中心开发工程师,主要负责支付iOS端的开发与优化工作,喜欢研究大前端和跨平台技术。
相信大家都对刚发布的 SwiftUI 印象深刻,在看示例代码的时候发现 View 前面有一个关键字 some。我开始以为是 SwiftUI 自带的属性,后来经网友提醒发现是 Swift 5.1 的新特性。
相比于上一篇helloWorld,这一篇内容增加了顶点数据和Metal的内容。
关于iOS开发面试,不管对于招聘和应聘来说,面试都是很重要的一个环节,特别对于开发者来说,面试中的技术问题环节不仅是企业对应聘者技能和积累的考察,也是一个开发者自我检验的好机会。
List 可能是 SwiftUI 附带的内置视图中最常用的一种,它使我们能够在任何 Apple 平台上呈现“类似于表格视图”的用户界面。今年,List 获得了许多非常重要的升级,使其更加灵活和易于定制。让我们看看都有哪些新功能。
翻译自:https://docs.swift.org/swift-book/LanguageGuide/Generics.html
本文来自Swift中文开发组,感谢翻译者的分享。 本文将分几部分对Swift对iOS的语法做讲解。本文为第一节,主要讲解基础语法。 常量和变量 常量和变量把一个名字(比如maximumNumberOfLoginAttempts或者welcomeMessage)和一个指定类型的值(比如数字10或者字符串”Hello”)关联起来。常量的值一旦设定就不能改变,而变量的值可以随意更改。 声明常量和变量 常量和变量必须在使用前声明,用let来声明常量,用var来声明变量。下面的例子展示了如何用常量和变量来记录用户尝试
Swift 5.4 带来了一些巨大的编译改进,包括表达式中具有错误的更好的代码完成和增量编译的大幅度提高。但是,它也增加了一些重要的新功能和改进,因此让我们在这里进行深入研究...
大多数对象在我们的APP中使用之前,都需要某种形式的设置。无论是我们要根据APP的品牌设置样式的视图(View),还是要配置的视图控制器(View Controller),亦或是在测试中创建存根的值时,我们经常发现需要将设置代码放在某个地方。
今天的博客算是比较基础的,还是那句话,基础这东西在什么时候都是最重要的。说到函数,只要是写过程序就肯定知道函数是怎么回事,今天就来讨论一下Swift中的函数的特性以及Swift中的闭包。今天的一些小实例中回类比一下Objective-C中的函数的写法等等。Swift中的函数还是有许多好用的特性的,比如输入参数,使用元组返回多个值, 定义形参名,设定默认参数以及可变参数等等一些好用的特性。而在Swift中的闭包就是Objective-C中的Block, 除了语法不通外,两者的用法是一样的。废话少说,开始今天的
表相关与的TabBar SWTableViewCell - 国内开源作者,带很多手势的表单元格。 MCSwipeTableViewCell - 带很多手势的表单元格。 TMQuiltView - 瀑布流。 XRWaterfallLayout - 超简单的瀑布流实现,实现说明。 WaterfallFlowDemo - 一个简单的UICollectionView瀑布流布局演示demo。 XLForm - 很多表格类的表,写法更高冷一点,推荐使用。 Eureka.swift - Eur
翻译自:https://docs.swift.org/swift-book/LanguageGuide/Functions.html
打算用几篇文章介绍一下 TCA (The Composable Architecture[1]),这是一种看起来非常契合 SwiftUI 的架构方式。
iOS 是由苹果公司开发的移动操作系统 。苹果公司最早于 2007 年 1 月 9 日的 Macworld 大会上公布这个系统(最初叫 iPhone runs OS X)。该系统最初是设计给 iPhone 使用的(所以后来曾命名为 iPhone OS),之后陆续套用到 iPod touch、iPad 以及 Apple TV 等产品上(所以在 WWDC 2010 上最终宣布更名为 iOS)。
写过swift的同学应该都知道defer这个关键字,可以让我们在函数return之前执行指定的代码,这对于有多个提前return而忘记释放资源的函数来说,简直不要太方便了,然而对于swift的前辈Objective-C或C++来说,苹果并没有帮我们定义,因此本文总结一下如何在C++和Objective-C中实现defer。
闭包写在一对大括号中,用 "in"关键字分隔,"in"后的语句是闭包的主体."in"之前的参数和返回值类型是语句组中所使用的参数和返回值格式的一种指示,并不必在语句组中进行逻辑运算和返回.闭包的表达式的运算结果是一种函数类型,可以作为表达式,函数参数和函数返回值
全局函数 Global functions :无需特定类型范围就可以从任何地方访问的函数是一个古老的概念,在 C 和 Objective-C 等语言中很流行,但是在 Swift 中不建议使用,因为我们希望对它们进行很好的类型化和范围划分("swifty")。
一直以来,Native App因为审核的原因,新版本不能很及时地上线。尤其是iOS,碰到点审核问题,有时候一连几天都不能上架,严重影响业务和产品的体验。
SwiftUI与苹果之前的UI框架的区别不仅仅在于如何定义视图和其他UI组件,还在于如何在整个使用它的应用程序中管理视图层级的状态。
注: 本文编写时,使用 Xcode 12.3、Swift 5.3.2 来构建 App
闭包是可以在你的代码中被传递和引用的功能性独立模块。Swift 中的闭包和 C 以及 Objective-C 中的 blocks 很像,还有其他语言中的匿名函数也类似。
大家一直都在寻求能够动态更新业务的方法,关于这方面的框架也是层出不穷。自从 Facebook 推出 React Native 以后,便以其良好的兼容性和性能优势占据了这方面的领先地位,携程也在此基础上开源了CRN 框架。
从今天就开始陆陆续续的发布一些有关Swift语言的东西,虽然目前在公司项目开发中Objective-C还是iOS开发的主力军,但是在不久的将来Swift将会成为iOS开发中的新生宠儿。所以在在Xcode6.0+版本的Playground上玩一玩Swift还是很有必要的。在接下来发表的博客中主要是总结一下自己在翻译《Swift编程入门经典》(清华大学出版社出版中)这本书所学到的东西。在翻译这本书的时候,自己是一名译者,但更是一名读者,拜读原著之后感觉学了不少新的东西,让自己的思维更为开阔。 学习一门新
闭包是自包含的函数代码块,可以在代码中被传递和使用。 Swift 中的闭包与 C 和 Objective-C 中的代码块(blocks)以及其他一些编程语言中的 lambdas 函数比较相似。
Swift 中的泛型语法是为了类型通用性设计,这种通用性允许在函数输入和输出时,使用复杂的类型集合来表达,前提是类型必须前后一致。例如下面这个例子是从两个序列构建一个数组:
本文收录总结了常见的 Swift 和 Objective-C 的面试题,希望对大家有所帮助。
分类 C/C++语言 swift 说明 常量 Const int a = 1234; Let a = 1234 1. c/c++有明确的类型,而swift都是隐式类型2. c/c++以;为隔符,而 swift是以回车换行为分隔符。 变量 Int a = 1234; Var a = 1234 变量swift也是不需要指定类型的。 If语句 If(a>5){...}else{...} if score > 50 {teamScore += 3} else {teamScore += 15. } 在 c/c
在本章中,您将了解到 CPU 使用的寄存器,并研究和修改传入函数的参数。您还将了解常见的苹果计算机架构,以及如何在函数中使用它们的寄存器。这就是所谓的架构调用约定。
Swift 5.1 内置于 Xcode 11,新增了很多新特性,比较重要的有以下几个。
前言 看完本系列前面几篇之后,估计大家也还是有点懵逼,本系列前八篇也都是参考RxSwift官方文档和一些概念做的解读。上几篇文章概念性的东西有点多,一时也是很难全部记住,大家脑子里面知道有这么个概念就行,用的时候,再来查阅一番,慢慢就掌握了。 本篇主要来深入了解一些RxSwift实战中用到的一些重要知识点,这里面有很多自己的理解,所以不免会有一些错误的地方,还请大家多多交流,如有发现错误的地方,欢迎评论。 概念 Rx系列的核心就是Observable Sequence这个相信大家心中已经有所了解了,这里不再
前面说过,React Native作为一个全新的跨平台开发框架,好多东西还不是很成熟,很多原生的控件还不是很完善,于是好多爱好者便自己封装相关的组件,可以使用oc来封装,也可以使用Swift来封装。关于封装的原理,大家可以访问我的书的《React Native移动开发实战》。 基础 学习本章知识,需要读者具备一定的OC和Swift语言基础,读者可以从下面的链接中获取学习资料。 Apple 官方引导 Xcode入门 Swift英文文档 UIKit UIKit框架是iPhone应用程序开发中最基本的框架
总结下 swift下的基础语法,里面涉及到:常量&变量、Swift中的数据类型、逻辑分支、循环、字符串相关、数组和字典、方法的书写调用等内容,考虑到阅读体验分多篇来展示,希望对大家学习swift有所帮助,同时也是对自己的一个总结。
VIPER架构模式是MVC或MVVM的另一种选择。虽然SwiftUI和Combine框架创建了一个强大的组合,可以快速构建复杂的ui和在应用程序中移动数据,但它们也面临着各自的挑战和对架构的看法。
Swift 5.7 内置于 Xcode 14,重点增加了如下几个与实际开发相关的新特性。
原文链接:Using errors as control flow in Swift
近日,苹果公司在一次内部会议上宣布了终止其雄心勃勃的造车项目“泰坦”,标志着这个长达十年、耗资巨大的秘密项目的正式结束。随着项目的终止,部分员工将被转移到 AI 研发岗位,以加速苹果在该领域的发展。有消息称,苹果计划在 Siri、Spotlight 和 Xcode 等产品中加入更多 AI 功能,希望这次人员调整能够帮助苹果缩小与其他 AI 行业领导者间的差距。
函数是有特定功能的代码段,函数会有一个特定的名称调用时来使用。Swift提供了十分灵活的方式来创建与调用函数。事实上在Swift,每个函数都是一种类型,这种类型由参数和返回值来决定。Swift和Objective-C的一大区别就在于Swift中的函数可以进行嵌套。
泛型代码让你能根据你所定义的要求写出可以用于任何类型的灵活的、可复用的函数。你可以编写出可复用、意图表达清晰、抽象的代码。
disclaimer: 目前这只是一个想法,并没有落地的实现。我打算将这一思想在 quenya client 中实现。
领取专属 10元无门槛券
手把手带您无忧上云