iOS闷头自学有点迷茫了

Alfred1003 发布于 2015年04月17日
无人欣赏。

学习经历: 1 知乎上所有iOS入门的答案看了两遍 2 在www.fenby.com网把丢了几年的C敲了一遍,在Codecademy上把OC敲了两遍,觉得不理解,买了big nerd ranch的OC编程,配合2013白胡子老头的CS193P前面几节课把OC基本看懂代码没问题 3 学了知乎王寒的四个入门教程前两个,官网Todolist入门,死记硬背记住全过程,简单过了一遍big nerd ranch的iOS编程第四版,很多所以然才渐渐明白,但感觉章节跳动知识点又没有体系,10章以后硬着头皮敲完没有一点印象。官网文档略读了一遍,名词概念知道是什么东西了。

目前自我感觉UIKit了解多一点,动画 多线程和网络部分很陌生。自己学习方式,不弄懂一个概念,跳过去就学不进去;Git上学代码,不知道哪些好的又可入门;项目实战没有机会,目前下一些APP想模仿一个做Demo,但不知道从什么地方入手,原型设计,图标素材,交互设计,性能优化... 求指导

共37条回复
usattc 回复于 2015年04月17日

可以先从模仿开始, 试着做一个App, 做的过程中就是学习了. 实再不行做一个计算器也行.

isaury 回复于 2015年04月17日

如果楼主看过的这些都能消化,那已经很不错了,模仿做一个APP就差不错了……

lionlee 回复于 2015年04月17日

去官网把 Lister For Apple Watch 敲完,回来不懂再问我,我和你说。

清醒疯子 回复于 2015年04月17日

你可以去Github上开个项目,边写边问。

清醒疯子 回复于 2015年04月17日

按你说的,技术比我厉害很多了。我目前的唯一策略是:狂看书,狂读博客。可能只是你没有自己去写项目吧。你的技术已经比我厉害很多了。

Alfred1003 回复于 2015年04月17日

大神们见笑了,完全是小白啊,自己学得很慢,闷头学很容易心里没底。虽然照着敲代码,但是不看懂就完全没印象,不开自动补全敲代码,感觉很浪费时间。看源码很没耐心,喜欢钻牛角尖,一个概念打阻了就没心思暂时放下,去学习后面的东西。Github注册几个月还不会用,Apple Watch更是心里没底。

xieweizhi007 回复于 2015年04月18日

先做个小项目,将学到的串联起来

otis 回复于 2015年04月18日

做项目吧,直接做项目提高很快的。项目做出来就就有底了 :D

Alfred1003 回复于 2015年04月18日

非互联网行业,业余自学,请问如何找到可以练手的项目资源?

q397064399 回复于 2015年04月19日

最好是弄个知识屏蔽,你不是计算机专业,很多基础知识,例如 变量 值类型 引用类型 深挖的话 涉及到编译原理 你都要去纠结,那不是几天能搞定的,学到东西以够用为原则,然后标记为key,需要深挖,立马找书

另外读下深入计算机体系,当介绍的书籍看,就当了解

我高中的时候,读c语言 指针那一章我纠结了半天,但是你通读计算机结构体系那本书就会了解指针其实蛮有用,但是也仅在特定领域,例如对效率要求高 ,现在很多高级语言尽量通过改善语言自身来屏蔽指针,因为指针确实操蛋,而且现代计算机性能已经不缺了,远不比刚诞生计算机那时,空间计算性能非常缺的时代

nycoder 回复于 2015年04月19日

那就直接找工作吧。我也是自学的。各种投简历还是能有公司要的。另外,在面试的过程中也能知道自己哪个技术点不会。比如,我之前面试的时候面试官会问各种我不会的问题,然后这些问题我回去自己查就学到了新的技能。

nycoder 回复于 2015年04月19日

9楼 @Alfred1003 网上很多自学资源的,Google搜就可以。什么千锋iOS开发视频、无线互联之类的,还有很多牛人的博客,另外,推荐两个比较好的网站http://code4app.com/和http://ui4app.com/ 可以照着上面的小实例做做~加油!因为自己也是自学,所以,更明白自学的艰辛,共勉!艰辛一段时间,之后就会好了。

