美文网首页
开发团队中的两种编程高手

开发团队中的两种编程高手

作者: 八戒程序猿 | 来源:发表于2018-02-08 20:50 被阅读46次

来源:http://codebay.cn/post/7721.html

如有侵权,请及时联系,谢谢!

八戒推荐一

Java并发编程原理与实战视频

第一种编程高手

        给一段复杂的程序,比如有7个局部变量,5层循环和if嵌套,他能赤手空拳上阵,迅速领会程序意图、找到bug,不用借助任何工具甚至纸笔。

给一个复杂的问题,能在一个函数之内一气呵成,立马给出正确实现,这个函数可能有七个变量,5层循环和if嵌套。没有废话,删无可删,但是单一函数复杂度高,一般人要费老鼻子劲方能看懂。

第二种编程高手

        给一段复杂的程序,比如有7个局部变量,5层循环和if嵌套,他无法马上看出程序的意图,但是他通常会借助纸笔写写画画,最终搞定。

给一个复杂的问题,要磨叽磨叽好半天,一般用几个函数组合起来实现,这些函数职责单一明确,身段苗条,通常一两个变量,循环和if不超过2层嵌套。单一函数复杂度低,一般人都能轻轻松松看懂。

团队中的第三种高手是? 

       第一种编程高手是天生的聪明人,他们处理复杂事物的能力是天生的,可以流利的心算三位数加三位数带进位的加法。根据认知负载理论,这类人的working memory容量超越常人,他们可以将多种因素同时纳入大脑进行思考而不会出现大脑过载。他们写出来的复杂程序,一般的看法是没有掌握分而治之的正确编程风格,其实际是他们脑筋太好使,普通人为了克服认知过载而发明的编程方法对他们而言纯粹就是多此一举。当遇到更为复杂的问题时,他们自然会分而治之。缺点是不经刻意训练,他们按照自己的认知能力写出来的程序普通人维护起来有困难。

        第二种编程高手是天资正常的普通人,working memeory的容量大概就是可以心算两位数加两位数带进位的加法。但是他们掌握了解决认知负载的方法。阅读复杂代码的时候,他们借助纸笔,把对其中的小片段的分析结论先写下来,避免大脑缓存太多东西,然后就这些数量变少的中间结果再进行分析,始终保持放入大脑的东西不要太多。写代码的时候,他们无法一下子把所有的细节想清楚,因此需要分步搞定,要么先把关键步骤逐次实现好再去整合整个方案,要么先写好一个大而化之的框架,然后分头实现细节。往往写完之后会发现有一点顾此失彼,因此还要调整清理一番。特点是不管那种方法,大脑在任何一个阶段都不会过载。按照这种方法写出来的代码,也不会让它的读者大脑过载。

        对于团队来说,我们希望程序员具有第一种编程高手的天份,同时写出来的代码要像第二种编程高手那样方便理解。需要注意提升的是第三种编程高手,他们缺乏第一种编程高手的天资,同时还没有掌握第二种编程高手的技能,经常自己被自己写出来的代码搞糊涂(蠢哭了的那种)。

还在敲代码的你?属于哪种高手呢?😁😁😁

八戒推荐二

RocketMQ【实战+理论视频教程】

戳这里,搜索更多编程视频教程

阅读原文

相关文章

  • 开发团队中的两种编程高手

    来源:http://codebay.cn/post/7721.html 如有侵权,请及时联系,谢谢! 八戒推荐一 ...

  • 两种编程高手

    第一种工程师 给一段复杂的程序,比如有7个局部变量,5层循环和if嵌套,他能赤手空拳上阵,迅速领会程序意图、找到b...

  • WebStrom Live Template

    本文针对 webstrom 用户,非该用户请绕道。本文旨在提高阁下的编程效率。 在编程开发中,有两种 templa...

  • Synchronized和Lock的区别

    Synchronized和Lock的区别 并发编程中,锁是经常需要使用的。在开发中我们常用的锁有两种Synchro...

  • 团队协作开发常用的git命令

    在大型项目开发中,才用码云gitee一类远程仓库进行团队协作开发,分工开发功能模块。当自己负责的功能模块完成编程以...

  • 读《阿里巴巴Java开发手册》

    注重开发编程规范,才更有效于团队协同开发,程序猿基本很少单枪匹马了,考验的都是团队协作。注:以下的开发规范,只是人...

  • kotlin介绍

    kotlin简介 Kotlin是由JetBrains公司(IDEA开发者)所开发的编程语言,其名称来自于开发团队附...

  • Xcode代码格式化插件教程与配置

    前言 统一团队内部编程风格,提高程序的可读性以及团队的编码效率,避免团队在开发过程中因为编码风格的差异可能带来的混...

  • Kotlin,Who are you?

    一、什么是Kotlin? Kotlin,是JetBrains开发团队开发的基于JVM的静态型别编程语言,也可以被被...

  • 怎么选择专业做APP开发制作的团队?

    我有一个移动互联网的项目,但是自己不懂编程,那么如何找专业做APP软件开发团队开发制作呢?APP开发团队需要哪些人...

网友评论

      本文标题:开发团队中的两种编程高手

      本文链接:https://www.haomeiwen.com/subject/lxkxtftx.html