如何建立你自己的开发知识体系

1、前言

首先,我认为学习总结,要有所总,所结,就是有归纳后,能用自己的话告诉别人!有所结,就是有所收获输出,一般我认为是思维导图,所以,每篇文章前,我都会先给出文章的脑图:

建立你自己的开发知识体系.png

2、正文

学习任何文章之前,一定要有可行的方法论,否则很难有所突破。上面脑图中,我列出了一些个人认为非常好的方法论,所以,在学习课程前,先了解一下,对后续自学或其它的学习都会有益处。

一个知识点

  1. 为什么需要 XXX
  2. 什么是 XXX
  3. 怎么使用 XXX
  4. 使用 XXX 时注意的问题
  5. XXX 的应用领域
  6. XXX 的优缺点
  7. XXX 触类旁通

这个理论是在郝斌老师所录制的计算机(编程)教学视频里提到的,很适合初学者,有兴趣的大家可以自行搜索。

为什么这个很受用?因为简单的套用一下,你就知道自己是否掌握了一个知识点!

举例:

  1. 为什么需要 单例模式
  2. 什么是 单例模式
  3. 怎么使用 单例模式
  4. 使用 单例模式 时注意的问题
  5. 单例模式 的应用领域
  6. 单例模式 的优缺点
  7. 单例模式 触类旁通

当我们在谈论性能优化时,我们在说什么?

  1. CPU
  2. 内存
  3. 网络
  4. I/O

大家有没有发现,以上4点对应计算机的基本组成原理,在谈论性能优化时,其实就是在说计算机的瓶颈!,所以,当在谈论性能优化时,我们可以做的,就是把计算机的瓶颈提高或转化

单一 CPU 处理不过来,我们新加 GPU;一个 CPU 处理不来,我们8核、16核心!多核 CPU 处理不过来,我们可以集群!分布式!云化!

当内存不足时,我们加内存!内存压缩!内存置换

当网络带宽不够时,我们加带宽!我们加服务器!我们加异地多端!

当I/O过高时,我们取舍I或O!我们把I和O拆分

在深入到程序、代码中,所有的优化,是不是也一样,你要减少计算和循环次数,你要节省内存开销!你要网络数据缓存!你要定量定时入库

所有的性能优化,不过如此!大家明白了吗?

移动设备时代,性能问题还有一个就是在小的空间里没有大的电池,其实就是电池的瓶颈!但是一般开发者并不关心,因为他们感觉自己只是开发App,使用App的是用户和他们的手机设备!电池的瓶颈有消耗损耗2个问题,消耗是我们写的程序在实现功能的同时能不能减少计算量,损耗是我们写了一些我们并不需要的代码导致了不必要的计算量。如果平时有注意的,2015年时三星手机针对那么功耗过大的App 直接强制退出,这可能也是大家说的对中国本地化做不好的原因导致失败吧?因为优化是不是真的为了解决卡顿或性能,就一定要为所欲为呢?这也是开发者需要思考的问题。电池技术当下没有突破的时候,电量依然是非常值得关注的事情。现在iOS 和 Android 都开始统计App的电量使用情况,所以不从现在开始节能,你的App可能就被用户删除。当然,针对这些问题,iOS/macOS 系统苹果做了很多系统层级的优化,这也许也是很少开发者关心的原因,感兴趣的可以看看历年 WWDC - Apple Developer,苹果很多关于电量节能有很多策略可以借鉴。

换空间

  1. 压缩
  2. 分片
  3. 索引

上面说到的性能优化,从大方向时如此,然后细化到具体,会有非常多的算法或技巧,其中换空间就是一个经典的问题。

大家一定听说过类似:

  • “20张100MB的图片,怎么显示在1G内存的设备上”
  • “在2.5亿个整数中找出不重复的整数,注,内存不足以容纳这2.5亿个整数。”
  • “给定a、b两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,让你找出a、b文件共同的url?”

这些问题,其实解法,基本上可以用上面3个方法!

大家明白了吗?建立你自己的开发知识体系!其实并不难,学习是没有捷径,但有方法!,所以,了解和掌握更多的方法论,构建自己的知识体系树,这样,才是不用被动的每天在各种各样的文章中,人浮于事!

学什么

  1. 不要被难倒 —— 分治思想
  2. 不要想太简单
  3. 学习曲线陡峭度,跳过原则
  4. 多疑问,多思考,多总结
  5. 学习不仅仅是知识,还有过程
  6. 授人以鱼不如授人以渔

我个人推崇 授人以鱼不如授人以渔,学习不是给你知识,而是学会如果获取知识,如何知识点串联起来,如何快速有效的掌握知识!

学习技巧

  1. 先实践再学理论更有感觉
  2. 按工作需要来,工作毕竟是实践,最容易有成就感的
  3. 实践&思考
  4. 经验&总结
  5. 方向很重要,坚持方向更重要
  6. 不断深入,理解和认知都在更新
  7. 把逻辑和流程整理出来,更清晰
  8. 尝试作为一个提供 api 的人
  9. 并不是样样精通,而是有擅长的领域。
  10. 融会贯通

