Swift+IOS8 开发极速学习 (draft,第一章)

声明: 极速学习

你是一个文科生,数学是体育老师教的。天天用手机,但从没写过一行程序。现在你想做一个程序(或者是自用的工具,或者是你觉得可以拿出去和别人分享的小游戏,甚至是可以赚大钱的网络服务)。本教程教你3天24小时内可以开始自己做项目。最多一周,可以成为100offers之类的地方一个有竞争力的工作人。一个月,你很可能找到一个很好的IOS开发工作。

**不相信本声明的去看前言。不然可以直接跳过到第一章。 **

为了极速学习这个目标。本教程尽可能的避免使用技术语言。到完成本教程的一刻,读者自然就通过例子和事件学会相当部分的技术语言。

任何一个成熟的软件工程师,日常工作的80%部分,使用的知识是小学数学,加上大学入门课程的前几十页。原因不解释。本教程的目的是教会你一个最少部分内容,但威力最强大的技能集。这有一个额外的好处,Swift正在发展中,学的多将来可能错的多。本教程的目标是:学的少,会的多

本教程是为零基础的人写的。零基础是优势。至少你没有各种坏习惯和错误的成见。坏习惯多,自以为是的各路技术控绕道。这些人是负基础,学新东西会及其吃力。去掉一个坏习惯,比培养好习惯要难的多(比减肥难)。负基础严重的人,可能十年学不会一行编程。例如你让莫言学编程,那基本不可能了。为什么婴儿学语言快?很重要原因是他们零基础。学习第二语言就极其困难。

前言: 真理何物

拥有真值的句子和真理是不同的。所有拥有真值的句子的真值,都是来源于最初几个被规定为真的命题,和一些被规定为合法构造句子的规则。所以有真值的具体必然是一个符号体系的内在产物。其真与否,和世界上其他东西无关。因为真理和符号体系之外的东西有关系。所以拥有真值的句子的真假,不能完全覆盖真理所指的东西。这就好比红楼梦和字典,红楼梦是好的著作,并不是因为它字字的用法都符合字典。
那么真理何物?在回答这个问题之前,我们必须弄清楚,世间是否有真理。如果真理是个不存在的东西,那就没必要给出“真理”这个名字,使用这个词也就没有意义。我的回答是,世间确有真理。只需要一个明确的例子,就足以证明世间确有真理。

例如:语言是有用的。

a 自有哲学以来,所有真理的讨论都承认上述真理。你可能会说,我不承认上述真理。但这必是谎言。人生几十年,思考交流都在用语言。所以你对待“语言是有用的”这句话的态度,无疑就是对待真理的态度。或者难道说你日日坚持使用了几十年语言,然而从不相信其有用?或者说,你上网几十年,不相信电脑是有用的?

b 社会上无疑会有少数人对待语言的态度不同,但这些人要么已经被社会淘汰,要么处在被淘汰和隔离改造的过程中。《疯癫与文明》讲述的就是这个被精神病的过程。从这个角度来讲,即便语言是有用的这条尚未完全的成为真理,它必将成为真理。

**例如:真理问题被思考,思考这问题的东西肯定不是真理问题本身。所以除了真理问题这个符号世界的东西之外,还有另一个东西,这个东西就是我。所以我在。

综合a和b,这个例子已足够肯定确有真理存在。注意上面第二段说明,真理不是纯符号的东西,其必然而且只能在一个历史的过程中完成。我们的拥有对未来的确定的态度,就是当下的真理。一旦我们拥有了对未来的绝对的确定态度,那么历史就结束了。简单的说,在我们绝对的认可了哪怕只是单个一条真理的时刻,历史就结束了。这是Hegel到Kojeve和福山反复讲述的事情。

所以真理何物这个问题,是无法用符号来完全回答的。真理是需要用人的实践来完成的一个历史的过程。

我们可以从另一个角度来论证:
任何事物都有“时间”这个属性。下一时刻的这个杯子和这一时刻是不同的。下一时刻都是对这一时刻的否定。所以人不能踏入同一条河流。既然如此,怎么可能存在贯穿全部时间的真理呢?答案很简单,只有通过实践改造未来,才能完成真理。一旦事物被完成,成为过去和历史,它就不能再被改变。
例如:“全球人类必将在同一个框架下进行贸易”。这是不是真理?它最开始不是的。但Kojeve 设计了WTO,完成了。就成了真理。从纯粹抽象符号和时间的角度来讲,没有什么东西是真理。因为时间本身就被假设包括一切不同的可能。但是,一旦时间成为过去,沿着时间走的那些东西被你按约定路线完成了。那真理就被建成了。

