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

2023 年入门 iOS 开发,请问有什么推荐的路径吗?

  •  
  •   Uahh ·
    Uahh · 2023-05-16 11:24:32 +08:00 · 7800 次点击
    这是一个创建于 562 天前的主题,其中的信息可能已经有所发展或是发生改变。
    • 想开发个人软件,是直接上手 swift 吗,还会需要学习 OC 吗?
    • 如果我想把我的 web 应用(js/ts,html)包装成 app ,是可行的吗?
    • 入门有什么推荐的书或者文章视频吗?还是直接去读官方文档?
      谢谢大家。
    43 条回复    2023-05-17 12:45:25 +08:00
    finab
        1
    finab  
       2023-05-16 11:27:36 +08:00   ❤️ 1
    直接 swift
    可行的
    我感觉随便找个教程过一下 iOS 的开发流程,然后直接动手开始做你的 APP 是最快入门方法,不会啥再搜啥
    Oneshu
        2
    Oneshu  
       2023-05-16 12:03:51 +08:00 via iPhone
    https://www.v2ex.com/t/939001

    这个世界到底咋了?
    XcodeOne
        3
    XcodeOne  
       2023-05-16 12:08:05 +08:00
    楼主太疯狂了,真没想到现在还有人入坑 iOS ,你是怎么想的,好好分享下
    kera0a
        4
    kera0a  
       2023-05-16 12:10:29 +08:00 via iPhone
    @XcodeOne
    魔症了吧?楼主是开发个人 APP ,个人开发不就 iOS 好点么
    beimenjun
        5
    beimenjun  
       2023-05-16 12:12:41 +08:00   ❤️ 2
    1. Swift ,一般更多时候,大家考虑的是主要 SwiftUI 还是 UIKit 的框架选择,但是现在功能做得稍微复杂一些,基本两个的基础知识都逃不掉。可以优先 SwiftUI 做点啥。

    2. 可行是技术可行,但是过审就不一定了。

    3. 网站:GitHub/StackOverflow/OpenAI/Kodeco.com/Swift by Sundell/Hacking with Swift
    教程: https://cs193p.sites.stanford.edu/
    GDAOE
        6
    GDAOE  
       2023-05-16 12:28:35 +08:00   ❤️ 6
    关于 web 包装成 app ,技术没啥问题,用 webview 解决,只是审核会看你这个 APP 是不是适合 iOS 生态,或者一定要做成 APP ,如果他觉得你网页就可以服务用户,那他会拒绝你的 APP ,然后说让你用网页发行即可。一般你只要在 APP 中接入手机原生功能即可,比如相机功能来实现扫一扫,相册功能上传照片等等。APP 接入手机硬件功能能大大增加你过审概率。
    GDAOE
        7
    GDAOE  
       2023-05-16 12:32:42 +08:00
    做个人开发, 直接学 swift 就行了。现在 android 跟 iOS 的开发技术本来就越来越屏蔽业务无关的技术,让开发者专心快捷的写业务逻辑。kotlin 跟 swift 语法本来就是越来越像,方便开发者快速开发两端 APP 。不过我个人 APP 会直接用 flutter 。一套代码,全平台覆盖,维护方便
    GDAOE
        8
    GDAOE  
       2023-05-16 12:45:57 +08:00
    苹果拒绝网页应用的情况:(Guideline 4.2.2 - Design - Minimum Functionality
    We noticed that your app only includes links, images, or content aggregated from the Internet with limited or no native iOS functionality. Although this content may be curated from the web specifically for your users, since it does not sufficiently differ from a mobile web browsing experience, it is not appropriate for the App Store.)。
    GDAOE
        9
    GDAOE  
       2023-05-16 12:46:32 +08:00   ❤️ 1
    Uahh
        10
    Uahh  
    OP
       2023-05-16 12:50:09 +08:00
    @beimenjun
    @finab
    非常感谢!
    Uahh
        11
    Uahh  
    OP
       2023-05-16 12:50:46 +08:00
    @GDAOE
    谢谢前辈的经验,我会着重注意的
    iamqk
        12
    iamqk  
       2023-05-16 13:15:42 +08:00   ❤️ 1
    1 oc 需要学,但以 swift 为主
    swiftUI 可以以后学
    2 可以 但是可能被拒 也得调试
    3 官方文档要读 开源公开课也有好多入门的
    HaroldFinchNYC
        13
    HaroldFinchNYC  
       2023-05-16 13:17:13 +08:00
    flutter
    vultr
        14
    vultr  
       2023-05-16 13:24:32 +08:00
    @GDAOE 用 react native 开发的应用能过审吗?用到了摄像头和蓝牙等功能。
    chiaf
        15
    chiaf  
       2023-05-16 13:36:34 +08:00   ❤️ 1
    现在入门 iOS 的基本都是爱好为主吧,毕竟制作付费 app 还是不错的选择。
    直接上最新的版本就行,swiftUI ,Combine ,modern concurrency ,UIKit 用到了再看也不迟。
    入门资料可以看这个网站,https://www.kodeco.com ,里面的书很全面,就是价格贵了点。
    swiftUI 的教程可以先看下官方的教程,https://developer.apple.com/tutorials/swiftui

    https://www.hackingwithswift.com , 这个网站也不错
    ybz
        16
    ybz  
       2023-05-16 13:40:10 +08:00
    不要进来!不要进来!不要进来!!
    FaiChou
        17
    FaiChou  
       2023-05-16 13:45:34 +08:00   ❤️ 1
    https://v2ex.com/t/939482#reply28

    可以参考我的学习路程:

    先学 Swift 语言

    然后:

    斯坦福 CS193p
    苹果自己的 SwiftUI Tutorial
    hackingwithswift
    Breacher
        18
    Breacher  
       2023-05-16 13:53:45 +08:00 via iPhone
    刚开始学习 ,我直接上 SwiftUI 了,不知道有没有坑😂
    我也发了个贴: https://v2ex.com/t/940276
    treizeor
        19
    treizeor  
       2023-05-16 14:03:02 +08:00
    @kera0a 个人开发 iOS 一点也不好。$99/年的证书可以劝退很多新人了
    kera0a
        20
    kera0a  
       2023-05-16 14:11:00 +08:00 via iPhone
    @treizeor
    就别说楼主这种开发大佬了,正常工作了的人(学生可能确实是门槛)想赚外快会在乎这 99 美元的成本么 - -,能被 99 美元劝退的,本来就不能赚钱吧。这 99 美元换来的是潜在的优质付费群体
    raykle
        21
    raykle  
       2023-05-16 14:25:12 +08:00
    @vultr #14 可以过审,没问题。
    使用了 RN 热更新的也能过审。
    heiya
        22
    heiya  
       2023-05-16 14:56:14 +08:00
    如果是兴趣,楼上说的都挺好的;如果想以此为职业,而且选择 IOS ,真有点 49 入国军的感觉
    Uahh
        23
    Uahh  
    OP
       2023-05-16 14:56:28 +08:00
    @iamqk
    @chiaf
    @FaiChou
    非常感谢!
    Uahh
        24
    Uahh  
    OP
       2023-05-16 14:57:50 +08:00
    @heiya 确实是兴趣,有些想法放在 web 上用起来不太方便,做成 app 就非常合适
    asm
        25
    asm  
       2023-05-16 15:30:25 +08:00
    搞安全的,这几天正在看 oc ,用于 ios 的逆向。发现 v2 上的大佬都不推荐 ios 开发。。。
    其实现在的 ipa 恶意样本也不多,跟安卓比,简直约等于 0.
    Dogtler
        26
    Dogtler  
       2023-05-16 15:32:35 +08:00 via iPhone
    已收藏,后端也过来卷一下。多学一点增加竞争力
    MakHoCheung
        27
    MakHoCheung  
       2023-05-16 15:50:53 +08:00
    直接 SwiftUI 。个人 APP 的话 UI 直接用苹果原生的交互,遵循苹果的 HIG ,省了自己费尽心机去想设计,而且 SwiftUI 出活超快
    GDAOE
        28
    GDAOE  
       2023-05-16 15:55:25 +08:00
    @vultr 能啊。这个技术没被限制,主要是不要去用热更新的功能就行
    beimenjun
        29
    beimenjun  
       2023-05-16 16:05:39 +08:00
    @asm 支持侧载的话,应该会多不少。
    vultr
        30
    vultr  
       2023-05-16 17:07:11 +08:00
    谢谢 @raykle
    XcodeOne
        31
    XcodeOne  
       2023-05-16 17:21:14 +08:00
    @kera0a 如果是纯开发个人软件娱乐,那确实没啥问题,我肤浅了
    Weiiiiii
        32
    Weiiiiii  
       2023-05-16 17:36:12 +08:00
    别来 快跑 说真的
    mandex
        33
    mandex  
       2023-05-16 17:39:44 +08:00
    还是建议 flutter
    leokun
        34
    leokun  
       2023-05-16 18:01:48 +08:00
    我也想学习 IOS ,不是为了找到工作,
    是为了做个人开发者,工具类,效率类的应用用跨平台的做始终体验不是很好
    wingkwanli888
        35
    wingkwanli888  
       2023-05-16 19:58:19 +08:00 via iPhone
    Webview + vant 4 , 比原生更丝滑
    Tarek911
        36
    Tarek911  
       2023-05-16 21:48:30 +08:00
    掰手指数一下国内的几波红利:
    1. 改开红利
    2.地产红利
    3.互联网红利
    4.移动互联网红利

    移动互联网进入存量时代,就是说红利已经快消失了。
    同样入门 iOS 的精力不如学 VR 开发,或者依附 ChatGPT 方向的
    gnawll
        37
    gnawll  
       2023-05-16 23:47:55 +08:00
    还没看评论,先来留言,肯定很多人劝 OP 快跑!别来 lol
    dunizb
        38
    dunizb  
       2023-05-17 03:01:11 +08:00 via Android
    既然你是个前端,为什么不考虑一下 RN ,uniapp ,ionic 等技术呢,以及现在火热的 flutter ,我是个前端,选择 flutter 开发,我开发的 App: https://jmmt.mmkj.tech/
    fox0001
        39
    fox0001  
       2023-05-17 08:29:46 +08:00 via Android
    @HaroldFinchNYC #13 Flutter 挺好的,Android 和 iOS 都支持,结合 Provider ,跟 Vue 一样爽
    X2031
        40
    X2031  
       2023-05-17 08:48:09 +08:00
    @mandex flutter 可以的
    gyt95
        41
    gyt95  
       2023-05-17 09:45:45 +08:00
    OP 最美逆行者。。是前端的话,就是往大前端转,肯定用跨端框架的。不怕麻烦直接 Flutter ,学多一门 Dart 语言。想上手容易点就 RN 。我也是前端,Flutter 和 RN 都玩过一下,感觉前端应该更喜欢 RN 吧,Flutter 那种写法太反人类。
    WngShhng
        42
    WngShhng  
       2023-05-17 10:18:48 +08:00
    参考我的开源项目学习就好了,学前端就像玩积木,知道 API 和怎么用就行了: https://github.com/Shouheng88/AwesomeSwift
    Uahh
        43
    Uahh  
    OP
       2023-05-17 12:45:25 +08:00
    @gyt95 我前端很弱,本职其实是后端,主要还是兴趣,想做点东西。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1776 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 16:37 · PVG 00:37 · LAX 08:37 · JFK 11:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.