V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
iOS 开发实用技术导航
NSHipster 中文版
http://nshipster.cn/
cocos2d 开源 2D 游戏引擎
http://www.cocos2d-iphone.org/
CocoaPods
http://cocoapods.org/
Google Analytics for Mobile 统计解决方案
http://code.google.com/mobile/analytics/
WWDC
https://developer.apple.com/wwdc/
Design Guides and Resources
https://developer.apple.com/design/
Transcripts of WWDC sessions
http://asciiwwdc.com
Cocoa with Love
http://cocoawithlove.com/
Cocoa Dev Central
http://cocoadevcentral.com/
NSHipster
http://nshipster.com/
Style Guides
Google Objective-C Style Guide
NYTimes Objective-C Style Guide
Useful Tools and Services
Charles Web Debugging Proxy
Smore
ravenZ
V2EX  ›  iDev

Swift 官方的文档马上看完了.有什么开源框架 orApp 适合去研究巩固下这方面知识的吗

  •  
  •   ravenZ · 2022-08-03 10:39:55 +08:00 · 9119 次点击
    这是一个创建于 847 天前的主题,其中的信息可能已经有所发展或是发生改变。

    因为目前项目还是老一套的 OC. 准备用 swift 重写.. 现在学完基础语法了,感觉和 OC 差别挺大的..(当然用 OC 的方式写 Swift 差别不大..

    现在就是想着,尽量用 Swift 的精髓去重写项目. 目前官方文档马上看完了..

    想着马上看 RxSwift,但是感觉是不是有点深了.体验会不好.

    所以来问问大家..有什么项目可以学习的吗

    16 条回复    2022-08-05 14:26:24 +08:00
    wobuhuicode
        1
    wobuhuicode  
       2022-08-03 10:43:11 +08:00   ❤️ 1
    不是应该直接上 Combine+SwiftUI 就好了么。还要 RxSwift 干嘛
    kera0a
        2
    kera0a  
       2022-08-03 10:53:21 +08:00   ❤️ 1
    不深,可以直接学 RxSwift ,准确的说是学响应式编程思维,挺有意思的,并不需要有什么学习前置条件。
    重点理解流的各种操作符,每个都实际写一下理解含义。
    之后这些操作符对流的组合会让你打开新世界,编程还能这样编?并且这种编程思维换个框架甚至语言依然通用
    code4you
        3
    code4you  
       2022-08-03 10:59:09 +08:00
    自己想做啥 就开始做 比如 记事本 记账 😊

    遇到问题 在 https://stackoverflow.com/搜索

    我自学 遇到的大部分问题(90%) 都在 stackoverflow 找到的答案
    code4you
        4
    code4you  
       2022-08-03 11:02:44 +08:00
    楼主可以看看这个~~~ 忽略我楼上的答复

    khoren93/SwiftHub: GitHub iOS client in RxSwift and MVVM-C clean architecture
    https://github.com/khoren93/SwiftHub

    可以看看这个项目


    以为楼主是自学 囧 我审题错了
    ravenZ
        5
    ravenZ  
    OP
       2022-08-03 11:03:30 +08:00   ❤️ 1
    @wobuhuicode 我落后很多个版本了
    但是国内大部队好像还停留在 OC 转 Swift 的后期阶段,就用于工作而言似乎还能再等等..

    @kera0a 好的了解 谢谢老哥
    ravenZ
        6
    ravenZ  
    OP
       2022-08-03 11:10:08 +08:00
    @code4you stackoverflow 确实是给力的
    哇,非常感谢, 项目看简介就是我很想要的 好人一生平安
    Innovatino
        7
    Innovatino  
       2022-08-03 11:24:27 +08:00   ❤️ 1
    Swift 的精髓……Swift 核心团队自己知道精髓是啥么,天天整活儿
    其实要我说,不如看看对标 OC 的那些常用库,写得都很“精髓”
    wobuhuicode
        8
    wobuhuicode  
       2022-08-03 11:32:13 +08:00
    @ravenZ 前几年使用 RxSwift 来开发,在非 SwiftUI 模式下感觉有点不伦不类的。如果对标 OC 的话,还不如用回旧的那套 MVC 方案。很多思路和代码风格其实都是 OC 下的延伸,只是少了很多模版代码。
    andyJado
        9
    andyJado  
       2022-08-03 12:04:03 +08:00
    @wobuhuicode combine 很蠢的, 下个 swift playground 里面有个相机 app, 从这开始, swift 写的, 代码风格极好, combine 的场景逐渐被 async stream 替代.
    ravenZ
        10
    ravenZ  
    OP
       2022-08-03 12:11:05 +08:00
    @Innovatino 确实特性和语法糖有点多了.. 就总归也有好的地方吧...

    @wobuhuicode MVC 我反正吹爆,简单易懂好上手便于维护... MVVM 那套相对比来说. 就是把原来 MVC 一眼就看到的屎,变成了找来找去才能找到的屎.. 但想进步,还是得整花活,搞点没搞过的...
    iXInbo
        11
    iXInbo  
       2022-08-03 13:25:45 +08:00
    其实没必要讲究学到精髓后才写。
    什么时候重写,当然是闲暇的当下;而且也没有必要用 rxswift ,试试 Swift 一些第三方库,可以实现类似效果。

    还有就是想办法提升最低 iOS 版本,有些好用的新写法都是需要一定版本的 iOS 的,比如 tableview 和 collectionview 的快照写法;需要 iOS 13 以上
    ravenZ
        12
    ravenZ  
    OP
       2022-08-03 14:17:55 +08:00
    @iXInbo 估计是要闲暇很长一段时间了..(目前主要负责已有项目的维护, Android iOS.
    Android 暂时没什么想法去多学,能依葫芦画瓢就行了.
    iOS 是本职,但是落后当前版本挺多的.swift3 4 年前是有用来写过项目的, 就 Alamofire Snapkit 这些,感觉就是在翻译 OC...

    最近接触到了一个老外写的项目. 就是面向协议编程那个味,感觉挺有意思...
    所以萌生了好好研究下 swift.. 用非翻译 OC 的方式 试着去重写一个已经稳定的 App
    xtinput
        13
    xtinput  
       2022-08-03 15:14:46 +08:00
    直接上手就 OK ,没啥好学的
    xtinput
        14
    xtinput  
       2022-08-03 15:16:09 +08:00
    RxSwift 不建议放到老项目里面去,直接上手,混编,一点一点的将原项目变成全 swift 。我就是这么来的,手里现在的项目已经变成纯 swift 了(三方除外)
    oooo723
        15
    oooo723  
       2022-08-04 09:04:24 +08:00
    RxSwift 不建议看了,看看 swifui+swift-async-algorithms 吧,之前在 swift 论坛看到 combine 的大部分功能应该要放到 language 层面( swift-async-algorithms ),还有推荐看看 TCA 架构
    iXInbo
        16
    iXInbo  
       2022-08-05 14:26:24 +08:00
    @ravenZ 那就试试 swiftUI+ Combine ;但是要求 app 最低版本是 iOS 13 ;如果你做的 app 还要加兼顾低版本,那就只能 uikit+rxswift 了


    Combine 是 Apple 工程师开发的闭源框架,也是响应式编程理念,API 与 RxSwift 相似,但是执行效率要高于 RxSwift 。
    而且作为本质的,使用系统原生的会更好点
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3126 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 14:03 · PVG 22:03 · LAX 06:03 · JFK 09:03
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.