|
本文由 ImportNew - Nirvana 翻译自 Tom Smith
请专注于发展你的编程技能,因为企业都在寻找最好的程序员和工程师,它们很少关心特定的语言。
DZone网站的 JAVA 生态系统研究指南将在九月发布,为了收集对 JAVA 生态系统发展现状的不同见解,我们采访了15 位熟悉 JAVA 生态系统的高管。
下面是我们采访的名单:
Joel Depernet (Axway 公司全球研发EVP)、Sacha Labourey(CloudBees 公司CEO兼创始人)、Rick Reich(Development Heroes 公司CEO)、Asad Ali(Dynatrace 公司主要软件开发人员)、Lisa Hamaker(Dynatrace 公司市场经理)、David Park(HackerRank公司产品VP)、Charles Kendrick(Isomorphic Software公司CTO兼创始人)、Wayne Citrin(JNBridge 公司CTO)、Raymond Augé(Liferay 公司高级软件架构师)、Laura Kassovic(MbientLab 公司创始人)、Cameron Wilby(Origin Code Academy公司联合创始人)、James Faulkner(Red Hat公司技术推广)、Paul Trowe(Replay Games公司CEO)、Calvin French-Owen(Segment 公司CTO兼联合创始人)。
我们问受访者“Java 开发人员在工作中需要记住那些东西?”,下面是他们告诉我们的答案:
1.Java已经存在很长时间了,当你使用不同的软件模式,请确保你清楚你的代码如何影响生产。请考虑的更全面一点,站在更高的角度全面的考虑问题。如果你给其他程序员提供 API,请严格按照约定编写。
2.请读一本关于在有限内存设备上编程的书。学习如何在小型设备上操纵像素。一旦你学会了这些,那你就可以在任何设备上工作了,因为这些设备相对来说,运行更快、内存更大。
3.不要觉得使用 Java 不够酷。如果你学会了 Java,你就进入了一个巨大的健壮的生态系统。
4.新的开发者需要 理解面向对象编程的好处、语法,并确保对象容易理解。代码库能够帮助开发者上手。像Lynda 和 Dzone 这样的网站提供了很多Java 相关的资源,所以 Java 比任何其他语言都更容易入门。 因为 JavaScript , Java 很酷。聪明的开发者反复重申要少使用JavaScript 。Java 提供了JavaScript一样的功能,能够跨浏览器支持,所以用Java 你能做任何事情,不用考虑浏览器兼容性。
5.要有一个主技能来确保你有一个稳定的工作。寻找第二个你感兴趣的技能,这能够为你提供“开发者保险”。保持敏捷。寻找你能够找到的工作,学会批判性地思考问题。
6.记住要使用工具。它越来越好,但仍落后于其他平台。我对于容器化技术有很高的期望。基于云的开发工具正在不断完善。他们将预置到工作中使你的工作更简单。确保工具好用。
7.开发者应该记住Java 的静态类型检查是自动化测试的另一种形式。构建代码的时候应该更多的用静态类型检查而不是其他形式的自动化测试。具体来说,我们发现,如果一个开发人员使用Java 语言的时间比其他语言多的话,他们更倾向于花费时间构造代码来让编译器检查错误条件。通常这种努力比花在自动化测试上更好,自动化测试可能会产生更多的错误条件。
8.Java 不一定是所有应用程序的最佳解决方案。例如,JVM 比同等的C 程序更消耗内存,科学计算和数值分析通常用Python 来写,C# 更适合异步编程。
9.Java 有非常成熟的标准库。详细的结构已经实现。请学会欣赏利用这些可用的工具。
10.试着学习理解某一领域的软件,我偏爱Java。如果你掌握的知识太广,那么你很难再取得进一步提升。你需要理解基础架构。不要因为需要花费太多时间学习就放弃某一语言。你对软件幕后工作原理了解的越多,你就会变得越有价值。知道事务如何运作的原理是基础。请保持不断学习。
11. 掌握完整的Java 知识是一种良好的基本技能。这是开发者的关键投资。学习掌握Java代码库,在众多提供相似功能的代码库中,确保为你需要解决的问题选择最佳的解决方案(例如有的提供安全补丁,其他的没有提供)。
12. 企业都在寻找最聪明的工程师。他们很少关注特定的语言。开发人员需要有很强的编码能力,熟悉计算机基础知识,了解真实世界的应用程序。知道如何编写Java应用服务器程序,理解如何调用API。理解计算机科学的核心和算法。企业需要基础扎实的开发人员。请在工作中实践核心算法和熟悉的数据结构。
向专家学习。不要重复造轮子。在学校努力学习。在Java 生态系统中寻找最简单的达到目标的方法。参与开源。从修改一行bug 这种小事做起,不断进步。
程序猿的技术大观园:www.javathinker.net
|
|