【java】日常开发中提升技术的几个建议

这篇具有很好参考价值的文章主要介绍了【java】日常开发中提升技术的几个建议。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

日常开发中,都是在做业务需求,如何提升自己的技术呢? 所以,本文作者整理了提升技术的13个建议,小伙伴们,一起加油。

1. 打好基础,深入学习语言特性

比如,对于Java程序员来说,要了解Java语言的基本概念和核心特性,包括面向对象编程、集合框架、异常处理、多线程等等。可以通过阅读Java的官方文档、教程、参考书籍或在线资源来学习。
如果最基本的基础都不扎实,就不要谈什么提升技术啦。 比如说:

  • 你知道HashMapConcurrentHashMap的区别嘛?
  • 在什么时候使用ConcurrentHashMap?操作文件的时候
  • 你知道在finally块中释放资源嘛?
  • 你知道在哪些场景适合用泛型嘛?

因此,要提升自身技术,首先就是要把基础打扎实。 有些小伙伴说,上班没时间学基础呀,其实不是这样的,基础这玩意,每天地铁上下班看看,下班后回到家在看看,周末在家看看,多点写写代码,一般一两个月,你的基础就很好啦。

又有些小伙伴说,如何提升Java基础呢? 可以:

  • 阅读Java相关书籍或教程,如Java编程思想、Java核心技术、Java虚拟机、菜鸟教程等
  • 阅读Java博客和社区参与讨论:关注Java领域的博客、论坛和社区,了解最新的技术动态和解决方案,与其他开发者交流。
  • 多实践,多敲代码:在B站找个Java基础视频看,平时多实践、多敲代码

2. 熟悉掌握常用的开发工具

工欲善其事,必先利其器. 所以一位好的程序员,往往编码效率就更高。而提升编码效率,一般要求熟悉并灵活应用工具.比如IntelliJ IDEA、Maven、Navicat、Eclipse等。熟悉运用这些工具,可以提高开发效率。

我举个例子,比如你熟悉掌握IntelliJ IDEA的快捷键,三两下就把实体类的setter和getter方法生成了,而有些的程序员,还在一行一行慢慢敲。。

比如,你知道:

  • IntelliJ IDEA中的神仙插件 (写代码必备)
  • IDEA生成序列号serialVersionUID快捷键
  • intellij idea 的全局搜索快捷键方法
  • IntelliJ IDEA经常使用快捷键

3. 日常工作中,总结你踩过的坑

优秀的程序员,之所以优秀,是因为他会总结踩过的坑,避免重蹈覆辙。所以,建议你,日常开发中,如果你踩了哪些坑,就需要总结下来.茶余饭后,再温习温习.
比如,你知道:

  • Redis分布式锁的10个坑
  • 接口设计文档的12个注意点
  • 平时开发中遇到的问题你是否遇到过?

这些都是我工作总结出来的,也希望你们日常开发中,遇到哪些坑,都总结下来哈。

4.工作中,阅读你项目优秀的代码和设计文档

孔子说,三人行,必有我师。大家平时在看代码的时候,不要总吐槽着项目的烂代码。其实,可以多点关注写得优秀的代码,然后看懂别人为什么这些写,仿造着来写。

当然,一些好的设计文档也是:人家为什么这么设计,好处在哪里,不足又在哪里,如果是你来设计,你如何思考等等。把好的设计,读懂后,记录下来,变成自己的知识.

5.日常工作中,总结一些通用的技术方案.

在日常工作中呢,注意整理一些通用的技术方案。

比如幂等设计、分布式锁如何设计、分布式事务设计、接口优化、限流设计、分库分表设计、深分页问题解决等等. 大家可以看下我之前的一些通用方案设计的文章哈:

  • 保证接口数据安全的10种方式
  • 分库分表15道面试题
  • Redisson分布式锁的使用(推荐使用)
  • SpringBoot 实现 PDF 添加水印的方式
  • 常见库存设计方案-各种方案对比总有一个适合你
  • Mysql和ES数据同步方案汇总
  • Java 定时任务

当然,也建议你,日常开发中,把自己遇到的一些通用设计方案总结下来,熟悉掌握这些通用技术方案。

6.参与技术讨论,积极技术分享

参与技术讨论和交流,可以有助于你与其他Java开发者分享经验、解决问题和学习新知识。进行技术分享,可以加深自己的理解、建立专业声誉、促进个人成长、为技术社区做贡献等等。

