作家
登录

千万不要和一种编程语言厮守终生

作者: 来源: 2018-03-12 15:02:26 阅读 我要评论

对于这一点,就是我们要说的第三个原则:

如不雅你拥有的独一对象是一个锤子,那么你看每一个问题都像是钉子。

这条规出场不实用于软件工程,但它尖利地表示了很多软件开辟的情况。很多时刻,我们选择一种说话,或一种说话支撑的对象(如Java的JMS,Python的ASYNCIO,Rails的Ruby等),是因为我们知道它们存在。如不雅我们独一熟悉的说话是Java,那么我们会将我们碰着的所有问题都适应到Java的高低文中。例如,“我须要为一个通信应用创建一个路由框架。在Java中我该怎么做呢?”这就限制了可供我们应用的对象,并工资地限制我们为完成工作选择合适对象的余地。

不要被假象所蒙蔽。进修其他说话的优势表如今我们能大年夜不合的角度去看问题,并且应用最合适该问题的对象。为了做到这一点,我们必须进修其他说话的相干警告,以及开辟人员应用这些说话解决问题的方法。例如,如不雅一个开辟人员想用C ++履行元编程,那么他或她可以应用C ++中的Template Metaprogrammming(TMP),但他或她也可以应用Java中的反射。懂得其他说话是若何解决类似问题的,可以削减我们认为它毫无用处的风险。

再说一个例子,如不雅我们须要可以或许改变一个类的运行时特点,那么一个深刻熟悉C ++错综复杂性的C ++开辟人员,可能会试图编造一个延长这个编译时说话的界线的解决筹划。而另一个C ++开辟人员,因为对Java也有必定的懂得,就可以或许说,“我爱好C ++,但Java的运行时反射更合适解决这个问题。”

解决这个问题的办法是扩大年夜你的视野,懂得其他说话的的功能和错综复杂之处。正如Andrew Hunt和David Thomas在《The Pragmatic Programmer》中给出的建议,一个好的做法就是,每年进修一门新的说话。这可不没有听上去那么轻易,进修一门说话对不合的人将意味着不合的工作。还有一个衍生问题是,我们对正在进行中的项目往往只会应用这一种说话,大年夜而使灯揭捉?习的另一种说话显得毫无用处。例如,假设我是一个Android开辟人员,根本上天天只用Java,那么进修C#可能就会显得不达时宜地浪费时光。

因为有如斯之多的编程说话任开辟人员择选,是以,优先安排进修什么竽暌癸言很重要。不侍从年夜当今最风行的说话入手(可参考《most popular languages >拥抱其他说话的古怪之处。如不雅你是一个Java开辟人员,那么你会应用包来分隔源代码的逻辑单位;如不雅你是一个Python开辟人员,那么你会应用Python的包构造做雷同的工作;如不雅你是一个C ++开辟人员,那么你会应用定名空间或前缀的类名(即“DZone_MyClassName”)。懂得你正在应用的说话的特别之处,并拥抱它们:在罗马,就入乡随俗。不然的话就像是因为你更爱好单词用意大年夜利语发音,而用意大年夜利口音说德语,如许就显得不伦不类了。当然也有可能一种说话的一个功能经久存在,然则如许的话,个中必有其原因:确保本身明白个中的事理。

【编辑推荐】

  1. Google 宣布重启 Dart 编程说话,应对法度榜样开辟挑衅
  2. 不合行业的软件都爱用什么编程说话开辟?
  3. 2018 编程说话存眷度查询拜访:Java 9 存眷度上升
  4. Swift 成为增长最快的编程说话 已经杀入前十 直逼C说话
  5. 2018第一季度最受迎接的编程说话:JavaScript 仍然位居榜首
【义务编辑:未丽燕 TEL:(010)68476606】

  推荐阅读

  新零售逆袭,大数据应用是制胜法宝

沙龙晃荡 | 3月31日 京东、微博拭魅战专家与你合营商量容器技巧实践!线下零售大年夜数据应用刚起步扶植强大年夜的数据中台,实现线上线下数字化打通,重构“人、货场”,是新零售的重要内涵。>>>详细阅读


本文标题:千万不要和一种编程语言厮守终生

地址:http://www.17bianji.com/lsqh/40612.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)