iOS开发

ios swift开发教程

首发于灵猫学编程写文章让不懂编程的人爱上iPhone开发(2017秋iOS11+Swift4+Xcode9版)-第1篇王寒苹果粉丝,摄影迷,心理学爱好者248 人赞同了该文章说明:本系列教程仅针对入门新手!已有iOS开发经验的请绕行~

因本人时间精力有限,无法跟大家一对一解决相关的技术问题,请大家在QQ交流群中互帮互助,或者去cocoachina,stack overflow,苹果官方开发者论坛,泰然网,51cto等相关技术论坛参与讨论。

适合看本系列教程的对象:

1.从未学过编程,或者对Swift语言一无所知,但要懂一些常用的英语单词

2.从未学过iPhone/iPad开发

3.喜欢苹果,充满想象力,喜欢创造,同时也愿意承受学习的压力,愿意投入时间和精力

如果你对iOS开发已具备丰富的经验,请不要在此浪费时间!

如果你只是想了解下Swift语言的开发知识,那么建议直接阅读苹果的官方文档,或另外一份教程(Swift开发入门系列教程)。

2017年10月15日

人天生就喜欢游戏,所以我们要开发的第一款应用不会是苍白无力的”Hello World”,而是一个小游戏,名为Bull’s Eye(拖拖看)。虽然这个游戏非常简单,但如果你从未接触过编程,可能还是会遇到一些困难。但是不要担心,即便你第一遍接触这些新概念的时候还有些含糊不清,但我们会在整个系列的教程中不断重复,直到它们成功的进入你的潜意识,甚至在梦中都不会忘记~

需要提醒大家的是,学习一门语言或工具的最好方式是练习和实践。因此,对于初学者来说,千万不要只是看过一遍了事,而应该自己手动敲入所有的代码,甚至故意修改其中的代码,刻意制造一些bug,然后想办法解决。而在学完本教程之后,要立即开始实战,同时多看苹果官方的示例代码和Github里的示例。不要害怕麻烦和错误,在解决麻烦和修正错误的过程中,你能更深入的领会为何要这样做,而不仅仅是简单的copy和paste。

在学习的过程中,会要求你自己做一些思考和练习,而不是完全被动的接受。仅仅知道前面有这样一条路和自己亲自走过这条路是完全不同的感觉。学习编程唯一有效的途径就是在思考的同时要自己写代码。

前面说了,本系列教程是针对完全的菜鸟来设计的。也就是说,哪怕你是个完全不懂编程的文科生,我们也有信心让你爱上iPhone开发。当然,如果你懂一点编程知识,学习起来会快很多。

处女座或强迫症患者必读:

如果你在第一遍开教程的时候有些东西不能百分百理解,最好的方式不是立即钻牛角尖死磕到底,毕竟你没有打过很好的编程底子,这样做会让你很快丧失信心,甚至很快放弃。碰到这类情况,哥建议你先把问题放在那儿(或者记下来),然后继续看下去。等到整个教程看完了,回过头再看你之前遇到的问题,如果还是不能理解,那么再看一遍。(其实90%的可能性是,等你回头再看当时觉得比相对论和量子力学还难理解的问题,现在就是小学加减法的水平)。因为在整个教程的学习过程中,我们会对一些重要的概念不断重复,直到你觉得跟吃饭走路一样自然。

如果说Objective-C曾经是学习iOS开发的最大障碍,那么这最后一点点担忧也不需要了,因为在2014年的WWDC上苹果发布了一个新的编程语言-Swift。 它可以让开发者在很短的时间里面轻松上手,如同javascript一样,与此同时它的性能又不会比Objective-C差多少,起码是在Java之上。

对当前的主流开发语言难度排个序,大致如下(从最难到最简单,比较主观~):

机器语言 >汇编> C++ >Objective-C > C, Lisp,Prolog>C# > Java > Python,PHP, Swift, Javascript, Ruby

正如刚才所提到的,对于汇编以下难度的语言,只要真正学懂一门, 再学其它的编程语言会轻松很多。毕竟在现实的世界里,真正的程序猿和攻城师很少只会一门开发语言的。只懂一门开发语言能活到现在的要吗是某个方面的顶级专家,要吗就是走了技术转管理的路线。

在我们的教程中,不会也不可能教你学习所有和iPhone,iPad开发的知识。iOS SDK(开发工具包)非常庞大,除了苹果的官方技术文档,市面上没有任何一个教材可以涵盖iOS开发的全部内容。我们只会教你了解Swift和iOS开发所需具备的核心基础。一旦你掌握了建筑技术,可以自己去探索iOS开发的其它细节。