According to Godel:
Hegel's logic need not be interpreted as dealing with contradictions.It is simply a systematic way of obtaining new concepts. It deals with being in time. Not Hegel's logic but some parts of it might be related to a proposition (not concept) producing its opposite. For example, if A is defined as in Russell's
paradox (namely, A is the set of all sets that do not belong to themselves), "A belongs to A" produces its opposite. In Hegel, a condition produces its opposite condition in history: that is a process in time, and truth depends on time. Hegel's interpretation is like the figures in a puppet show; the second beats the first down. In terms of the unity of opposites and the idea that contradiction gives direction, antinomies receive a different interpretation. The Russell set becomes a limiting case of a succession of belong-to and not-belonging-to; it is no longer circular.

所以真理从符号角度来讲:就是一个实践建设的路线图。该路线图对所有的时间内的否定因素都有处置,推论出所有的否定都会被再否定到原来的方向。沿着这个路线图走,最后就到了预定的地点。这个过程就是辩证的否定之否定过程,也就是所谓的“扬弃”。你的路线图是不是真理?你的路线图好不好?答案是,不好的路线图你把它完成成好的,那么这个路线图就在所有情况下都是好的了。这就是否定之否定。

这个教程的目的就是给出这样一个路线图。从第一个字之始,作者已尽可能的考虑了所有字句的错误的, 不确定的或者否定的方面,期待读者在践行中辩证,完成本书标题的目的。这个路线图展示了一个假设存在的人,如何24小时内,从零基础学会用swift写出app store里80%以上级别复杂度的app。

第一章:极速学习法

以下是几本极速学习法的参考书:

The first twenty 20 hours by Josh Kaufman
Learn more, study less by Scott H Young
The 4 hour chef by Timothy

列举这几本参考书和讲座资料。是为了证明极速学习这个技术是存在的。这些书的方法和本教程无关。这些书的方法也未必适合学 Swift+IOS 8的目的。作者的观点是,没有统一对各科目都适用的极速学习法。本教程就是定制的Swift+IOS8极速学习路线图。

适合本书目的的极速学习方法的几个原则如下:

1. 去除约束

成见是学习的大敌。我们学习语言和编程的目的是为了做事。不是为了成为计算机专家。我们要写小说,不是为了编字典。上古时代的计算机社区,只有计算机专家才会编程序(甚至只有造计算机的才会)。现在时代早已不同了。现在的Mac Book, Iphone, Swift, Xcode,....这个强大的社区,足够让人飞速学会如何开发有价值的apps。前提是,不要相信技术语言。一旦你进入热爱语法糖的技术控渠道,光是语法两周你都学不完。技术语言是手册性质的东西,对学习不利。婴儿不可能靠字典学说话,哪怕是成语字典。

2. 反向学习,正向学习,分解任务

看着你的iphone 上任何一个app 5秒钟,用日常语言,想想这是什么?你会发现,所有app都具有的一个最本质的特征(但任何一本 IOS 8 的计算机专家书籍不会告诉你的):

** 对不同的用户手指动作序列,制造出由app作者规定的各种屏幕显示**

反向学习是什么意思呢?就是把你想做的事,翻译成一个个分开的手指输入和你想要的对应的屏幕结果。然后到了不可分的(输入,结果)之后,你再去查Swift,IOS8手册和各种搜索引擎,开源代码等等。或者你直接上论坛发问题去问。

简单说,分两步走:
1. 要做的事分解成输入和输出分任务
2. 查找,抄袭,上论坛提问,或者查手册自学,如何用Swift+Ios8实现第一步里面的分任务

