首页 》答疑解惑 >

什么才算是“真正的”编程能力?

发表日期:2019年06月26日 文章编辑:IT实战

什么才算是“真正的”编程能力?
真正的编程能力,两个词概括,建模+实现
 建模能力如何提高?关键在于分析问题
      理解越深,预测能力越强,自己的智慧才越好发挥。这就是学习软件编程最快的方式之一 “造轮子” ——造轮子就是为了深刻理解轮子、预测轮子的行为。
    实现能力如何提高?关键在于工具的使用(数据结构,算法基础,语言,框架,工具,软件)把目标转化成指挥方案,这种 “做应用题” 的能力你知道吗?不会告诉你建模的知识点,也不会透露全部必要条件,增强这个能力你需要 “理解垂直行业的业务逻辑”。
当用户觉得我们的东西功能齐全、用起来得心应手,恭喜你,你已经成功了! 
1.编程能力是一种解决问题的能力如果问题没能很好地解决,知道再多也没用。
2.编程能力是一种运用机器解决问题的能力什么问题可以被机器解决?如何让机器更好地理解问题?不同的问题适用不同的编程语言。让机器更高效率地解决问题吧! 
3.编程能力是一种抽象问题的能力借用轮子省力省时间,而想要高效地借用轮子,就需要将问题分解再分解,抽象再抽象。任何一个实用的系统都需要进行大量的分拆和组合。所以系统设计是编程能力里的高级技能,合理的假设、简化问题尤其有难度。
      高手和新手的区别在于:新手往往不知道轮子的适用范围,而高手不仅轮子多且熟知轮子间的差异,不同的问题用不同的轮子,及时找不到合适的,也可以自己动手改造。当然能知道怎样快速在搜索引擎里搜出轮子也是一种能力。
4.编程能力是一种需要考虑扩展性的能力算法竞赛中的很多算法考虑的是单机的内存算法。计算模型经过高度抽象,在实践中机器的模型更为复杂。比如单机的多级结构带来的各种时间空间复杂度的取舍平衡,多机网络中如何能在提高单机性能外进一步优化整体性能。
    除了在机器端的扩展,在程序员一端的扩展也很重要。复杂的问题和工程往往意味着团队协同以及更长时间的开发维护。
5.编程能力是一种取舍的能力局部的最优解未必是全局的最优解。如果一个美妙的解决方案需要将完工时间向后推迟一两个月,那么你就需要考虑是否先使用平凡方案解决问题,之后再进行优化。当你的工作延后会阻碍别人的工作时尤其如此,不要为了追求心理满足而花很多时间放在一个漂亮的轮子上去(参考 Amdahl 定律)。
6.编程能力是一种预见未来的能力
目前的方案有哪些假设和局限性,在何种情形下会遇到问题甚至崩溃。在未来出现问题时问题是否需要重新定义,系统是否需要重新设计,代码是否需要重构或优化等等都需要未雨绸缪。
7.编程能力是一种工程能力无它,唯手熟尔。
如何去提升编程能力?在约定的条件下,对自己的模型和实现能够知道(how),和为什么(why)的情况下,选择最合适的方案建模并有能力实现设计来满足需求。
    提高编程能力的方法:学习 + 建模 + 实现(造轮子或者仿造别人造轮子)

 *版权声明:转载文章和图片均来自公开网络,版权归作者本人所有,推送文章除非无法确认,都会注明作者和来源。如出处有误或侵犯到原作者权益,请与我们联系删除或授权事宜,感谢原作者。
相关新闻

济南华育学员:没有华育就没有我们的今天!

济南华育快讯:近日,刚刚就业不久的17-0910Java班学员代表李鑫铭与同学孔杰、孙磊、杨林一起来到济南华育

2018年01月05日

济南华育705网络营销班毕业啦

2018年给自己定个小目标,比如像他们一样实现高薪就业。少眺望、少回头,朝着梦想,大步向前,好的改变什么时候都不嫌晚,2018年,来华育国

2018年01月08日

考生要不要扎堆热门专业,济南华育为你解忧

考生要不要扎堆热门专业,济南华育为你解忧 一年一度的高考结束了,随着统招分数线的公布,填报志愿成为广大考生和家长们面临的头等大

2019年06月26日

高中生学什么技术有前景?

高中生学什么技术有前景 360行,行行出状元。众多的行业,五花八门的技术,进入什么行业,学什么技术比较好呢? 每年的高考和中考结束

2019年06月25日

高考生,选专业与选城市同等重要?!

部分省份今天就可以查询高考成绩了,大部分的考生和家长们对院校和专业的选择也越来越明确,但也仍

2019年06月24日

昔日济南华育的学长,今天变身招聘官,回来抢人了!

济南华育快讯,今天对大多数人来说是非常平常的一天,可对于济南华育Java20190226 班的同学们来讲确是既紧张又兴奋。因为今天是他们以“软件工程师”的身份参加的第一次面试,而且给他们面试的是华育的学长。

2019年06月22日

热点推荐