1、拥有坚实的基础并理解面向对象原则

Java开发人员必须深刻理解面向对象编程。如果没有面向对象编程的坚实基础,就无法感受到像Java这样的面向对象编程语言的美感。 如果你不太了解现象对象编程是什么,即使你使用的是面向对象编程语言,你仍可能会面向过程进行编码。仅研究面向对象原则并没有太多的帮助, 我们应该知道如何使用面向对象的方式应用这些原则来设计解决方案。 因此我们需要拥有丰富的对象建模,继承,多态,设计模式等方面的知识。

2、精通核心的API

如果你不了解语言结构和核心API,那么无论你在在理论知识方面有多强大也是枉然。对于Java语言,开发者对核心的API应具有非常丰富的实践经验,如java.lang.*包,I/O,异常,集合,泛型,线程,JDBC等。当涉及到构建Web应用程序时,无论你使用哪个框架,了解servlet和JSP的概念是必须也是至关重要的。

3、持续地编码

仅仅从理论上来看事情比较简单。我们可以在理论上非常容易地解决问题。但是当我们开始实现这些内容时我们才认识到问题的深度。在这个过程中你将了解到语言限制,或在编码时设计最佳实践。 所以需要你持续编码。

4、订阅技术论坛

在技术上我们并不孤单,在论坛上会有很多人在使用着与我们一样的技术。虽然在框架上进行简单的概念验证对你来说并没有什么挑战,但当你开始在实际项目中使用它时你将面临各种奇怪的问题,并且这些问题在其官方文档中根本找不到任何解决方案。在你开始使用新的技术时,第一件事就是订阅相关的技术论坛。无论你遇到什么问题,世界上其他人都可能已经遇到过并找到了解决方案。如果你能回答其他论坛用户提出的问题那就更好了。

5、关注博客并回复

就如我上面说的你并不孤单,全世界有成千上万的热心技术狂热者在博客上发表他们对技术的见解。你还可以从其他博客和开发人员那里获得有关相同技术有价值的观点。有些人可能会发现特定的框架特征非常有用,而其他人可能会发现这些特征是愚蠢而毫无意义的,给出了他自己为什么会这样认为的原因。因此你可以看到使用这些工具的其他开发人员的好与坏。通过查看其他博客获得价值的另一种方法是回复你的观点或是提出自己的问题。

6、阅读优秀开源项目代码

一个合格的开发者学习如何去使用框架,但如果你想成为一个优秀的开发者则还需要研究各种流行的优秀的框架源码。从这些框架源码中你可以知道框架内部的运行机制及其最佳实践。同时这将对使用框架有很大的帮助。

7、了解信息技术趋势

目前开源软件项目越来越多,开源趋势愈演愈烈。当你对使用某个框架有个好想法时,它有可能已经变得过时-因为一些新框架包含的功能是该框架提供的功能的超集。另外你在使用的框架中需要解决的问题或许在新的框架中仅使用一行配置即可解决。所以密切关注技术图谱中的技术哪些将会崛起,哪些将会过时。

8、手头保留通用代码片段及工具

随着时间的推移,你可能需要反复写入/复制粘贴相同的代码/配置。可以保留像log4.properties,JDBC配置等配置文件,或者像StringUtils,ReflectionUtils,DBUtils等实工具将更有帮助。我知道这可能本身不会让你成为优秀的开发者。但是想象一下,一些合作开发人员要求你帮助从集合对象中获取属性值列表,然后你只需使用ReflectionUtil在几分钟内提供解决方案:这将使你更加优秀。

9、了解不同的软件开发方法

熟悉Agile、SCRUM、XP、Waterfall等各种开发方法。选择何种开发方法取决于客户,一些客户喜欢敏捷,另一些客户对瀑布模型更中意。所以开发者对各种开发方法有所了解将是一个加分项。

10、记录自己对于技术的理解和思考

在日常工作中,你可以学习新的更好的做事方式,以及最佳实践,架构理念等。记录这些想法,发布博客,在社区中分享。想象一下你解决了一个在做简单的POC时发生的奇怪的问题并在博客上记录下这个问题。也许世界上其他的开发人员在生产部署的应用程序上也遇到了同样的问题,这时候你的这个解决方案对他们将是多有价值。所以用博客记录自己的思考,这将在以后的某天可能会对他人或自己有所帮助!

原文链接:https://dzone.com/articles/10-things-become-outstanding
作 者:Siva Prasad Reddy Katamreddy
译 者:klein
------

9月福利,关注公众号

后台回复:004,领取8月翻译集锦!

往期福利回复:001,002, 003即可领取!

