成为优秀的 iOS 或 Mac 程序员
编程前的思考
当你准备成为一名软件开发人员时,需要熟悉几个关键概念。计算机程序会严格按照你所设定的指令运行,不多也不少,它遵循操作系统和编程语言所定义的规则,不会受你的情绪或请求次数的影响。但很多时候,你以为自己告诉程序要做的事和它实际执行的结果可能大相径庭。
在开始编写计算机程序之前,列出程序要执行的步骤,这种按顺序排列的步骤过程被称为算法。以编写一个烤面包的程序为例,简单的算法可能如下:
1. 从袋子里取出面包。
2. 将面包放入烤面包机。
3. 按下烤面包按钮。
4. 等待面包弹出。
5. 从烤面包机中取出面包。
然而,这个算法存在很多细节缺失和假设情况:
- 用户想要哪种面包?是白面包、全麦面包还是其他种类?
- 用户希望面包烤成什么程度?浅度还是深度?
- 面包烤好后,用户想在上面涂抹什么?黄油、人造黄油、蜂蜜还是草莓果酱?
- 这个算法是否适用于所有文化和语言背景的用户?有些文化可能对“烤面包”有不同的表述,甚至不知道烤面包是什么。
多年来,软件开发常因耗时过长、成本过高且不符合用户需求而饱受诟病,这往往是因为程序员在真正思考好算法之前就急于编写程序。
成功应用的关键要素
成功开发应用程序的关键要素是设计需求。设计需求可以正式而详细,也可以简单地列在一张纸上。它之所以重要,是因为能帮助开发者明确应用程序完成后应该做什么和不应该做什么。设计需求不应由程序员独自完成,而应是开发者、用户和客户共同协作的结果。
另一个关键要素是用户界面(UI)设计。苹果建议开发者将
超级会员免费看
订阅专栏 解锁全文
2

被折叠的 条评论
为什么被折叠?



