看来大家都比较喜欢这个系列,比正儿八经的技术干货看的还多,那么好吧,继续第三期。
高效工程师的开发流程
经常有人问,一个初级工程师,一个高级工程师,究竟差别在哪里?
那当然是工资高低了。
那么为什么高级工程师能拿高工资呢?我们来看下下面两种工程师的开发流程,如有雷同,纯属巧合。
初级工程师:拿到需求——百度——Copy—Coding—Debug
高级工程师:拿到需求——拆解需求点——设计架构——Coding——Debug
其实差了什么呢?就是一个思考的过程,一个高级工程师,就高级在可以把需求拆解为架构,而不是根据需求去搜索网上的Demo。我遇到的很多初级开发,大多都是拿到需求后,看到需求里面要做什么,就先去网上搜索对应的Demo,然后Down下来改一改功能,大喊一声,牛逼。而高级工程师,首先是思考怎么去设计这个架构,来承载这个需求,同时考虑多方面的影响,比如可拓展性,复用性,性能等等方面,最后再去Coding,当然,高级工程师一定也不是全能的,所以肯定也会有知识盲区,所以百度Google肯定也是要的,但是当你有了一个整体的架构蓝图,剩下的就是往里面填充技术点了。
由此可见,永远不要停止思考,这是最值钱的东西。
作为程序员,思考不仅仅是停留在架构的层面,这会阻碍你的视野,你需要多思考整个业务流程、平台,多思考不同的角色所思考的东西,例如产品、测试等等,有时候在你看来理所应当的东西,在其他人看来,可能会完全不同,也是投入产出比,也许是线上风险,也许是用户体验等等,所以,保持谦逊的心态,思考、思考,再思考。
❝思考比努力更重要。
❞
再扯的多一点,我们为什么要学数学、学物理?这其实就是培养一个人的逻辑能力,思考能力的重要方式,我们学这些并不是一定要掌握拉格朗日函数、掌握麦克斯韦方程组,而是在学习这些的过程中,培养起思考的能力,感兴趣的朋友可以参考我之前写的一篇文章。
程序员与跨界
永远不要拒绝与程序开发无关的东西。
程序员虽然是一门技术性很强的科学,但是,一个好的程序员并不是只会写代码的,相反的,有很多爱好会让你的程序开发变得更加优秀,举个例子,我认识一个朋友,写自定义View非常之牛逼,可以从手写各种非常酷炫的特效而且能给你讲解的非常清晰,而他的爱好,竟然就是绘画,甚至他的主业曾经是一名设计师,而后才转行写代码,从他的绘画学习过程中,他可以比一般的程序员更好的理解绘图的本质,从而做起自定义View来就更加得心应手了。
再说一个朋友,曾经是程序员,没错,后来转行做了产品,试想,一个真正懂技术的产品,是一个多么可怕的存在,这个需求要多久?5天;我觉得2天够了;要么你上?我上就我上,2天搞定。当然举这个例子有点不恰当哈,毕竟不是劝人转行,只不过这也体现了其实知识之间是没有边界的,多个手艺多条路,技多不压身,这些都告诉我们,很多你看上去是跨界的技术,实际上能对你的编程功底有很大的提高,特别是设计能力和产品思维,这些对一个程序员的成长是非常有帮助的。
技术是手段,而不是目的
程序员引以为傲的技术,在外人眼中看来可能根本不值一提。
技术,是实现目的的手段,但是实现目的并非只有一个技术手段。
有时候产品说,我要做一个feed流,设计说,这个feed流上面的所有东西都要是可以配置的,而且能够随心所欲的组合,开发说,好的,我们需要搭建一个Feed管理后台,支持可视化设计Feed样式,移动端设计元素组件并更加语法规则进行组装,后端解析并动态生成Feed流数据,移动端进行解析和渲染,很牛B的一套架构,我们正好可以用上DSL解析、动态模板、可视化平台架构能很多新技术,毛估估30人日吧。
但是,产品真的是想要这样一套完善、复杂的系统吗?
其实这时候开发应该帮助产品更加深入的明确需求,他想要的究竟是什么,为了这个目的,是否真的需要这样一套非常完善的平台,有时候聊着聊着,这个需求可能就没了,不战而屈人之兵,这才是写需求的最高境界。
客户:我要一艘万吨巨轮
我:你要干嘛
客户:我要过河
我:河有多宽
客户:不到一米
我:要不你站好,我助你一脚之力
费曼学习法
我在之前的文章中,曾经总结过自己的学习方法,不过最近才了解到,我的这套学习方法,竟然还有个非常牛B的名字——费曼学习法,我之前的总结是基于我自己的理解而给出的,不过再了解了完整的费曼学习法之后,我才知道这其实就是土八路和正规军的差别。
上面这张图,就是一个标准的费曼学习法的过程,其实和我之前的介绍基本一致,当我们要学习一个知识点的时候,首先需要对知识点全貌进行一个掌握,然后形成博客、视频等产出,这就是我最早写博客,录教学视频的原因,这在过程中,你肯定还会遇到新的问题,然后继续学习、分享,循环这样一个过程,最终更全面的掌握知识,最终触类旁通,举一反三,这与我的学习经历不谋而合,经过我的验证,推荐给大家,相信一定会对大家有所帮助。
向大家推荐下我的网站 https://xuyisheng.top/ 点击原文一键直达
专注 Android-Kotlin-Flutter 欢迎大家访问