准备转行入坑iOS开发的大灯,第一步-第一篇:基本要求和技术趋势

毛笔照片 - 加上直式文字,更显中国水墨风


说到App开发的工作时常令人兴奋,而且报酬也好。可以创造令人惊叹的产品,让人们的生活更美好,并在一个舒适温暖的办公室里度过一整天...

 

梦想总是美好的。如果没有开始行动,梦终究还是梦。

很少有朋友问我如何开始我的iOS开发人员职业生涯...如果他们想...,他们应该怎么开始呢?第一步应该做什么呢?

在此,为你提供一个iOS开发的学习指南。共为两篇。目标在用浅显易懂的方式说明给从来没接触过编码的朋友,引导你进入编码世界,并成为一位iOS开发者。这里会尽量省略一些艰深的名词,用最容易明白的字眼,提供清楚的基本资讯。就是要你明白到底要怎么做。

第一篇的内容包括:

iOS开发的基本要求。
分析最新的技术趋势。
让学习变得有趣和富有成效的建议。

iOS开发的基本要求

你可能看过在电影里黑客使用的那些黑色视窗的显示器,里面敲敲打打的写了一大堆的英文字母...

别担心,在现实中,这不会发生。

我们不会使用黑框视窗(终端)、记事本或其他文本编辑软件编写代码。为此已有一个“IDE”(Integrated Development Environment),也就是一个集成开发环境。是一种辅助程式开发人员开发软体的应用软体,在开发工具内部就可以辅助编写原始码文字、并编译打包成为可用的程式,有些甚至可以设计图形介面。

别被这些英文吓着了!我们要学的是编码,是电脑语言,不是学英文;固然有英文底子可以更容易明白,但是不会英文也不是个问题。这些专有名词,能理解最好;不能理解...有些也不是那么重要。在此尽量只介绍说明能帮助你成为开发实际使用的知识,理论的的东西...就先不在这里赘述了。

在苹果提供的IDE,就是Xcode;得在Xcode中才能编写iOS代码。

Xcode仅能安装在macOS的Mac上运行。当然,有一些专业爱好者会说,可以尝试在PC或笔记本电脑上安装macOS(它称为黑苹果-Hackintosh),或尝试使用Parallels、VirtualBox和其他虚拟机。

天下没有白吃的午餐。用这些变通的方法的结果就是:不顺畅、卡顿、闪退、崩溃、死机,或是有处理不完的电脑问题。这会给你带来很多痛苦和麻烦,最终你会放弃学习。

如果你想先学学语法,当然可以用网页或一些替代工具;但是你若决心要学新技能,买一部Mac电脑可以更加强你学习的决心。

因此,建议你买一台Mac吧,让电脑为你工作,不要去为电脑操心了。

Mac和PC相比就没便宜过,但是性价比还是会比PC高的。现在Mac电脑的价格也越来越平价。
购买入门级机种,可能不足以平稳运行Xcode。建议从至少四核i5处理器和8GB内存开始,而16GB应该是首选。

以下是可能的建议选项:

MacBook Pro (2013 年后期或后续机型)
iMac (2014 年或后续机型)

如果钱对你来说不是问题,那就选择最新的M1系列的Mac电脑,一次解决,用个5到8年不是问题。

大多数专业开发人员也更喜欢使用一两个大屏幕的显示器,这样可以处理更多打开的窗户,更有效率的查询和比对需要的资讯内容。

接着,你需要一部iPhone。

尽管Xcode有内建一个很棒的iOS模拟器,但它还是无法完整的支持所有的功能,例如:相机功能。能够有iPad来调适开发也很好,然而,如果在iPad和iPhone只选一个装置的话,建议你购买iPhone。因为它的市场占有率要大得多,用户更多,应用程序也是更多。

不建议购买比iPhone 6更旧的的装置来测试,主要是因为可能存在性能问题。iPhone X系列的机种是较好的选择,而iPhone 7或iPhone 8,也能顺利运行应用程序。如果钱不是问题,买个Pro系列当然是更好啰。

Apple Developer Program

注册开发者帐号是你成为iOS开发人员的另一项必备条件。但是,你不需要一开始就为此操心。在学习的过程中,都还不需要用到开发者帐号。苹果有一项适合初学者的新个人计划,是完全免费的。你可以获得苹果提供的所有开发资源和文档、WWDC视频,并能够在iOS装置上启动你的测试应用程序。你无法访问由苹果托管的测试版分发系统TestFlight和iApp Store Connect(iApp Store Connect是用于将你的应用程序提交到App Store并稍后进行管理用的)。

当你练成开发,要发布第一个应用程序时,再来注册每年99美元的开发者帐号。(要注册,请访问developer.apple.com)

