自学ios开发能学会吗?哪个网站教程适合零基础韩语入门自学教程的?说说

7天玩转iOS UI开发视频课程
7天玩转iOS UI开发视频课程
适用人群: 1.转iOS开发的其他软件开发者
2.有语法基础的iOS开发学习者
3想更深入理...
付费特权:
加入购物车
下载学院APP缓存视频离线看
掌握iOS开发学习中UI学习阶段的基础知识即扩展知识。
1.转iOS开发的其他软件开发者
2.有语法基础的iOS开发学习者
3想更深入理解iOSUI开发的开发者
老师的讲解表达&&0
老师的答疑服务&&0
课程的更新速度&&0
学习过此课程的人还学习了
好评率:50%
753人学习过
51CTO学院产品建议群:iOS开发是自学好,还是报培训班好? - 简书
下载简书移动应用
写了9204字,被11人关注,获得了15个喜欢
iOS开发是自学好,还是报培训班好?
对于决定学习iOS开发的童鞋应该都会问,到底是自学还是报班呢?其实小编当时学习iOS也有同样的困惑,下面就说说我自己的一些看法吧,仅供大家参考。如果你有一定编程基础的话,建议可以找一套完整的iOS开发教程自学就好,重点学习实战开发部分。而且需要谨记,教程里面的项目实战是不够的,可在上网收罗一些开源项目练练手(比如:《》)。如果只看教程不练的话,你肯定会进入这样的状态,iOS相关知识都懂,别人的iOS项目源码也能看懂,但是自己动手就是不会做,而且无从下手。如果你没有编程基础的话,自认学习能力和自制力都棒棒哒且空余时间也比较充足的话,可以先试试自学看看。如果不行或前面三个条件缺少其中任意一个,建议还是报个iOS培训班吧。反正小编当时是学习能力不咋地、自制力没有、要上班空余时间也少,自学折腾了下,学不懂,就报了个班。但是需要提醒大家的是,报班的话,分线上的和线下的,线下的要1W+,太贵了,当时没舍得,就报了个线上的,先给几百块钱试学了一个月,感觉不错,续缴了5k,学了4个月,感觉还不错。线上线下的学习效果,没去线下的班里面学过,这个倒不好比较。但是线上除了便宜一些不说,时间也比较灵活,我一般都是周末和晚上学习。其实,不管是报班还是自学,自己的努力都是少不了的。我当时学习是每天保证周末至少8小时,周一到周五至少4小时的学习。如果是自学的话,学习时间应该是更长。以上就是本人对学习iOS自学和培训的一些见解吧,分享出来,希望给正在纠结怎么选择的童鞋一些借鉴吧。
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
选择支付方式:FOUR - 一个27岁零基础无业游民的第一个开源作品 - IOS - 伯乐在线
& FOUR – 一个27岁零基础无业游民的第一个开源作品
0 写在前面的废话
如果你不喜欢看废话,可以直接绕过第一段哦 : ]
我是一名14年毕业的研究生,当时的主攻方向是能源科技领域,离开校园后就去了上海的一家外企当起了管理培训生,后来还参与了朋友的创业项目,在外人看来,这样的生活还不错。但就是这样还不错的生活,让我一直隐约的感觉到不安,所以在去年的时候,我跟家人说想辞掉现在所有的工作,尝试去做一名程序员。
这样的决定让我的家人和朋友都十分不解,在他们看来我在本科和研究生阶段所学的东西都跟计算机沾不上边(事实情况也确实如此),而且我也已经27岁了,重新进入一个完全陌生的领域代价实在是太大了,虽然有很多不利的因素,但我在今年年初参加完SwiftGG翻译组在北京组织的Swift开发者大会后,终于下定了决心。
其实参加会议本身到没有什么内容刺激到我,因为当时参会的时候,我甚至都没看完Swift Programming Language这本书,现场听得懂的内容也屈指可数(PS:我可是全场唯一一个从新疆赶到北京参会的人啊,但当时我真的一点都不懂Swift……),但真正刺激到我的还是这个大环境,为什么这么说呢?
这还要说到现场发生的一个小插曲,会议当天,坐在我前面的是一个帅哥,我完全不认识,大概没多久,我看到从前排起身要出去,刚好路过我这,本以为他就会这么走过去,但他突然停下来,好像认出了坐在我前面的男子,然后两人像老熟人一样说起了话,话里的内容一部分是互相寒暄,另一部分则是对对方作品的赞赏和肯定,后来我才知道坐在我前面的这位男子是的作者 先生,最神奇的是我当时最爱用的微博客户端就是奇点,而此时它的开发者就坐在我的面前…ORZ
这只是当天会议中的许多场景中的某一个片段,你可以在午休时段,看到很多开发者通过某个作品认识到了新的朋友,这让我觉得在这里,人与人之间的关系很简单,有时候可能就是通过在GitHub或者App Store上的作品,就能把两个完全不认识的,甚至不同肤色,不同国籍,不同语言的两个人联系到一块,这里不是一个靠关系,靠背景的地方,而是一个靠实力,靠能力来说话的地方。
Anyway,就是这样一次看似简单的参会经历,让我决定了从零基础开始学习iOS开发。
1 FOUR的由来
开发这个app的初衷一方面是因为看完了《异类》这本书后颇受启发,一方面是觉得如果今后找工作的话,像我这样非计算机专业出身的开发者,怎么也得有个自己的作品才好,所以带着这样的目的,我决定开发一款基于The 10000 Hour Rule的app。
至于为什么叫FOUR,就像我在app的引导页中所说一样,假如每天花4个小时去做一件事,至少也需要十年左右才能达成一万小时的要求,所以照此推算,我们在六十岁的时候大概也就能实现四个人生大目标吧,所以就起名叫FOUR喽!
The 10000 Hour Rule
2 FOUR的起点
2.1 开发前的思考
在开发这款app时,我曾经认真思考过到底用哪种技术来实现,纯OC,纯Swift, React-Native, Reactive-Cocoa,RxSwift?
面对这些个选择,最开始的时候我是想着用点新技术,虽然使用新技术是体现自己的学习能力,但考虑到时间成本我决定还是先暂时放一放。
在OC和Swift的选择中,虽然现在大趋势是Swift,我自己也系统的学习了Swift语言,但考虑到3.0即将到来,我选择采用OC开发的策略,一方面可以避免Swift语言版本的更新问题,一方面我认为只有在同一个项目中使用两种不同的语言进行开发才可以更好的去理解这两种语言的差异和优劣,所以我不妨先用OC写一遍,等程序比较稳定且Swift3.0正式发布后,我再用Swift写一遍,这样岂不是效率更高一些么?
至于React-Native,Reactive-Cocoa,RxSwift这样的技术,如果以后有机会,当然也会来写一遍。
难道终身学习不是一个程序员的自我修养么!!!
2.2竞品分析
关于app的UI设计,我觉得在某种程度上还是蛮重要的,毕竟用户不会直接看到你的代码写的多漂亮,逻辑有多清晰,架构有多合理,他们看到的只是你在手机上的展示的东西,所以UI设计的工作就显得尤为重要。
周楷雯在一书说道:
“设计总是从模仿开始,在我的记忆里,第一次做设计是在 Ubuntu 7.04 上用 GIMP 制作壁纸,模仿 Mac 的霞光壁纸,那还是 2007 年的事。”
所以,我决定也从模仿开始做起,那么模仿什么呢?不如看看App Store里都有哪些app吧,于是我搜索了与10000 hour rule相关的app,在搜索前几名的app如下:
iHour的功能十分丰富,但正因为丰富的功能设定,使得我在使用过程中显得有些不知所措,但是从功能和设计的角度上来说,这款app有不少值得我去借鉴的地方。
iHour界面截图
10,000 hours
这款app虽然看起来相当简陋,也只能添加一个Task,但它给我最深刻感受就是简单明了,尤其在我进入app的主界面后,没有花费太多时间就能明白制作者的意图,并很快的熟练使用起来,这种设计理念我十分喜欢,虽然设计感还有待提高,但用户的体验还是很好的,这总比花了好几分钟都没有找到计时功能的iHour好很多。
10,000 hours界面截图
Color Time
这款app呢,我觉得最大的亮点在于Task中详细信息的展现上,可以看出开发者肯定是有想法的,不知道是受限于技术问题,还是设计问题,在最终的展现上让人看起来有些奇怪,但不可否认,开发者肯定是想以一种不同于前两个app的方式来表达Task中的详细信息。
Color Time界面截图
10000 Hours To Success
这个app在某种程度上和iHour十分相似,有着不错的UI设计,但复杂的操作和奇怪的逻辑让用户的体验感变差不少,尤其是它添加任务,记录任务的方式让我觉得实在太不人性化。
10000 Hours To Success界面截图
10000 Hours
对于这个app而言,你看下面的截图就可以清楚的感受到它的优点和缺点。
10000 Hours界面截图
Outliers – Law of 10,000 hours
说实话,这个app的售价是12RMB,但我觉得这有点对不起它自己的售价。
Outliers – Law of 10,000 hours界面截图
在使用完上面六款app后,我总结了以下几点感受:
优雅的UI设计会为app增分,即使用起来有些别扭,毕竟这是一个看脸的社会
合理的交互设计会减少用户的学习负担,一个好的app不应该有过多的提示操作,而是应该以一种简明的设计方式来引导用户学习使用
对于类似To-Do List类的app而言,记录任务和展示信息是两个十分重要的环节,一方面这是用户使用频率最高的环节,一方面也是展现开发者智慧的地方
3 FOUR的雏形
3.1关于界面设计
FOUR的设计灵感最初来自在Dribbble上的设计稿,我被这个设计稿吸引的原因有两点:
一是因为图片上面刚刚好够展示4个图标。
二是其简单大方的设计感,让我很直观的感受到设计者的意图。
noahbombom的设计稿
选定完样式以后,我就开始考虑app的配色问题,noahbombom在她的设计稿上使用的是非常经典的四个颜色:红黄蓝绿,这四个颜色在很多知名的app上都有过不同的展现方式。
使用红黄蓝绿四个颜色的LOGO
正因为红黄蓝绿的经典性,我考虑将其移植到我的app设计稿中。
Logo的设计稿
主要界面的效果图
关于字体设计
前段时间,在它的朋友圈里发表了一篇文章 – ,这篇文章对我的感触挺大,我觉得虽然FOUR不是一款阅读类的app,但字体对于用户的体验终究是至关重要的。
不过遗憾的是我对中文字体的理解没有那么深刻,更别说去合理的搭配字体来营造一种十分惬意的感觉,所以我在FOUR上并没有对中文字体进行任何的优化和设计。
不过值得高兴的是,由于我平时对各类英文字体有过些许研究,加上自己也会写写画画,所以在制作FOUR的时候,我尝试着用MartinRGB的思维方式为FOUR设计一套合适的字体组合。
我的英文字体作品
以下是我在总结前人经验的基础上,挑选出的几套比较优秀的字体搭配组合,同时我也将网上使用这种字体组合的应用场景找了出来,以便大家直观的感受。
简单的说明一下,下面的图片左边是对当前字号大小和字体细分种类的说明,图片右边的单词就是字体的名称哦。
Lato是一个相对而言较新的字体,它在设计之初被广泛用于带有用户界面的网站设计,这主要是因为它给人一种坚固感和些许的中性风格。Lato这个词出自波兰语,关于它的解释呢,我觉得还是用英文原文来做解释比较好,这样能不破坏它的语义。
Lato means “Summer” in Polish. “Male and female, serious but friendly. With the feeling of the Summer,”
– ?ukasz Dziedzic, Lato creator.
这个无衬线的字体组合是根据传统的广告字体进化而来,它能够很快的抓住用户的注意力,尤其是它的一级字体和二级字体造成了很好的视觉对比效果。
Kollektif字体诞生的目的就是为了打破几何字体精致清新的风格,这种字体的视觉冲击感主要在于它的圆形设计和强烈的设计感。而Gidole字体是一种细而简明的字体,这与Kollektif的沉重感形成了一种很好的互补效果。
Six Caps是一种非常紧凑且窄瘦的字体,非常适合用于做标题。与Archivo Narrow搭配后能够营造出一种60年代的复古风。加上三级字体采用了Source Sans Pro后,三种风格迥异的字体能够很好的表达或者从某种程度上暗示出消息的重要性和顺序性。
Raleway和Roboto Condensed的组合在很多海报中都被使用过,这是一个非常非常经典的搭配,由它们构成的主副标题会给人十分深刻的印象。
Bebas Neue在时尚领域里非常讨好,它简明干净的形式使它具有成为一个好标题的所有基本条件,它自身具有很漂亮圆角设计感,同时相比于其他字体来说,它是一个偏瘦的字体,如果有一个相比它而言较为矮胖的字体就会是一个完美的搭配,刚好Montserrat就是这样一个非常好的搭配角色。
Norwester是一个非常引人注目的字体,非常适合做标题,当Norwester与Kollektif,还有Montserrat组合在一起能够产生一种极其强烈的几何效果感觉,这也是我非常非常喜欢的一个字体组合。
Roboto Condensed是Sans serif系列的衍生体,十分适合阅读,它被广泛引用在科技领域的文字设计中。相比于它的父类,它在高度上的变化使得它给人一种更加强烈的凝聚感。
对这8种字体组合做完分析后,我认为字体组合1给我的感觉与FOUR的气质十分契合,不求轰轰烈烈,只求天长地久,Lato字体的踏实稳重感正是FOUR需要的,所以就选它了!
3 FOUR的实现
回顾FOUR的整个制作过程,如果从技术角度来看它的话,其实它并没有什么特别的技术难点。
在设计模式上,选用了最常见的MVC模式。
在数据库上,我使用了移动端的新贵-,原因很简单:Realm真的好用到哭,有没有!!!
在动画上,用框架实现了引导页上的动画效果,用框架实现了其余部分的动画效果。
在UI界面上,咳咳咳,请允许我吐槽一下!但凡在Github搜到的那些精致漂亮的UI框架都是用Swift编写的,为毛就没有人用OC写呢!!!哎,好吧,自己从头搭建吧….
FOUR的界面构成
仔细琢磨下,唯一值得分享的就是Analysis界面的实现,首先用一个动图来展示下它的效果吧。
Analysis界面的动态效果
这个界面看起来十分简单,但它能展现的内容却十分丰富:
首先它包含每个任务在近一周内的执行时间趋势图。
其次在触摸和滑动曲线的过程中,下端的界面可以弹出任务在某一天内执行的时间长度。
最后在相同的界面中,可以展现出多个任务的曲线走势图。
它的实现主要还是基于的Demo而想到的。所以如果大家有兴趣,可以直接阅读该框架的Demo文件,我想一定会有不小的收获,如果你觉得看起来麻烦,也可以看看的源代码。
4 FOUR的诞生
经过大概3周左右的时间,我终于将FOUR从一个模糊的概念变成了一个具体的app,虽然它还存在着各种各样的缺点,但对于我这样一个半年前还从来未接触过编程的人而言,那种强烈的成就感是不言而喻的。
我到现在还记得当时大概是下午2点多提交的app,之后我就以每隔半小时的速度刷一遍邮箱,期待着Apple的回复。直到凌晨3点多,我终于收到审核通过的邮件,那一刻的心情,觉得比当年考上大学还要激动,弄得我后半夜都没睡着。
Anyway,终于实现了自己在2015年给自己许下的心愿。
Apple的审核通知邮件
虽然FOUR的上架对于我来说是近期工作的一个终点,但从长远来看,这或许才是我在iOS开发道路上真正意义上的一个起点。
因此,在app上架后,我就将其在GitHub上开源了,一方面是希望通过它来记录自己的技术成长,一方面也是希望以后能够有机会和更多优秀的人共同工作,共同成长。
至于未来,我希望能像前面说的一样,逐步完成FOUR的swift版本,React-Native版本,React-Cocoa版本等等。
下面是FOUR在Github和App Store上的地址:
App Store:
如果您喜欢FOUR,记得给我点个星星哦!
如果对项目任何问题,欢迎在项目主页上提issue。,
当然FOUR里还有个功能就Donate,如果各位觉得不错,可以考虑赞助我个可乐神马的!: ]
哈哈哈,在此先谢谢各位啦!
这篇文章基本就要结束了,可能也没什么干货,就是说了说我在制作FOUR时都想了什么,做了什么,干了什么。
如果非要说说这篇文章的意义所在,我想应该是:
我希望通过这篇文章,能够激励更多的人以一种踏踏实实的方式去追寻他们内心向往的东西。
PS:说这些是因为在加入的这些个iOS开发者微信群里,总能听到行业内的人说今天面试了几个伪造简历的年轻人,或者说某某培训机构教学生包装假简历。
我很难想像现在的iOS就业市场中,还能有多少比我这样一个已经快要30岁,无相关行业经历,无相关专业背景,完全零基础,天资平平的人条件还要差。
在这里我并不想说谁好谁不好,谁对谁不对,我只是觉得踏踏实实的去走自己的路或许能收获更多,至少会多一份自信,少一份不安。
Let’s Be Honest
对了!插入广告一枚!
本人现在无业状态,十分渴望从事iOS开发的相关工作。
如果有哪位好心人士觉得我还不错,愿意培养培养,在下不胜感激!
微信联系方式:sketchk
关于作者:
可能感兴趣的话题
关于iOS频道
iOS频道分享iOS和Swift开发,应用设计和推广,iOS相关的行业动态。
新浪微博:
推荐微信号
(加好友请注明来意)
– 好的话题、有启发的回复、值得信赖的圈子
– 分享和发现有价值的内容与观点
– 为IT单身男女服务的征婚传播平台
– 优秀的工具资源导航
– 翻译传播优秀的外文文章
– 国内外的精选文章
– UI,网页,交互和用户体验
– 专注iOS技术分享
– 专注Android技术分享
– JavaScript, HTML5, CSS
– 专注Java技术分享
– 专注Python技术分享
& 2016 伯乐在线使用其他账号登录
每天我都有很多文章灵感,而绝大多数我都没公开,正所谓,忠言逆耳,我写 blog的目的,也不是为了说大家爱听的,如果是这样,其实我可以顺顺便便就做好几个文章农场,每天传播给大家消遣时间用的文字就好了。
网络工程师和其他工程师有一些很微妙的差异,这个差异就是,网络世界变化极快,范围极广,涉及可深可浅,就取决于你要放自己在那个位置。
所以我们不应该去外面上课咯?答:上课是很好的。
记得大学的时候,教授说过这样的话
「上课,是教你全世界都已经证实而且已经知道的事实,上课的目的,是要让你学别人花很多时间整理和归纳的知识,而让你日后再学习的路上,不需要再走一次,再造一次轮子」
可是呢,再这里有好多电脑教室中心,主打「你上课后,马上薪水多少万起跳,你就是设计师了」
你上课之后,还需要很长的时间磨练呢。
如果上一次课就可以学会的技术请问价值在哪里呢?不过事实上,爱走捷径的人还是不少,别说上课,有很多人以为买一本书就能学会的心情来看待。还是用一些工具,拖拉一下就能够自学完成了。
话说,我也要准备开课咯~
上课的目的,是教你用什么方式去学习,告诉你一切已知的事实,这点很重要的,教是一阵子,学是一辈子。
没有轻松学会的事实
你可以去问问资深工程师,一个资深工程师所需的不是天份,而是时间还有肝功能。
那些主打轻松学会、猴子也会、你就是那个人才之类的广告,你还是别相信。
有很多新入行的朋友,会来问我「如何开始」
其实,说真的,我也不知道如何开始。因为每一次,对我而言,都是新的开始。后来才知道,每次学新的语言或技术,都是新的开始。只是每一次开始,都会比上一次快上手而已。虽然每一次都会比较快,但是没有一次是轻松的,直到到了轻松的阶段,又要更新版本或者被取代了,然后你要重新再学一次新的模式。
那种心情就是以前打猎要用弓箭,突然可以用枪了,方法不同但是姿势差不多,都是瞄准标的物,后来更直接用炸弹,瞄准都不需要,只需要按个按钮一切就完成了,但是你不会跑回头去学拉弓箭。
可是问题来了,当有一天炸弹不奏效,你又别的方法吗? 这就是经验的价值。越轻松的方法,经验价值就越低。
学写代码,请用最难的模式。
很多人会第一句回答我「每个人的学习模式不同」
这句话,有两个面向。但是绝大多数,大部分,极大部分,都只看到一个面向。
每个人都有自己的学习模式,所以我坚持我自己的模式,比较适合我。
每个人都有自己的学习模式,所以我也学学别人的模式,看看哪个适合我。
抚心自问,如果你的「学习模式」奏效,就不会停滞不前,又或者你很满意目前的进度,那么其实你就是找到自己的「学习模式」了。如果你对自己的进度有些疑惑,或许你可以继续看下去。
你怎么学习新技术?
每一个面试的人,我都会这样问。
百分之 99% 的人都回答,工作上需求和我有参加一些 FB的社团、和前端聚会。
让我们来破解以下迷思。
工作上的需求,除非你在超前卫的科技公司上班,不然你所谓的新技术根本不可能用到。完毕,有些时候,你公司教你的可能是已经过时的技术。FB社群和前端聚会,都只是一些很零碎的消息来源,而且,每天参加武林大会,并不会帮助你练成盖世武功啊。
学习新技术的方法,最直接的来源就是来自自己动手做。完毕。
不要迷恋技术
学习还有一个迷思,就是迷恋新技术。
迷恋新技术,那当然是好的。但新技术不是绝对的,还是要分析一下适合不适合自己,分析一下适合不适合自己的案子。
记得有一次有个工程师,带着炫耀的口吻,说了一个我不知的东西,其实我不知道的东西挺多的,如果每一次都需要炫耀一次的话,你不累吗。
回归到学术有专精,每个工程师所专精的领域和方向都会不同,虽然我每次举例都是用武林来形容,但是其实工程师并没有东方不败的称号,所以谦虚的学习每一种新技术,还是一个工程师应该有的基本国际礼仪。
起步比较晚,没关系,终点没人知道在哪里
起步比人晚,那是一百万个没关系。
因为没有人知道,终点在哪里,不过我倒是看过很多,虽然一开始是跑了一些距离,不过在中途就休息了,时间过了一年半载,后来居上的人不计其数,唯独自己沾沾自喜的人依然很多,这是一个龟兔赛跑的概念。
不需要埋怨怎么写都不好,怎看都不会,问问自己每天花了多少时间在coding。当你花了很多时间coding,你认为你真的花了你非常多的时间,你依然学不会,不需要懊恼,转行吧。如果你不懊恼,那就继续。
如果不想放弃,又想埋怨,可以写信给我,fb,留言给我,我会用我非常有限的知识,帮你解答。
via:http://kimix.name
一句代码添加新浪弹出框动画
UITablView上下滑动控制底部按钮的出现和消失
谁让 APP 工程师产生了泡沫?
更多iOS相关技术文章,请点击“阅读原文”
本文来自微信公众账号提交,由微信啦收录,转载请注明出处。
微信扫码 分享文章

我要回帖

更多关于 书法自学入门 的文章

 

随机推荐