nowherekai 回复于 2015年04月19日

同意11楼,自学没什么方向了之后,去找相关的工作,你就明白公司需要什么技术了,找不找不的到都会有帮助的。

清醒疯子 回复于 2015年04月20日

10楼 @q397064399

知识屏蔽,很好的说法。如果我们学的东西比较难,可能一辈子都搞不定呢。先搞定自己能搞定的吧。就像先到肯要自己的公司工作一样:)

Alfred1003 回复于 2015年04月20日

12楼 @nycoder 谢谢!自己还算是挺能坐得住,业余时间每天到12点,但是可能不适合学习曲线太陡的方法,当初刚开始看斯坦福视频,看OC语法完全是天书一般,讲对象和消息的那几页就停停放放看了一个星期,差点放弃。以前也不是做技术,很久才养成随时静下心来的习惯,其中的挫折感很难想象。最有帮助的是王寒的入门教程,和@清醒疯子 推荐的http://item.jd.com/11620753.html这本书,看完之后才有点顿悟的感觉,开始看得懂官网,学着查Xcode帮助。一个人学没有个参照,有时候真觉得自己进度啊智商有问题,感觉自己是不是太依赖被动式学习,太依赖参考教程了。目前的iOS行情来看,不知道大龄零经验找工作前景,时间上也有紧迫感,真怕两三个月以后或者九月份以后都转Swift了。

清醒疯子 回复于 2015年04月20日

15楼 @Alfred1003

嗯,自己一个人学确实很难。我又在反思自己擅自关了粉丝群是不是做错了。加芳仔的群吧,这是我最见到过的最好的初学iOS开发群:130283564

nycoder 回复于 2015年04月20日

15楼 @Alfred1003 不用那么紧张,做软件开发这一行就是活到老学到老。。不断学习~~~别给自己太大压力。现在基本上还是oc为主

Alfred1003 回复于 2015年04月20日

嗯,刚加了群。其实就是抱着不断学习的心态的,Swift在看麦子学院的视频,就是担心入行问题,年龄和@清醒疯子 差不多,也没有相关经验。

otis 回复于 2015年04月20日

9楼 @Alfred1003 不用找项目呀,自己想做什么 App 就搞起就可以了。 我是去年 6 月开始学 Mac 开发,也是从 OC 学起的,边学边做,今年 1 月初就弄出来了一个自己想用的 Mac App。然后现在已经是两个 Mac App 了。然后 付费那个 Mac App 已经更新了好多个版本。你看看我之前发过的帖子就知道了 http://ourcoders.com/user/show/23791/otis/。学 iOS 比 Mac 好的地方是资料够多,比如说我想找 Mac 的视频是没有的,就只好参考 iOS 7 那个视频了。然后初学者建议不用考虑 Swift,因为它还很年轻,靠谱的项目大部分人都不敢用的,然后我现在就是没考虑它 :D。

citykook 回复于 2015年04月22日

方便留联系方式吗,同样刚开始自学iOS不久,一起交流交流

CoderChen 回复于 2015年04月23日

20楼 @citykook 加一个,我也在学这个

Alfred1003 回复于 2015年04月29日

