信息工程学院信息工程学院
  • 学院简介
    • 学院介绍
    • 学院荣誉
    • 制度建设
    • 本科专业
    • 专科专业
  • 新闻动态
    • 学院新闻
    • 学院通知
  • 人才培养
    • 教学活动
    • 教学通知
    • 精品课程
    • 实验室建设
    • 人才培养
  • 科学研究
    • 学科建设
    • 科研新闻
    • 科研成果
    • 科学研究
  • 学生工作
    • 学生党建
    • 学生管理
    • 优秀毕业生
    • 学生活动
    • 下载中心
  • 产教融合
    • 校企合作
    • 实践教学
    • 订单教育
    • 行业学院
  • 创新创业
    • 科创竞赛
    • 学生创新
    • 学生创业
  • 招生就业
    • 招生工作
    • 就业工作
    • 招生就业
  • 技术趋势
  • 审核评估
  • 中英双学位
    • 项目简介
    • 育人目标
    • 育人构架
    • 产教融合
    • 师资团队
    • 培养方案
    • 质量监控
  • 新一代技术信息中心
    • 中心简介
    • 实践教学
    • 技术趋势
    • 实验室简介
    • 实验室建设
    • 实验室安全
    • 大数据实验平台

实验教学中心

实验教学中心 新一代信息技术中心 中心简介 实践教学 技术趋势 实验室简介 实验室建设 实验室安全 网络教学平台 计算机中心
当前位置: 首页 >> 实验教学中心 >> 新一代信息技术中心 >> 技术趋势 >> 正文
【技术趋势】两种编程高手
发布时间:2016年06月20日 12:22  作者:  来源:

第一种工程师

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

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

第二种工程师

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

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

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

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

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

学校官网

学院微信

教务处

图书馆

学工处

学生信息网

毕业生就业网

江西科技学院-信息工程学院 地址:江西省南昌市瑶湖高校园区 QQ:66963506 电话:0791-88138793 邮编:330029 备案编号:赣ICP备14006564号-1 36011102000008