当我想在工作中休息一下时,我有时会阅读技术论坛。有一种帖子是我非常喜欢的:编程语言之间的激烈战争。我喜欢这些帖子,因为你可以看到热情和聪明的人在争论,好像他们的生命在玩耍。
这些帖子有两个优点:
如果要我总结这类帖子,大概是这样的:
文章标题“Java是最好的语言”
NewJavaFanBoy:Java是最好的语言,因为它的社区。此外,它还拥有lambdas等非常酷的功能。为什么那么多人讨厌Java?
前JavaFanBoy:甲骨文杀了Java。
DotNetFanBoy:Java的进化太慢了,C#前阵子有lambdas。此外,一些关键特性,如可选参数和命名参数,在Java中没有。现在dotnet更加开源,可以用Mono在Linux上运行,Java要死了。
TrollRoxxoR:因为javadevelopersdontknowhowtowritecode
RealG33k你的两种语言都是给孩子用的,C++更好,但它只适合真正的开发者。你知道固体是什么意思吗?
臀部[医]三次锗埃克:好老好烂……你应该试试Node.js,它是基于异步调用的,速度非常快。
LinusTorvalds:Pussies,真正的开发者用C还是汇编。你不能和那些高水平的垃圾一起表演。
我讨厌PHP。我无法解释为什么;这一定是因为我14岁的时候试图学习它,它扰乱了我的大脑。但是你猜怎么着,你正在使用PHP/NGINX的服务器上阅读这篇文章(顺便说一下,这是一个很棒的服务器)。我擅长Java。所以,我可以使用一个运行在快的胖JVM。但是,WordPress是一个很好的平台。它经常被纯粹主义者看不起,但它显然满足了我的需求。我的博客的目标不是成为世界上最快的(虽然它令人惊讶但痛苦地躲过了两个黑客新闻和Reddit首页涉及500个同时连接)。我只是想要一个用户友好的界面,在那里我可以分享我的想法。
这就引出了我的观点:没有最好的编程语言,它取决于具体情况。
1.需要表演吗?
如果是的话,我们在谈论什么样的表演?
- 秒?每种语言都能做到!
- 毫秒?每一种有优秀程序员的语言都可以做到。
- 微秒?在这一步,你可以去掉所有的解释语言(比如python,这是一种很好的语言)。我知道一个调优的JVM和优秀的Java程序员可以做到这一点。我想C#也是如此。当然,纯编译语言可以处理这个问题。
但是在所有这些情况下,程序员的技能比语言更重要。
因此,在大多数情况下,开发人员的技能才是最重要的。
2.生态系统是什么?
生态系统比语言本身更重要。
我在奖学金期间使用过Visual Studio,我对微软生态系统的一致性感到惊讶。
现在,我更喜欢月食。甚至在Java社区中,Eclipse也被现在使用IntelliJ IDEA的纯粹主义者瞧不起。Eclipse是由不同的人开发的开源软件,它清晰可见(以一种不好的方式)。与Visual Studio的一致性相比,你会在Eclipse的不同插件中发现不同的逻辑。
但是,如果拥有工具很好,知道如何使用它们会更好。比如我刚开始用Java的时候,速度非常慢。我学会了炉边的一些Eclipse关键字它改变了我的开发者生活。我也寻找有用的插件,Eclipse有很多,因为它是一个丰富的生态系统。
3.在线帮助是什么?
好吧,你在用你那牛逼的编程语言,但别告诉我你对这种语言了如指掌。当你需要帮助时,掌握一门众所周知的语言是很有用的。一个简单的谷歌或StackOverflow搜索,你就可以通过Ninja_Guru_666和I_AM_THE_EXPERT得到你的答案。如果你更像一个有深度的程序员,你也可以查看官方文档,假设它存在于你正在寻找的问题中。
4.团队有哪些技能?
如果开发人员并不真正知道计算机是如何工作的,那么使用编译语言就是自杀行为。而且,与纯粹主义者相比,我不明白为什么知道(确切地)计算机是如何工作的会让你成为一名优秀的开发人员(尽管,我必须承认,这很有帮助;但是还有更重要的技能)。
最好不要使用最好的工具,而是使用已知的工具。而且,很多开发者都是粉丝男孩。使用他们喜欢的语言将有助于他们在项目中保持积极性。
5.业务方面
一个客观的观点是,看看最抢手的语言是什么。这并不意味着他们是最好的,但至少你会得到一份工作。在这种情况下,Java、C#、PHP、SQL、JavaScript显然在所有之上(至少在法国)。
而且,作为一个技术负责人,在选择一项技术之前,检查一下市场上的技能总是好的。如果你选择了最好但罕见的技术来处理你的问题,祝你好运找到技术熟练的开发者。
但2015年的事实可能会在2018年发生变化。ActionScript在不久前还是必备的。同样,使用Swift,花费在目标C上的所有时间将在几年内变得过时。
最后,我将以一个蹩脚且(我希望)明显的结论结束:没有最好的编程语言或最好的框架;现在最好的可能明天就不存在了。编程语言只是一种工具;重要的是你克服问题的方式。
本文由本站原创或投稿者首发,转载请注明来源!
本文链接:http://www.ziti66.com/net/html/161.html