你对自己真正的编程能力了解多少.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
你对自己真正的编程能力了解多少 你对自己真正的编程能力了解多少quest; 前言:我的朋友,在读书的时候,就自己搭建过几个网站,在当时同学之间算挺厉害的。但是有一天他告诉我,自己虽然做了很多东西,但是真正自己亲手写的代码却少之又少,大多数代码差不多都是把别人的整合一下。而到了工作的时候,那些曾经以为编程全是手动一行一行敲代码的想法,在靠一次次复制黏贴后就能解决问题的现实面前改变了。虽然依赖谷歌和复制别人的轮子可以做出很多东西,但是除了利用搜索引擎的能力提升以外,编程能力并没有显著的提高。而且这样的现象使他产生了一个疑问,到底什么样的能力才算是真正的编程能力呢? 播放GIF 什么是系统编程能力? 首先,我们知道,计算机科学有两类根本问题: ①理论:算法,数据结构,复杂度,机器学习,模式识别等。理论问题注重的是深度,它是对在给定的计算能力约束下如何更快更好解决问题的追问。 ②系统:操作系统,网络系统,分布式系统,存储系统,游戏引擎等。系统注重的是广度,它是对一个现实需求如何在众多技术中设计出最多又快又好又省的技术组合的追问。 根据以上问题,主要是属于系统编程能力这块的问题,这类能力由于没有简单高效的考察方法,所以很多系统的苗子都因为缺少激励和正确引导而隐没。比尔盖茨曾遗憾的表示,现在许多学习编程的人常把编程看作解各种脑筋急转弯的问题。而其实做系统,不是让你“重复发明轮子”,而是“重新制造轮子”才行。可以这么说,系统的编程能力正体现在“重新制造”的能力上。 我们不妨问自己一些问题,当一个已有的部件不完全符合你的需求的时候,你能改进它吗?如果你用的部件中有bug,你能把它修好吗?在网上繁多的类似功能的部件中,谁好谁坏?为什么?差别在哪?一个开源代码库,你能把它从一个语言翻译到另一个语言吗?从一个平台移植到另一个平台吗?能准确估计自己翻译和移植的过程需要多少时间吗?能准确估计翻译和移植之后性能是会提升还是会下降吗? 总的来说,系统编程能力体现在把没用的代码变成有用的,把现有的代码变得更好,体现在能根据一个做好的轮子画出轮子的设计蓝图,并且解释出设计蓝图中的关键所在,对于哪些是次要的,哪些是不容触碰的,哪些是可以改进的都要了然于胸。如果你一点不懂理论,还是应该学点的。对于系统性能的设计上,不懂是绝对不行的。 怎么提高系统编程能力呢? 我们都知道,画鸡蛋和会画鸡蛋只是一字之差,但是差之毫厘可能就已失之千里,会画鸡蛋的人就是从多画鸡蛋开始的,本质上是驯服你的手指,感受阴影线条和笔触。所以,自己多写点代码也是一个道理。当你把部件一个个都换成自己手写,写出个编译器、渲染器、操作系统、web服务器或者是web浏览器,然后再和现有的部件比一比优劣,注意,从性能到易用性,一定要仔细对比,发现自己的优点和不足,然后认真改进。 达芬奇鸡蛋素描 虽然人们常说,多研究别人的代码怎么写,但是实践起来却没有那么容易。原因是许多轮子的设计思想和技术都无可厚非,但是设计和制造过程却杂乱无章,乱成一团,所以多研究别人代码的前提是轮子相对简单,如果轮子相当复杂,那就只好量力而行,浅尝辄止了。题外再提一点,其实轮子不好拆是一个非常严重的问题。重复发明轮子固然是时间的浪费,但当轮子复杂而又不好拆的时候,尤其是原来造轮子的人已经不在场的时候,重新发明和建造轮子往往会成为无奈之下最好的选择。 程序本质是逻辑演绎的形式化表达,记载的是人类对这个世界的数字化理解。不能拆的轮子就像那一篇篇丢了曲谱的宋词一样,能读,却不能唱。以上内容仅代表个人观点,欢迎大家各抒己见,谈谈自己对编程能力的看法。 播放GIF 文章答案来源:刘贺

文档评论(0)

软件开发 + 关注
官方认证
服务提供商

十余年的软件行业耕耘,可承接各类需求

认证主体深圳鼎云文化有限公司
IP属地陕西
统一社会信用代码/组织机构代码
91440300MA5G24KH9F

1亿VIP精品文档

相关文档