quake0day
2023-09-10 21:47:36 +08:00
最近教学生 iOS 编程开发,发现 Swift 非常好,应该是最适合小孩子入门的第一语言,理由如下:
1. Playground 和 Xcode 好用,还免费(当然你得有 Mac )。配套的教学资料在 Apple Book 上面有很多。
2. Swift 语言各种现代的先进特性应有尽有。进阶还可以学习 FP 。
3. SwiftUI 直接可以做 APP ,让孩子能够把自己的奇思妙想直接变为现实,而且还可以下载到手机上给大家用。
4. 平时讲 OO 有时候太抽象孩子不容易理解,现在结合 SwiftUI 把 OO 的内容直接转换成 APP 游戏里的人物属性和怪兽设计,并展示出来,孩子就很容易理解了。
唯一的问题就是需要家里有苹果全家桶。
而多年教学后我发现其他语言真的没有 Swift 的所有优点:
Java 太臃肿,开发 GUI 程序也比较不方便,做网页有点太复杂,做 Android APP 也语法太复杂,对小孩直接劝退。
Python 虽然是大家的首选,但是不需要指定变量类型这点其实很不好。一开始小孩子会觉得很方便,但是后面学习其他语言就会遇到障碍。而且 Python 虽然能开发网页和游戏,但是在这个手机时代其实对小孩子来说并不方便。他们更希望的是能够运行在手机上能够给别人展示的程序。
HTML+NodeJS 也是,作为小孩子可以很快做出展示的作品,但是这种应该很容易让小孩子只关注结果,而不会认真学习语法知识。
C/C++太古老,我个人认为在 2023 年不是一个入门的好选择。等孩子入门了有兴趣了,可以在学习操作系统的时候再讲自学不迟。Rust 也是同样的观点,我觉得让第一次接触编程的小孩子去研究引用和借用,然后学习操作系统内存管理,有点太过分了。
GO 语言还不错,但是我觉得更适合作为孩子第二门语言。
其他 FP 语言都有各种缺陷。而且 Swift 本身也支持超多 FP 特性,进阶完全够用了。
综上所述,我觉得 Swift 应该是最适合现在小孩子学习的语言了。