技术趋势分析

在iOS开发中,选择使用特定的技术有一定程度的纠结:
Swift vs. Objective-C
Storyboards vs SwiftUI(故事板或用代码编写用户界面)

Swift vs. Objective-C

iOS应用程序可以使用2种主要编程语言来开发:Objective-C和Swift。最早时,Obj-C是唯一的选择。概括的说,Obj-C是基于C语言,C语言现在已经很古老了。2014年,苹果发布了一种现代语言——Swift,他们希望你使用它。它有很多好处:它更简单、更安全、更快、更具表现力的语言。学习和理解也容易得多。现在大多的新项目都以纯Swift开始,大部分现有项目要么已经完成过渡,要么达到50-80%过渡到Swift。然而,语言只是一个工具,当你熟悉Swift和iOS SDK,你就能够较容易的理解和修复旧的Obj-C代码。在这种情况下,SDK知识会重要得多。因此,如果你正开始学习,迈向成为iOS开发人员,请选择Swift。

Storyboards vs SwiftUI

在iOS论坛的一个热门讨论话题是是否使用Storyboards(故事板)。这是在没有图形编辑器的情况下创建应用程序用户界面的工具,“几乎”不用任何代码行。Storyboards的发展已经非常的成熟,这种方法不仅可以构建单个屏幕,还可以在屏幕之间创建过渡或进行导航。

SwiftUI 采用全新声明式语法 (Declarative Syntax)来建立 APP 应用程式。SwiftUI 框架,不仅提供 UI 用户界面的元件,如:Text、List 和画面布局结构,如:VStack、HStack 元件功能,也提供处理与用户互动事件,如:点击、手势、输入等,也可以处理数据资料流。你可以使用较少的编码来建立相同的 UI。

对于一些渴望成为iOS开发人员来说,可能会一开始就学习SwiftUI...建议先从UIKit开始,利用Storyboards可以直观地开始了解与掌握概念。就算开始使用SwiftUI,多半躲不开UIKit,今天大多数的代码库都是基于UIKit创建用户界面的。

并不是说叫你别碰SwiftUI,但针对入门者,最好还是不要优先考虑SwiftUI。总之,如果你想以iOS开发者的身份进入技术市场,应该先学习最惯常使用的技术框架。

因此,对于你几个初始项目,Storyboards将节省大量时间,并减少为用户界面编写代码的一些痛苦。

让我们总结一下上述所有内容:

从Swift开始,这是未来
使用Xcode迈出第一步
故事板可以节省你很多时间

大多数教程将教你如何使用新技术或框架。不幸的是,光是有理论知识并没有太大的价值。如果你去面试,老板不仅想看看你的知识,还想看看你得到的结果。最佳方法是已经编写了几个真正的iOS应用程序。这也会让你有更多练习的机会,让你的知识更深入,让你自己成为更有价值的应聘人。

温馨建议

不要试图制作另一个Facebook或Instagram,他们有数千名开发人员在他们的网站上工作。
不要试图开发一款游戏。虽然你有雄心壮志...但得务实,看清现实。那真不是一个人能做的!

你真正可以做的是创建一个简单而好看的应用程序,让人们的生活更美好。以下是一些参考:
天气应用程序
购物清单
费用计算
计时器

从简单的开始

例如,对于天气应用程序,你需要学习:
Swift作为一种编程语言,
Apple的UIKit为你的应用程序创建用户界面,
Alamofire从远程服务器获取资料,
如何使用JSON并将数据解析为对象,
CoreLocation以获取用户的当前坐标,并在应用程序中显示适当的预测,
CoreDataRealm使你的数据可以离线读取。

初学者的iOS开发入门,第一步-第二篇:学习课程和必要知识https://blog.csdn.net/weixin_42385177/article/details/121268208

iOS开发-学习Swift...看了那么多教程,看懂了吗?快速进入编程,成为开发者Swift是一种功能强大且易于学习的iOS、macOS等编程语言。学习如何为Swift编码可以很简单,很有趣,你可以用它来构建很棒的应用程序!这里将会说明学习Swift编码的简单方法和流程。现在是学习Swift的好时机Swift 5之后,ABI 稳定了。喜欢近一步了解理论的,自己去查一下是什么意思吧。简单来说,ABI 的稳定说明Swift 已经是一门成熟的编程语言,否则用程序员的话来调侃,“自从学了 Swift 之后,每年都要学一门新语言”。Swift 1、Swift 2、Swift 3、Swi.https://blog.csdn.net/weixin_42385177/article/details/121309969

Guess you like

Origin blog.csdn.net/weixin_42385177/article/details/121228939