V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
LINAICAI
V2EX  ›  iOS

一个 Swift3.0 练手项目上线了,说说感受

  •  
  •   LINAICAI · 2017-07-01 14:28:58 +08:00 · 3204 次点击
    这是一个创建于 2708 天前的主题,其中的信息可能已经有所发展或是发生改变。

    项目名称:遇见壁纸(内有福利)

    不知羞耻的加上下载地址: https://itunes.apple.com/cn/app/%E9%81%87%E8%A7%81%E5%A3%81%E7%BA%B8/id1222032892?mt=8

    说说感受: Swift 写项目真的不要太简单,个人感觉协议、扩展、枚举值绑定都是非常非常棒的编码体验,闭包就不说了,和 block 差别不是很大,由于项目简单,也没机会使用范型和运算符重载等深层技术,另外 Swift 项目打包出来的 ipa 会异常的大,但是上传 App Store 之后看到的大小是和 OC 一样正常的,所以不必担心,另外混编非常简单,如果你使用的是 cocoapods 来管理依赖,Swift 项目中可以方便的集成原来的用 cocoapods 管理 OC 的库,唯一不足的在于两点:

    1、json 解析和模型的转换有点费劲,可能和我不习惯有关。

    2、Xcode 的语法提示崩坏,主要指的是在闭包中的提示简直过分,但是,我发现闭包中的语法提示出现问题是可以避免的,如果是初始化对象,使用“对象.init()”这种初始化方法就没有问题了,而如果你使用带参的初始化构造器,接下来的属性设置等语法提示全部不起作用,这算是我总结出的小技巧。

    16 条回复    2017-07-08 14:36:50 +08:00
    wending
        1
    wending  
       2017-07-01 16:50:20 +08:00 via iPhone
    谢谢分享
    qfdk
        2
    qfdk  
       2017-07-02 04:29:56 +08:00
    ... 这样的软件就不用加广告了吧.. 要是加广告 麻烦诚意一点儿.
    kojirou
        3
    kojirou  
       2017-07-02 15:37:07 +08:00
    1.swift4 新加了 decodable,应该能省很多麻烦
    LINAICAI
        4
    LINAICAI  
    OP
       2017-07-02 16:15:11 +08:00
    @qfdk 嗯,准备去掉全屏广告,其实横幅广告并不影响用户体验的,有些同类 app 的广告很令人反感。
    LINAICAI
        5
    LINAICAI  
    OP
       2017-07-02 16:16:29 +08:00
    @kojirou 不是很清楚 swift4,大概知道是字符串操作改变了一些,个人觉得作为一个大版本的 swift4 真缺少诚意,你认为呢。
    jayyjh
        6
    jayyjh  
       2017-07-03 15:34:12 +08:00
    会开源吗 想学习一发
    LINAICAI
        7
    LINAICAI  
    OP
       2017-07-03 17:48:04 +08:00
    @jayyjh 暂时不会开源,主要是因为代码没整理好,给大家看会误导新手,其次功能太少了,没什么价值,后面多迭代几个版本后再考虑。
    rupert
        8
    rupert  
       2017-07-04 03:03:50 +08:00
    现在还用 swift3, 让人想起 python 2 和 3
    LINAICAI
        9
    LINAICAI  
    OP
       2017-07-04 11:54:23 +08:00
    @rupert 目前最新版 xcode 不是 swift3 的吗,我能用 swift4 ?
    gongzhang
        10
    gongzhang  
       2017-07-06 09:56:35 +08:00
    swift 处理 json 可以试试 SwiftyJSON ;
    swift 4 有 codable 接口,自动进行 json 序列化和反序列化
    新版 xcode beta 的语法提示好一些了,不过还是比不了 AppCode
    gongzhang
        11
    gongzhang  
       2017-07-06 09:56:49 +08:00
    swift 处理 json 可以试试 SwiftyJSON ;
    swift 4 有 codable 接口,自动进行 json 序列化和反序列化;
    新版 xcode beta 的语法提示好一些了,不过还是比不了 AppCode
    LINAICAI
        12
    LINAICAI  
    OP
       2017-07-06 12:27:39 +08:00
    @gongzhang 确实是的,xcode9 beta 版可以尝鲜
    webfrogs
        13
    webfrogs  
       2017-07-06 17:53:59 +08:00
    写惯了就不想回去写 oc 了
    LINAICAI
        14
    LINAICAI  
    OP
       2017-07-06 18:45:36 +08:00
    @webfrogs 嗯嗯
    sobigfish
        15
    sobigfish  
       2017-07-08 14:04:08 +08:00
    @LINAICAI #9 beta 里有 swift4,但 xcode beta 编译的 app 不能提交到 iTunes connect
    LINAICAI
        16
    LINAICAI  
    OP
       2017-07-08 14:36:50 +08:00
    @sobigfish 没错,所以项目不可能用 swift4 啊。
    至少等正式版出来
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2557 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 01:29 · PVG 09:29 · LAX 17:29 · JFK 20:29
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.