• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    你的编程能力从什么时候开始突飞猛进的?

    以我的体会,弄懂了散离数学之后,我的编程能力就开始突飞猛进了。如果发现看数据结构看不下去,请自学一下离散数学。

    CS专业的能力不在于编程能力源码,而是在于计算机科学本身的理论。如果仅仅是为了做一个coder,那就白费了四年的专业课程了。

    数字逻辑、计算机组成原理、微机接口、计算机体系结构、操作系统。

    如果只谈狭义的编程,以上专业完全用不上。这就难怪现在的coder整天只跑去写js和php。现在能定制Android的人为什么能吃香?能编译和优化内核的人为什么能超越99%的程序员?为什么现在很火的如机器人、无人机等领域急需要软硬双修的人做系统设计师?如果没有弄懂以上专业,连门都摸不到。

    离散数学、数据结构、算法分析、编译原理、数据库原理。

    上述五门课是写好程序的重要基础理论。如果发现自己的程序怎么写也写不好,原因就是理论不过关。对着别人的开源项目,照猫画虎也许能改出不错的代码,但人家为什么要这样设计,这样的代码结构为什么会很优秀,优秀在哪里。就说各种数据的关系,人家高手设计的数据表关系清晰,不会有冗余,而专业不过关的孩子,可能同样的数据在程序中有N份,更新起来不仅慢源码,而且常常因为访问冲突导致程序死掉。

    计算机科学专业之所以称为计算机相关诸多专业设置中的“科班”,原因就是在于它的系统性,它是专门研究“计算机”本身的,而编程能力仅仅是其中之一。对于科班出身的程序员,完全不用担心要学习一个全新的编程语言,完全不用担心接触一个全新的系统平台。以上十门课程就是万变不离其宗的“宗”。所有的API都可以查手册,所有的平台技术和缺陷都可以通过网络加以学习,但唯独系统分析和设计能力是没办法的。想要有精巧高效的设计,没有对计算机硬件系统和软件系统的原理有深刻的理解,是完全做不出来的。

    像计算机图形学、网络技术等则属于细分专业,应用面较窄,属于那种用到才学也不迟的专业,相对而言不太会影响对计算机系统的理解,因此可以稍微放低一点优先级。

    而对于软件工程这一课程,这门课程跟个人的编程能力没有什么关系。可能大多数程序员不会觉得有什么意思。对于没有在大型团队中有过经历的讲师,能讲好这一课程是有困难的,更不用说学生了。至于我当年学这门课程的时候,是一直心里犯嘀咕的,有很多问题是直到进入了企业,接触了CMM才得到解决。

    计算机科学本身带了”计算“两字,如果往深处研究,其实一切都离不开数学。往往有很多应用的问题,到了最后都归结为抽象建模的问题,数学模型有了,算法也就有了。所以如果发现某些人的程序特别简洁,可能要研究一下人家的数学水平是不是比较高。这也是回应本文前面的答案:数学很重要,想要程序写得好,请学一下离散数学。

    上一篇:黑客为什么可以做到无需知道源码的情况下找出系统漏洞?
    下一篇:国内排名前十的网盘搜索引擎是哪几个?
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    你的编程能力从什么时候开始突飞猛进的? 你的,编程,能力,从,什么时候,