很多人可能迷恋/迷信学习的快捷方式,每次学习一个知识点时,总时想找到捷径在学习,往往不得其道!有需要,大家可以看看我之前的年终总结 2020,爱你爱你 | iHTCboy's blog,这里我就不多说了。关于学习,先深挖某一领域,经过大量的学习和实践后理解了编程的本质,从而可以灵活调配和运用自己已经积累的知识。切记!切记!切记!学习是没有捷径!但有方法!

知识点

  1. 组件化是将上层业务隔离开,下层提供通用能力的一种架构模式
  2. 组件化、热修复、动态化、大前端、Flutter、小程序
  3. 提高编译速度,内存优化,性能优化,电量优化,测试驱动开发,架构设计模式和iOS中算法数据结构的使用

虽然大家都是程序员,工程师,但是,所在行业不同,现实是千差万别的!了解和熟悉的知识也是不尽不同!如何把计算机的万千技术用到自己所在的行业?每个人的精力有限,但是无极限,当别人告诉你不可能时,那一定是他度量的尺子与你不同!我们度量一件事,要尽量放长线,放大眼光,放高视角!,对于知识点,有太多的东西,选择自己感兴趣和工作需要的,不用太关心别人的评论,绝大多数事件,不是做不来,而是需要长期做

面试

  1. 被别人问底层原理答不出所以然
  2. 1.业务代码谁都会写,你还会什么?
  3. 2.我觉得iOS开发不值这个价,我们公司这个价的也不是没有都是后台,前端不需要。
  4. 公司不考虑员工的成长,多待无益
  5. 成体系地提升自己的内功,完善自己,然后反哺到工作上,让工作效率和质量达到质的提升,进而从容应对技术的更新迭代
  6. 面试应聘者的时候,通常都会问他所负责项目的整体架构是怎样的。
  7. 只对自己负责的那摊子事儿说的溜,而回答所在项目整体情况时却支支吾吾,面试不会成功。

如果不是自由工作者,我想大多数的国内同学都没有机会选择,所以,面试是一个总是要面对的问题,每次辞职、被辞职,大家就重新拿起试题集来刷,刷题目!刷算法!刷刷刷!

所有的问题不能简单的一刀切!,经过这么多年,我的理解里,问题没有对与错,好与坏。刷题目也是一样。我想说的是内力是不能一天俩天就长成,所以为面试,建立自己的开发知识体系,面试题就是西天取经,每一道题目就是一个怪兽,你不可能一天打败所有怪兽,所以,不要忽视七七四十九日的轮回。

书籍

  1. 《代码整洁之道》
  2. 《人月神话》

书籍很多,好书也很多!这里暂时不列出所有值得看的技术书,因为,我害怕大家一下子又回到原点,买了一堆书,然后不知道从那里开始!,所以,我是不建议买书!买书是自己要系统学习的时候买!怕伤害眼睛时买,但不能因为别人推荐或感觉不错就买!要从自身出发,从自己工作,从自己从事的行业,从自己的规划发展,从自己的兴趣,任何事情的起点,都是初心,不要忘了初心!

3、总结


关于如何建立自己的开发知识体系,以上就是我认为比较重要的点(还有很多方法论,但是多并一定是好事,以后有机会在归纳吧),贯穿到开发的每一个细节,需要大家长期长时间的学习、研究和经历,才能打造一套属于自己的知识树,任何告诉你可以复制的知识,你可以复制!但永远无法粘贴到自己脑心中!


更多关于 iOS 开发和程序开发相关的内容,可以查看系列,目前还在连载中 【学习总结】iOS开发高手课 -- (连载中) | iHTCboy's blog,以上,希望对你有用!

参考


  • 如有侵权,联系必删!
  • 如有不正确的地方,欢迎指导!
  • 如有疑问,欢迎在评论区一起讨论!


注:本文首发于 iHTCboy's blog,如若转载,请注来源

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

推荐阅读更多精彩内容

  • 目录:iOS 整体框架及类继承框架图[https://www.jianshu.com/p/28428b90b07a...
    二斤寂寞阅读 2,845评论 7 24
  • 那段时间的教训是惨痛的,一进入股票市场,老霍就反复教导我,股市有句话,“会买的是徒弟,会卖的才是师傅”。我...
    王驰1960阅读 460评论 0 1
  • 过了多久又踏上归家的路途,一千多公里的路程十几个小时的车程!听着人声喧闹的车厢,看着陌生的人群,视线渐渐模糊,恍惚...
    青灯燃清风阅读 181评论 0 0
  • 秋风浩荡最无情,满目唯留落叶频。 情思悠悠不忍去,落红挥洒离别泪!
    我是兰姐阅读 269评论 0 0
  • 经过了一年多的唠叨与酝酿,2015年的10月国庆节过后,我终于来到了五台山,带着老公跟老妈。确切的说,是老公带着我...
    莲子渔阅读 477评论 0 0