20楼 @citykook 我自己也是才了解点皮毛,提供不了什么经验。只是学个东西一遍不懂,就找其他入门资料相关知识点再看一遍,一是人的注意力一次性吸收肯定会有遗漏,二是大脑会排斥有挫折记忆又没有新鲜感的东西。一遍一遍的机械记忆,才会有顿悟,这种效率很低,但我不彻底理解就看不进去记不住,比如当时学OC语法看消息、对象、类、实例这些概念就花了一个星期才理解,敲了无数遍把UIAlertView的方法代码记熟。我自己感受是,自学过程中最大的难点是把概念吸收到自己的框架里面,第二是知道功能实现到知道为什么要这么实现。我是零基础,只是大学学了点C,很多概念名词没有办法类比,一遍一遍百度了又忘,一遍一遍的例子里面去加深印象,编程的术语很多,新手不理解不类比根本记不住,比如学UIKit,首先耐着头皮把所有的控件过了两三遍,然后自己从最基本的属性元素(文字、图色)去总结一个分类表,来源(name、tag、identifier、path、URL等等)、外观(文字,图片,大小,位置、背景、状态等等)、动画(尺寸、比例、旋转等等)、事件响应(手势、通知、键盘、感应等等),里面还有很多一层层分下去,然后把控件分个类,相似功能的比对一下,比如控制器切换的(导航、tab、page等)、视图容器的(picker、tableView、imageView等)、动作选择(Alert、Tool)、其他选择的(stepper、segment等)、进度提醒(progress、indicator等)、响应类型、基本类型等等,然后每个控件会用到哪些属性,自己做的分类很多不标准,再一步步去优化。脑力的东西很需要状态,凌晨想东西会很有灵感,白天凭记忆写的这些很模糊,写上来希望大牛们给个指正,现在应该还没到可以写项目的阶段,看官网Guide还是吃力地看(一个词组一个词组,不能像看中文一样一目一段),看代码很多不懂,特别是modal业务逻辑。而且看了@清醒疯子 的知乎专栏所有,感觉自己效率实在太低,好在自己虽然笨,也是个容易沉迷的人,现在下班每天顶着挫折感到半夜一点,状态最近低迷,脸上全是痘。

清醒疯子 回复于 2015年04月29日

22楼 @Alfred1003

你这种硬啃的方式,会有它的好处。

我用的是完全不同的方法,我尽量快速过一遍。

这样很好,可以在一两年后看看不同的方向有什么样的效果。

我赌,你的方法可能会更靠谱一点:)也比较适合主流大众的期待。

Alfred1003 回复于 2015年04月29日

23楼 @清醒疯子 看过你的经历,不知道我和你性格像不像,小时候喜欢看各种书看电视想东西一整天,但是抽不出来,碰上什么迷什么。好奇心很强,各种杂学都知道皮毛,但是很受状态影响,太陡的路线大脑会反抗。我也是先快速过几遍,一遍根本不知道在做什么。我知道这种搞本质的方法会基础牢固,但自己不适合死记硬背,比如高中学物理总是做题的方式学得很烂,高三寒假两天自己把课本力热光电推导浓缩成牛顿三定律,后来感觉通关了,次次满分,直到七八年后教弟弟妹妹做题我还能慢慢磨出来。年龄压力大,想快速入行不知道还有没有机会,适不适合这个快速的行业。

清醒疯子 回复于 2015年04月29日

24楼 @Alfred1003

你应该跟我有本质上不同,我最大的问题是很难沉得下来。我一般要多个东西一起在脑子里各种乱跳,然后错这些碰撞出来的奇怪灵感抄近路跟别人打。

我最近最大的收获是要尊重个体差异,只强化不纠正。

因为每个人适用的方法可能会有极大的差异。

现代教育最大的问题是企图让所有人都用同一个方法做事。

那些成绩特差的同学,我怀疑,只要换个适合他们的方法,分分钟都可以秒我十万八千里。

所以呢,什么是正确的方法,什么是错误的方法,也许就不重要了。

唯一重要的应该只有:什么样的方法能让你开心?

对我而言,把手上的信息尽快推送到尽可能广泛的地方,收取尽可能多的反馈,也就是尽力让全世界和我一起思考,是我最快乐的事。

我对成就没有兴趣,我对好处没有兴趣,我唯一有兴趣的是推动思考。所以,如果没有出现足够的反面思考,我特别喜欢自己代入反面,用尽一切力量去进行反向思考,然后让全世界伟光正的人都来反对我,即使我最后被打败,我也会非常开心地为有足够多的人参与思考而鼓掌。

这与对错无关,每个人都有自己异于别人的,希望收获的东西。

如果我的智力能达到你的水平,能完成你所做的推导,我可能最大的感受就是:这个世界太无聊了。对期货交易,我就是这个态度,自从2012年想明白应该怎么加仓后,我就再也没碰过交易。不需要思考或者没有全面推翻可能性的东西,对我来说,毫无吸引力。

所以,我建议,你还是应该按你自己感到开心的方式去完成iOS的学习和成长。

