如何成为一名优秀的 Java 程序员

栏目: Java · 发布时间: 6年前

内容简介:如何成为一名优秀的 Java 程序员

许多 Java 开发人员问我:"如何成为一个更好的程序员?" ,"我如何提高自己的编程技能?"  或者 "我擅长Java开发,但不擅长解决问题的技巧"等,这是大多数 程序员 的现状。

如何成为一名优秀的 Java 程序员

在这行有很多编程语言专家,理解 Java编程语言的关键字,方法和API 是很容易的,但解决遇到的实际问题却是很难的,设计一个可复用和稳定的软件程序,并使用性能最优的数据结构和算法尤其更难。

我经常看到Java程序员在被要求在有限时间内设计和编写一个好的程序,或者解决一个难以解决的BUG, 但不可思议的是他们都有很好的Java基础和理论, 但效果不是很理想。

即使是4到6年的Java编程经验的高级程序员,有时也无法解决架构等问题; 也无法解决像 JVM,机器语言编码或有时甚至是递归链表的问题。我可能只是从成为一个好程序员的思维出发,但发现自己的不足 然后再改正是很有必要的。

如果你在编码方面感到压力和迷茫,那么你应该尽可能的写代码,如果你对  面向对象编程 缺乏理解,那么你应该尽可能地先在纸上用笔做初步的设计。

我本人发现,对于一般的程序员来说架构是一个很艰巨的问题,因为他们大多数的工作中没有做足够的编码和软件开发。

如何成为一名优秀的 Java 程序员

提高编程技巧的10条建议

如果你想成为一名优秀的程序员,你需要非常擅长数据结构 算法 OOP 编程多线程 和各种 编程基础 ,例如 递归、分离原则、 设计模式 和单元测试

编程是许多技术的组合,这意味着你在短时间内不可能学好并精通,而是需要时间和经验,但也不会自然的成长,你可以花5年时间做一个Java编程工作,但并不能说你就是一个优秀的程序员。 由于你可能大部分时间花在 J ava的理论上, 而不是真正研究编程和编码技巧上。

大部分程序员却没有练习这些基本的编程技巧。如果有一个必须要解决的问题需要写编程测试,我敢打赌,你的技术将会提高的很快。

无论如何,下面是我的一些建议清单,仅可能帮助你成为一名优秀的程序员。

1)编码,编码,再编码

为什么我的建议首先提这个编码?

因为持续编码很艰难的,同时它也是编程的核心。通过大量的编程,你也可以自己设计代码,异常处理,高并发多线程等方面实现自己的想法,然后再回到相应的技能上来进行不断的改进优化。如果你能在编码中输出自己的思想,这就是你成功前提。 顺便说一句,不要只是在解决问题之后就停下来,最好pass掉你的第一个解决方案,换一个新的方案再去解决这个问题。

如何成为一名优秀的 Java 程序员

2)阅读书籍

编码说起来容易做起来难,不同程序员之间代码和代码差别很大,但你怎么知道的呢?

直到你看到一个好的代码,知道一个模板的代码为什么是好的,你却不明白的他们的区别。 这就是书籍的能帮助到你的,很多时候,作者本身就是程序员出身。他们将所学经验以书的形式分享给大家。我本人也喜欢书,有一本书对我很有帮助。

如何成为一名优秀的 Java 程序员

通过看这本书,我发现了自己代码存在很多的不足,并且经常参照本书给出的案列去开发我的程序。 我建议,如果你找到这样的书,就不要错过。我也推荐你多阅读下这本经典的书,以后也会不定时的推荐一些好的书籍。

另一本类似的书是Joshua Bloch的 Effective Java ,这本书的内容有很多不错的建议。另外,通过阅读书籍,你可以 学习到 别人到知识, 只有两种方法可以对比自己的代码好坏借鉴自己的编程经验(非常有限)或从别人的经验中学习(无限) 阅读大量的书并不见的是好事情。 我认为 你不需要去阅读大量的书,而是花多次去读一两本优秀书。

3)参考开源项目,和issue

借助开源代码,特别是来自Apache、Google、和其他不错的公司和个人的一些项目来提高你的编程技巧。只需star他们的开源列表,下面的issue会教你很多。

由于大多数issue都是在优秀的程序员之间进行的,通过阅读他们的建议,和理解问题的方式,以及解决文推的方案和观点,自然而然帮你养成良好的编程习惯。 为了让自己提高得到最大化,不要只是被动的去阅读,而是去提出问题,回答问题,同时也要去关心他人的技术建议。

4)练习数据结构,算法和设计模式

我本打算把这条作为第二条,但结果却是第四条。在我看来,这是成为一个优秀程序员最关键的事情。我见过的大部分优秀程序员都非常擅长 数据结构,算法和基础知识

通过学习这些知识,你可以更有效地利用其它有用的东西。由于数据结构是任何一个程序中的关键之一,因此在解决问题时可以获得扎实的知识。 同样,编程思想,搜索和 排序 算法帮你提高开发编程技能。 你可以参考一 些书籍来掌握对数据结构和算法的了解。

5)阅读优秀的博客