比如你做需求遇到的一些难题,都可以跟有经验的同事、或者技术leader讨论讨论。一些常见的难题,讨论完可以记录下来,然后做技术分享

7. 主人翁意识,积极攻克项目的难题

作为一名开发工程师,具备主人翁意识并积极攻克项目的难题,是非常重要的。遇到项目中的比较棘手问题时,先不管是谁的问题,我们都要持有主人翁意识,积极主动地找到解决方案并采取行动。

而在技术找解决方案的过程,我们也就成长了。当攻克问题后,你也获得领导的认可,好绩效不远了,一举多得!

8. 思考项目中,哪些可以提升效率

日常开发中,几乎大多数程序员都是在进行增删改查。如何如何避免自己成为平凡的增删改查程序员呢。

我觉得可以这样做:平时工作中,思考项目中,有哪些可以提升的效率。包括熟悉开发工具、掌握适当的调试技巧、熟悉常用框架、持续学习和关注技术发展等等。

比如:

  • 好的的debug调试技巧,可以让你快速找到问题
  • 再比如一个插件easyyapi可以一键让你快速生成yapi接口文档,而不用一个一个字段手工敲接口文档。

当然,日常开发中,还有很多可以提升效率的技巧/工具,等待我们去发现。

9. 熟悉你的业务,让自己不容易被替代

我们普通程序员,多数都是做业务的。一般工作个五年以上,水平差不了太多。如何避免自己被淘汰呢?我个人建议是,尽量做到熟悉你们做的业务,让你变得不容易被替代。

10. 多看看你的系统,可能存在哪些问题,如接口耗时、慢SQL等等

一般的系统,多多少少都有些问题。比如接口耗时过长、慢SQL、fullGC频繁等等。

首先需要掌握这些技能,比如如何优化接口,如何优化慢SQl、fullGC如何排查等等。大家可以看下这几篇文章哈:

  • 如何解决RocketMQ消息堆积的问题
  • 你在项目中遇到过慢查询问题吗?你是怎么做SQL优化的?
  • 如何定位线上问题?
  • java异常分类和异常处理以及面试中常见的问题

11. 学以致用,将理论知识应用到实际项目中

很多小伙伴说,看过很多计算机相关的书,阅读过很多博客,背了很多八股文,依然做不好一个系统。

我觉得,大家可以多点思考,把平时积累的东西,应用到实际项目中。背八股文不是没用,你可以把它应用到实际开发中的。

这个表面看起来就是一个常见的八股文知识点,工作中似乎没用到。但是我在工作中,就用到这种类似的异步思想:

比如发起一笔批量转账,但是批量转账处理比较耗时,这时候后端可以先告知前端转账提交成功,等到结果处理完,再通知前端结果即可。

再比如,MySQL索引15连问,抗住!,你是不是可以回头看看,你的系统中,那些sql的索引加的是否合理呢?是不是可以思考一下如何优化,对吧。因此,就是要学以致用。

12. 阅读一些优秀框架的源码,如spring、rockectMq等等

如果你有空余的时间,就建议你看看一些优化框架的源码,比如spring、rockectMq等等。

对于spring源码的话,可以按模块来呀,比如aop,控制反转,spring事务等,你先写个demo,然后debug跟踪流程,通过调试器逐步跟踪源码执行过程,观察各个方法的调用关系和数据变化。最好是结合电子书一起,如(Spring源码深度解析这本书一起)

优秀框架的源码,我们可以学习到很多编码思想的,加油。

13. 多编码,少偷懒,养成编程的好习惯

作为程序员,一定要多打代码,不要偷懒,代码敲多了,你就会了。还有就是,少点偷懒,坚持!努力!养成热爱编程的好习惯。

总之,提升技术需要不断学习、实践、总结和积累经验。文章来源地址https://www.toymoban.com/news/detail-447709.html