这样做的好处是,因为你第一步里面给的目标很明确。所以每个分任务只需要极小量的学习。你不会学习任何一点冗余的东西。我们举个例子,例如你想写个计算器,我们假设这个计算器已经写好了,在你脑子里面有了。但为了学习方便,我们假设这个计算器只有四个键,1,0,+, =
现在来分析分任务:
第一个任务:按计算器的图标,全屏被打开。
[这个任务apple已经帮你完成了。这属于正向学习的一部分。任何一个图标被单击,都会全屏打开。]
第二个任务: 按1+1这三个键,在一块地方显示1+1。
[你现在需要反向学习,你立即发现你要查Button的说明书,这是IOS 8的内容。你还要查显示的说明书。等等。一个一个查。看不懂没关系,粘贴到你的项目里,然后少做修改,观察变化。如果不符合你要求的输入输出效果,继续修改,继续观察。]
第三个任务: 按=,显示结果。
[因为你已经在上一步学会了按键。也学会了怎么变化显示。这步你需要学的就是如何用Swift实现数学计算1+1,1+0,...而已。10分钟你就学会了]

相信现在你理解了什么叫反向学习了。这里要提醒一点,如何把一个复杂的目的,分解成{按哪个键,显示什么}的一对对的分任务很可能是及其困难的。这往往取决于你对你要做的事的理解深度。还取决于你懂不懂取悦你的app用户。

    思考题:如何设计一个能让人专注写作的app? 答案:iAWrite的Blog。

正向学习是什么意思呢?在反向学习之前,你需要学习一点点知识。不然没办法开始使用Mac Book。另外,有很少很少的基本swift知识,我估计大概是所有人在任何项目都有很大机会会用到的。这部分集中学习下,或者背下来,比临时查找更有效率。这部分知识,类似于小学数学,是每个工程师日常使用最频繁的。或者类似用最常用的1000英语单词。

想想看,英语这么复杂的语言体系,80%的网页,日常谈话,技术文档,只使用1000字而已。Swift之类的计算机语言远比英语简单,所以其最常用的,需要正向学习的东西,2小时足够。学不会也没关系。背下来也行。

3. 建立高质量的working flow。

准备好你的工作环境对于高效学习至关重要。闭上眼睛,设想下你最舒服的学习工作环境,实现它。如果不能实现,那闭上眼睛,想想什么东西将会在你学习时妨碍你使用全部精力。预先消灭它。如果不能消灭,那么忽视它。如果无法忽视,那么去改变它。

记录本,笔,笔记软件都要准备好。设想自己的工作流程,什么时候会用什么工具。什么工具最节省时间,效果最好。这些要预先选好,试过。作出决定。伴随你的工作流程的工具链对学习有决定性的影响,尽管这影响你可能看不到甚至短时间内感觉不到。

4. 反馈学习

无论正向还是反向,分解出来最小的原子知识之后,你需要边练边学。
第一步:写出你此刻要学习的原子知识。别急着动手,这步可以让你集中注意力,准备好。
第二步:在计算机上涂鸦实验,先写帮助文件的例子代码。然后自创一些短代码,看输入输出是否符合你的预期。重复。
第三步:在笔记上标记此点学习已经完成。复制粘贴练习代码到你的笔记软件。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,189评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,577评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,857评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,703评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,705评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,620评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,995评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,656评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,898评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,639评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,720评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,395评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,982评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,953评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,195评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,907评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,472评论 2 342

推荐阅读更多精彩内容

  • 目录Swift学习资料@完整App@App框架@ 响应式框架@ UI@ 日历三方库@下拉刷新@模糊效果@富文本@图...
    IOS开发攻城狮_Fyc阅读 6,272评论 1 90
  • 转载自:https://github.com/Tim9Liu9/TimLiu-iOS[https://github...
    香橙柚子阅读 8,434评论 0 35
  • 它们说:看,那只老鼠!快灭了他!——这时,你不必惊慌,量它们也不会把你怎样。 慢慢踱回你的家,你依然可以跟孩子们说...
    曹呂阅读 240评论 3 1
  • 中国人是很矛盾的,对于小孩子,会叫妈妈了,表扬;会走路了,表扬;上学了第一次考100分,表扬,而仔细听一个中国对她...
    百事可爱哟阅读 233评论 0 0
  • 1、你很有可能一辈子都不会成功,呵呵,认命吧! 2、那些动不动晒朋友圈的成功人士,不一定就是真的成功,他们只是在刷...
    1e81dcf20286阅读 312评论 0 0