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. Load Testing Socket.IO Web Applications and Infrastructure

    转自:https://medium.com/better-programming/load-testing-socket-io-web-applications-and-infrastructure- ...

  2. Getting A Mime Type From A File Name In .NET Core

    Getting a mime type based on a file name (Or file extension), is one of those weird things you never ...

  3. csp 201903-3 损坏的RAID5

    问题描述 试题编号: 201903-3 试题名称: 损坏的RAID5 时间限制: 1.0s 内存限制: 512.0MB 问题描述: 答题栏     核

  4. A@GC*014

    A@GC*014 A Cookie Exchanges 卡时跑了1s就输出-1 每次操作会使三个数的极差缩小一半,所以最多\(\log\)次之后就会出现\(A=B=C\)的情况,可以直接判掉 B Un ...

  5. 数列的通项公式$a_n$的求法

    前言 求数列的通项公式,其本质是求函数的解析式.重点理解内涵. 求解必备 你见到这样的式子\(a_{n+1}-a_n = m\) (\(m\)常数)你一定会反应出是等差数列,那么见到 \(S_{n+1 ...

  6. 理解 IO_WAIT 并且了解利用包括 top htop iotop iostat 工具来查看 IO 性能

    今天继续拜读「深入浅出计算机组成原理」专栏,觉得讲 IO_WAIT 这篇很有意思,正好可以结合前面的一篇讲物理硬件存速度的一块儿看. 现在我们看硬盘厂商出品的性能报告,通常会看到两个指标,一个是响应时 ...

  7. linux 配置启动supervisor详细

    参考自强学堂:https://code.ziqiangxuetang.com/django/django-nginx-deploy.html 例子中zqxt项目 安装 supervisor 软件包 ( ...

  8. YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe

    test.py import os import sys sys.path.append(])+'/lib/lib3.7') import yaml with open("default.y ...

  9. .NET项目发布到本地IIS完整流程(VS2015)

    概要: 一.安装IIS功能 二.建立发布网站 三.发布应用程序 四.发布后各种问题的解决. [可先看概要四,可避免很多坑] 具体操作: 一.安装IIS功能 选择必要的功能进行安装,重启有效. 二.建立 ...

  10. 第10组 Alpha冲刺(3/4)

    队名:凹凸曼 组长博客 作业博客 组员实践情况 童景霖 过去两天完成了哪些任务 文字/口头描述 继续学习Android studio和Java 制作登录注册界面前端 展示GitHub当日代码/文档签入 ...