10步成为一个优秀的Java开发!的更多相关文章

  1. 利用 Docker 构建一个简单的 java 开发编译环境

    目前 Java 语言的版本很多,除了常用的 Java 8,有一些遗留项目可能使用了 Java 7,也可能有一些比较新的的项目使用了 Java 10 以上的版本.如果想切换自己本地的 Java 开发环境 ...

  2. 搭建一个完整的Java开发环境

    搭建一个完整的Java开发环境 作为一个Java程序员,配置一个java开发环境是必备的技能,今天给广大菜鸟初学者补上一课.环境的配置,大概就分三个1,JDK 2,Tomcat(或者其他的)3,ecl ...

  3. 菜鸟从零学编程(七)——搭建一个完整的Java开发环境

    作为一个Java程序员,配置一个java开发环境是必备的技能,今天给广大菜鸟初学者补上一课.环境的配置,大概就分三个1,JDK 2,Tomcat(或者其他的)3,eclipse(或者myeclipse ...

  4. 菜鸟学Java(十二)——搭建一个完整的Java开发环境

    作为一个Java程序员,配置一个java开发环境是必备的技能,今天给广大菜鸟初学者补上一课.环境的配置,大概就分三个1,JDK 2,Tomcat(或者其他的)3,eclipse(或者myeclipse ...

  5. 来认识一下venus-init——一个让你仅需一个命令开始Java开发的命令行工具

    源代码地址: Github仓库地址 个人网站:个人网站地址 前言 不知道你是否有过这样的经历.不管你是什么岗位,前端也好,后端也罢,想去了解一下Java开发到底是什么样的,它是不是真的跟传说中的一样. ...

  6. 如何成为一个优秀的java程序员

    Java程序员有许多应遵循的守则或最佳实践方式.本文概述了每个开发者最应该遵循的10条守则或戒律,如果不遵循它们,将会导致灾难性后果. 1. 为代码添加注释(Add comments to your ...

  7. 一个四五年的Java开发程序员,该准备哪些去面试?

    上周面试了一周,感触颇深,总结一下. 面试了公司大概有阿里,携程,爱奇艺,唯品会,途牛,bilibili,大众点评,阿里和爱奇艺是电话面试,其他现场面试. 首先,五年左右,应该算高级开发工程师,大部分 ...

  8. 五步完成一个 VSCode 扩展(插件)开发

    第一步: 安装扩展生成器 npm install -g yo generator-code vsce 第二步: 初始化一个 Hello World 扩展 yo code 图来自 CN-VScode-D ...

  9. 转:Java开发牛人十大必备网站

    原文来自于:http://www.importnew.com/7980.html 以下是我收集的Java开发牛人必备的网站.这些网站可以提供信息,以及一些很棒的讲座, 还能解答一般问题.面试问题等.质 ...

随机推荐

  1. The Ultimate Guide to handling JWTs on frontend clients (GraphQL)

    转自:https://blog.hasura.io/best-practices-of-using-jwt-with-graphql/ hasura 团队关于jwt 的实践 JWTs (JSON We ...

  2. .NET总结--WebService 配置与设置,发布

    发环境 OS:win10 企业版 开发工具:VS2017 IIS版本:6.0 .NET版本:4.6.1 Web Service 简介 Web Service也叫XML Web Service WebS ...

  3. Promise对异步编程的贡献以及基本API了解

    异步: 核心: 现在运行的部分和将来运行的部分之间的关系 常用方案: 从现在到将来的等待,通常使用一个回调函数在结果返回时得到结果 控制台(因为console族是由宿主环境即游览器实现的)可能会使用异 ...

  4. uniapp 组件传参

    父组件 <v-sub @returnDate=returnDate :backGround=backGround></v-sub> import vSub from " ...

  5. React 如何适用less

    1.使用 create-react-app 创建的项目,默认情况下是看不到 webpack 相关的配置文件,我们需要给它暴露出来,使用下面命令即可: npm run eject 2.添加less np ...

  6. Android Studio 之 LiveData 的配合使用,底层数据变化,自动通知界面

    Android Studio 之 LiveData 的配合使用,底层数据变化,自动通知界面 viewModelWithLikeData.getLikeNumber().observe(this, ne ...

  7. 设计模式 桥梁模式 JDBC

    桥梁模式是对象的结构模式.又称为柄体(Handle and Body)模式或接口(Interface)模式.桥梁模式的用意是“将抽象化(Abstraction)与实现化(Implementation) ...

  8. 冰多多团队Beta阶段发布说明

    Bingduoduo 语音Coding(Beta):项目Github地址 Beta版本新功能介绍 在beta阶段我们很好地将alpha阶段已经设计好的编辑器和shell整合了起来,推出了一个完整的ID ...

  9. Java finally未被执行的情况

    一种是先执行了用于终止程序的System.exit()方法,或进程被关闭 还有一种情况是,当前线程一直在执行,在一些业务逻辑里面跳不出来,看上去就像finally一直未被执行 线程被终止的时候也会执行 ...

  10. Gevent简明教程

    Gevent简明教程  发表于 2015-11-28 |  分类于 技术| |  阅读次数 5159 前述 进程 线程 协程 异步 并发编程(不是并行)目前有四种方式:多进程.多线程.协程和异步. 多 ...