阅读不错博客是也是属于阅读书本的一小部分。为什么阅读博客能帮助你成为优秀的程序员?

由于博客往往是由程序员自己编写的,大多数博客都分享他们的个人思想和经验,所以我们经常会发现博客内容和他们自己经验是相关的。而且,博客的内容一般是一小块信息,所以消化得很好。

博客还有助于学习现有语言和API的新技术和新特性。很多时候,我看到一篇博客文章中写的Java 部分中会学到了一些新东西。

6)阅读源码

如果阅读博客有助于成为一名优秀的程序员,那么阅读 源码比这个更有价值,阅读博客很容易,但阅读代码是艰难的。 阅读源码你怕吗?

如果怕,那么你应该这样做:

  • 查看主流优秀开源项目的代码

  • 你关注的程序员的代码

  • 你手头上拥有的代码

  • Java SDK中的代码

并试着了解它们是如何工作的,试着看看里面在做了什么逻辑以及它们为什么做。

找到里面的设计模式,开发技巧,刚开始你会发现代码很无聊,阅读起来也是困难的,但随着时间的推移,你会拥有一个良好的阅读代码感,当你犯了一个错误,你的代码感会提醒你,让你发现和别人的差距。 这种代码感是成为合格程序员的标志之一,他们往往倾向于看你的代码出了什么错。

如何成为一名优秀的 Java 程序员

7)编写单元测试

单元测试补充编程思维和编码技巧,并帮助你更好地设计代码。

任何难以测试的东西都需要改经优化。此外, 编写单元测试可以帮助你找到更好的类名,更好的抽象思维,更好的UI界面和抽象类的设计,并提高代码的质量。 但是像编码和设计模式一样,对于一般的程序员来说单元测试也是一项艰巨的任务,你会发现很多不足。有些程序员写的是微不足道的测试代码,而不是在使用场景上努力思考。

记住,在分析,设计原型和开发之后,没有什么可以替代思考的方式让你提高的更快,单元测试是另外一个机会来弥补思考代码中的场景的空白。 做一个规则为你的代码写一个单元测试。

8)做代码ReView

就像单元测试一样,代码审查是帮助成为一名优秀靠谱程序员的一项指标。 代码审查都能帮助review的人和作者,review的人给了他的代码意义,并提供有用的意见,同时作者也从他的建议中学习,通常有助于你纠正你认为的代码是没问题,但是一些问题只有其他的程序员可以看到。

如果你有机会在一个有单元测试的公司工作,把代码审查当作规范,那么你很可能是一名有大量时间休息的程序员 这两件事对于提高编程技巧非常有帮助。

如何成为一名优秀的 Java 程序员

9)与其它程序员多交流

与沟通讨论相比,阅读书籍和博客都是被动的事情。与程序员讨论一个程序问题,往往会获得更好的解决方案,这是很常见的,因为当你发言,听别人时,你会学到更多。

接着,我在与同事讨论时会发现自己的差距,缺点,代码设计缺陷。 在软件行业,程序员们更倾向于用聊天 工具 沟通。 不要只是坐在那里编码,你应该跟他人沟通,倾听,思考并和其他程序员混在一起。

如何成为一名优秀的 Java 程序员

10)多上StackOverflow和论坛,多在博客评论

这是另一种有助于提高知识的办法。通过分享知识,第一个受益人就是分享的人。 由于编程是复杂的,你往往会忘记3个月以上不使用的技术。去 StackOverflow 浏览答案 并回答,评论博客和论坛是学习知识的好方法,同时也纠正你对某个技术的错误认知。

通过把自己知识分享给他人,我们不仅帮助了别人,而且还帮助他们做自我检讨。很多时候,你会看到,有人从你的知识中受益,但你也会发现自己的不足。 每个程序员都想成为一名优秀的程序员,但不是每个人都能达到这个境界。

除了你拥有丰富编程和解决Bug的天赋,你还需要付出更多的努力,不断的坚持学习才能让你成为一名优秀的程序员。

接下来做的事情实际上越多,例如 大量编码,设计模式,单元测试和代码审查, 你就会变得越优秀。

如果你现在只想做一件事情,我建议你反手来个赞

出处:http://javarevisited.blogspot.com/2014/01

翻译:Tmaic

开发者技术前线 欢迎各界读者投稿,加群学习请回复“加群”,

免费小密圈请点击: 免费小密圈资格邀您加入


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

从问题到程序-用Python学编程和计算

从问题到程序-用Python学编程和计算

裘宗燕 / 机械工业出版社 / 2017-6-1

本书是以Python为编程语言、面向计算机科学教育中的程序设计基础课程与编程初学者的入门教材和自学读物。本书以Python为工具,详细讨论了与编程有关的各方面问题,介绍了从初级到高级的许多重要编程技术。本书特别强调编程中的分析和思考、问题的严格化和逐步分解、语言结构的正确选择、程序结构的良好组织,以及程序的正确和安全。书中通过大量实例及其开发过程,展示了好程序的特征和正确的编程工作方法。此外,书中......一起来看看 《从问题到程序-用Python学编程和计算》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

随机密码生成器
随机密码生成器

多种字符组合密码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码