除了Swift语言和iOS开发工具包的相关知识,我们最重要的目的是让你学会程序猿的思维方式。一旦你具备了这种思维方式,可以完成任何编程任务,不管是游戏,工具,网络应用还是其它你能想到的东西。作为一个程序猿,需要思考解决各种计算问题,并创造性的想出解决方案。一旦掌握了解决问题的方法,不论多复杂的问题都可以解决。这才是本系列教程的终极目的,让不懂编程的人爱上开发!

可以百分百保证的是,你在学习的过程中一定会遇到各种问题。程序代码中会出现无数莫名其妙的bug,让你不知所措。但即便是一个拥有30年以上编程经验的程序猿,也会经常遇到这样的问题。我们只是人类,而人类的大脑在处理复杂计算问题的时候总会出错的。不要害怕出错,但我们会提供一些思维工具,教会你如何填平自己挖的坑。

在我身边有很多人学习iPhone开发的方式是:

从大量的博客和网站中拷贝粘贴代码,而完全不理解这些代码的工作原理,以及该如何将这些代码嵌入到自己的项目之中。从网络中寻找解决方案是一种高效的工作方式,但你必须真正的理解这些代码的作用,才能举一反三。

在本系列教程中 ,我们从一开始就会学习如何构建真正的应用,而不是所谓的baby应用,或是仅仅为了学习目的而设计的简单示例。我们会详细解释其中的每一步操作,并附上丰富的图片帮助大家来理解。

通过这些步骤,你将在制作这些有趣应用的同时逐渐掌握编程的思维和技能。当你最终学完本系列教程后,应该已经掌握了Swift和iOS开发工具包的精髓。更重要的是,你应该学会了如何用程序猿的思维方式来编程和解决问题,并真正开始制作属于自己的应用。对此,我有百分之一千的信心!

当然,最最重要的是,希望大家在看完教程后,能够爱上iPhone开发,爱上用编程语言来创造世界的乐趣~

那还等什么,让我们就此开始吧!

iOS7, iOS8,iOS9, iOS10,iOS11…

时光飞逝,世事无常。自2007年1月Macworld上乔帮主那一次惊天地泣鬼神的演讲至今,竟然已经10年了!

10年过去了,乔帮主的音容笑貌仿佛还在眼前,只是,人面不知何处去,桃花依旧笑春风。

很感激Cook,在iPhone X的发布会上,他仍然把Steve Jobs的一段话放到了开头。

10年前,Nokia藐视群雄,Motorola和三星争斗不休,众多国产品牌手机和山寨手机还在华强北幸福的收割着打工者腰包里不多的毛爷爷。

10年后,Nokia亏损连连,被Elop的木马计成功收入微软旗下,继而又宣布放弃了这块业务。

Motorola早就被Google收入帐下,当年的手机三雄只剩下三星还在行业里兴风作浪。

早期混得风生水起的HTC也在最近将手机设计业务部门出售给了Google。

反观天朝,小米、魅族、华为一片混战,而采用农村包围城市战略的Vivo和Oppo手机则成功登顶国内市场。

不过回顾历史会发现,当天朝的土豪们占据市场主动的时候,就意味着一个行业发展到了高峰期,即将开始走下坡路了。比如从前的PC,比如再之前的家电,莫不如是。

苹果帝国好不容易占据半壁江山,却不幸遭遇王者的离去,在Tim Cook接手苹果之后,迟迟没有给大家提供足够的惊喜。

熟悉苹果的童鞋都知道,乔帮主总是会将一些重要的产品放在One more thing…上。

然而在Cook时代,除了数年前iPhone6发布会上的Apple Watch上用过这个标志性的惊喜宣言, One more thing…竟然从苹果发布会中消失了,直到今年。

除了硬件之外,苹果今年在技术创新了也着实拿出了新的东西。在2017年6月的WWDC上,苹果推出了针对虚拟现实开发的ARKit,以及针对深度学习和人工智能的Core ML。可以说,这两个SDK的发布,再配合iPhone X的诸多创新,确实很有可能引领未来十年的智能手机。

总之,如果对苹果开发感兴趣,那么入手一台iPhone X几乎是必然的选择。如果哪位朋友能确保买到,别忘了帮我一把~

还是谈谈iOS11吧。

其实上面要说的是,移动互联网行业的发展速度太快了,iPhone操作系统到现在已经到了iOS11。本系列教程将完全基于iOS11,并采用全新的编程语言Swift4。

既然是学习一门全新的工具,自然要从最新的版本学起,因此,iOS11+Swift4+Xcode9是我们的第一选择。

学习iPhone开发不但可以作为一门兴趣爱好,同样还可以带来不错的收益(如果你能给用户带来不错的产品,或者找到一份提供给力薪水的工作~)。但天下没有白吃的午餐,进行iOS开发也是要花钱的。以下是你需要投资的:

Similar Posts

发表评论

邮箱地址不会被公开。 必填项已用*标注