到了这里,关于【java】日常开发中提升技术的几个建议的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 提升技术的13个建议

    比如,对于 Java 程序员来说,要了解 Java 语言的基本概念和核心特性,包括 面向对象编程、集合框架、异常处理、多线程 等等。可以通过阅读 Java 的官方文档、教程、参考书籍或在线资源来学习。 如果最基本的基础都不扎实,就不要谈什么提升技术啦。 比如说: 你知道 Ha

    2024年02月08日
    浏览(40)
  • 【ES6 Map数据结构】建议日常开发操作数组时使用 new Map

    算法使用 Map 还算是不少的,日常开发也可使用 new Map 替代某些数组操作,活到老学到老 JavaScript的对象 (Object) ,本质上是键值对的集合 (Hash结构) ,但是传统上只能用字符串当作键。这给它的使用带来了很大的限制 为了解决这个问题,ES6提供了Map数据结构。它类似于对

    2024年01月17日
    浏览(36)
  • 协众信息技术设计师平时每天会看的几个网站有哪些?

    有些设计师私信问道:设计师平时每天会看的几个网站,今天为设计师们,推荐几个必备的设计网站           90设计   90设计网站是集合了稿定设计、花瓣网、千图网、千库网、和写电商教育学习视频网站的功能,可以下载PSD格式素材源文件,所解决了花瓣网上所没有的痛

    2023年04月11日
    浏览(35)
  • Java中ElasticSearch的几个简单查询

    1 term查询 单值查询,代表完全匹配,类似于mysql中的 = 。在搜索前不会对进行分词,直接去文档分词库匹配。筛选出一个字段等于特定值的所有记录。 会对查询结果进行打分(score),分值越高的数据排名越靠前。 在SQL中:  ES中的查询有很大差别,它把sql中的一条数

    2024年02月06日
    浏览(29)
  • #课程笔记# 电路与电子技术基础 课堂笔记 第3章 电路分析的几个定理

    激励:电流源或电压源 响应:电流或电压 叠加定理一般用于已知激励或响应中的一种,求另一种。做法就是,每次只求一个激励作用下的响应,将其他激励置零, 置零 的具体做法是, 电压源变短路,电流源变断路 。之后将所求得的所有响应叠加,就是所有激励共同作用下

    2023年04月08日
    浏览(39)
  • 【大数据】大数据运维学习前必须知道的几个常识(1),附架构师必备技术详解

    如果我们选择了强一致性,又要满足分区容错性,就势必会牺牲一部分可用性。 注意: CAP理论只适用于分布式系统 CAP理论的典型分布式系统 选择CP: HBASE 选择 AP: zookeeper,HDFS 选择CA: elasticsearch 大数据技术栈 数据采集和传输层: flume. logstash, sqoop,kafka,pulsar,HUE 数据存储层

    2024年04月15日
    浏览(32)
  • 【Java】Java中解决跨域问题的几种方法(建议收藏)

    我们在开发过程中经常会遇到前后端分离而导致的跨域问题,导致无法获取返回结果。跨域就像分离前端和后端的一道鸿沟,君在这边,她在那边,两两不能往来. 定义 跨域(CORS)是指不同域名之间相互访问。跨域,指的是浏览器不能执行其他网站的脚本,它是由浏览器的同

    2024年02月11日
    浏览(30)
  • Java避免死锁的几个常见方法(有测试代码和分析过程)

    目录 Java避免死锁的几个常见方法 死锁产生的条件 上死锁代码 然后 :jstack 14320 jstack.text Java避免死锁的几个常见方法 Java避免死锁的几个常见方法 避免一个线程同时获取多个锁。 避免一个线程在锁内同时占用多个资源,尽量保证每个锁只占用一个资源。 尝试使用定时锁,使

    2023年04月16日
    浏览(69)
  • 第七篇【传奇开心果系列】Python自动化办公库技术点案例示例:深度解读数据分析数据挖掘的几个重要算法为代表的核心技术

    在对大学生数据分析和数据挖掘时,会接触到许多重要的算法,这些算法代表了数据分析和数据挖掘领域中的一些核心技术,大学生可以通过学习和实践这些算法为代表的核心技术来提升自己的数据分析能力和数据挖掘探索分析能力。深入理解这些算法为代表的核心技术的原

    2024年03月19日
    浏览(43)
  • 【前沿技术RPA】 RPA开发人员的日常

    🐋作者简介:博主是一位.Net开发者,同时也是RPA和低代码平台的践行者。 🐬个人主页:会敲键盘的肘子 🐰系列专栏:UiPath 🦀专栏简介: UiPath在传统的RPA(Robotic process automation)的基础上,增加了See(AI通过计算机视觉阅读用户的计算机屏幕)和Think(通过机器学习来发现

    2024年01月19日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包