如果以自己不开心的方式进行,我最担心的是,极有可能,会在不久的将来因为不够开心而再也不做这事了,即使你能靠它活得不错。

我觉得,强化自己的欲望和开心,应该是每个人都应该考虑一下的选择:)

清醒疯子 回复于 2015年04月29日

25楼 @清醒疯子

我最大的兴趣就是像上面这样,在与人互动的过程中,说一些自己可能完全没有思考过的,而且可能打心里完全不信的东西。

找到一个点,把它堆到尽,看看大家的反应,再找下一个点,不关心每个点是对是错,也不关心对别人造成什么影响。这就是我最大的乐趣。这个过程就可以满足我的全部,不需要其它任何东西:)

Alfred1003 回复于 2015年04月29日

你太发散了,遭不住

pkhope 回复于 2015年04月29日

原型设计,图标素材,交互设计,性能优化,这些就不要考虑了吧,找个小项目,just do it,万事开头难

tomios 回复于 2015年05月04日

27楼 @Alfred1003 楼主QQ多少, 可以加我一下 6零58零416零

wuhongbo0014 回复于 2015年08月24日

佩服楼主,楼主现在怎么样了?

pinxue 回复于 2015年08月24日

看知乎学 iOS 编程?这个略搞笑,还是多混 stackoverflow.com 吧。

官网文档略读了一遍?真读了?

OC就看官方的 Guide:Programming with Objective-C,印象里PDF就200多页,再看一个 Concepts in Objective-C Programming,就不用再看别的乱七八糟的了。

iOS的总纲 App Programming Guide for iOS, 基础的 View Controller Programming Guide for iOS/ View Controller Catalog for iOS/View Programming Guide for iOS/ UIKit UI Catalog / Quartz 2D Programming Guide / Core Animation Programming Guide 看过来,该有的概念就差不多。

真要上手干活,Auto Layout Guide,Table View Programming Guide,Collection View Programming Guide for iOS,Event Handling Guide 还是要看的。

这些要都看明白了,概念肯定都有了。至于真能做东西,还得上手多练。

Alfred1003 回复于 2015年08月24日

31楼 @pinxue 好像没说看知乎学编程吧。你说的那些文档当时就在看,英语听和读一直没障碍。现在Runtime,Runloop也能用用了。

easyfly 回复于 2015年08月24日

15楼 @Alfred1003 我觉得你可以两方面的内容结合起来看,

1 是补基础,你看看《深入理解计算机系统》,虽然不能让你直接做出东西来,但是会让你对编程有更深的领悟。

2 是做项目,项目需要什么东西就去学什么东西,比如需要做一个控件,你就去查资料看看怎么做出这个东西来。

两者会互相促进的。前者是修内功,后者让你有成就感。

yao_seu 回复于 2015年08月25日

32楼 @Alfred1003 我觉得跟楼主好像,同样是一个人自学iOS开发,相关的书籍看得好多,但是代码敲的少,不知道要做什么项目,也想模仿过git 上开源的app, 但是感觉 现在的知识水平完全不够用, 设计到的点太多,理解不了。 不知道楼主现在学的如何了。

royren 回复于 2015年08月26日

话说Codecademy 上有oc教程? 我也在自学oc,做了三年php了想学点客户端开发。

exalex 回复于 2015年08月27日

18楼 @Alfred1003 麦子学院的就业班千万别报 5000多块比打水漂还不值得 老师极端不负责 就是免费的视频收你钱 并没有什么卵用

Alfred1003 回复于 2015年08月27日

35楼 @royren 那个教程非常基础,就是在线敲代码,不建议学。OC把运行时和内存管理搞懂了就差不多了。有C基础的话iOS基础教程这本书比big nerd ranch的OC编程好。

36楼 @exalex 不会报的,那个视频的作用只是作为iOS的入门目录,对学习路线有个大概框架。

本帖有37个回复,因为您没有注册或者登录本站,所以,只能看到本帖的10条回复。如果想看到全部回复,请注册或者登录本站。

登录 或者 注册
[顶 楼]
|
|
[底 楼]
|
|
[首 页]