Java工作环境推荐
自我介绍
第一次写博客,先简单自我介绍一下.我是一名程序员,2年多工作经验,之前在成都工作,现在在重庆一家车联网公司.技术一般,但保持有热情,喜欢折腾新的技术,因为我觉得技术能改善我们的生活,提高工作效率.欢迎大家多多交流.
开发环境推荐
好了,开始今天的主题.
今天主要想给大家讲的是我们的日常开发环境.工欲善其事,必先利其器.所以一个好的工作环境对一个程序员是很重要,可以提高工作效率哟!
开发工具
jdk
这个应该不用多做介绍,应该做java开发的都离不开吧.但这里提一句,jdk其实不只是我们日常使用的开发工具包,同时也是一套质量很高的java源代码,因为这都是经过千锤百炼的代码.而且源码能让我们明白自己日常开发工作中实实在在在用的东西,就初级阶段而言,我觉得源码的阅读和理解远比学习现在流行的分布式、微服务这些流行的概念要重要.虽然jdk源码中的锁、队列这些东西只是在本地单节点执行的,但其实真的原理和分布式中的是一样的,只是一个是针对的线程,一个是针对的机器
idea
工作时间不是很久,所以接触的编辑器不多(应该说是一直都是用的这个,哈哈哈),有时候真的觉得对于java开发,这个真的是个神器,你能想到的别人都替你想到了.这里简单举几个例子让大家感受一下
开发提示
http接口测试工具
对于http测试,也有许多实用postman测试的,我之前也用的是postman,感觉也挺好用的,如果大家没有用idea,也可以使用postman.如果是使用的idea,可以试一下这个自带的http测试工具
- 数据库工具
jprofiler
这是一个性能分析工具,可以在线连接远程jvm,实时观察jvm的运行情况,也可以导入一个jvm堆栈文件,观察内存使用的情况.可能这个在你做开发一两年内都用不到,那是因为还不涉及到性能调优的工作,当你真正的关注到jvm内存问题时(比如jvm明明进程还在,但接口就是不通),这个工具就很有用了,它能清晰地让你看到jvm中内存的使用情况和各个类占用的内存情况
chrome
chrome浏览器,其实对浏览器没有多少选择,只是因为一开始就用的这个,已经习惯了,切其他的切不过去.之前用ubuntu的时候有接触火狐,但后来还是算了,得花时间再去熟悉一次.说一下为什么觉得chrome已经可以了,可以满足日常需求.
- 有丰富的插件
chrome的商店有丰富的chrome插件,包括主题,广告拦截,日程提醒等众多种类的插件,满足多方面的需求
- 能满足日常的调试需求
chrome的调试器也很方便地让前端开发人员进行页面的调试,问题的定位.当然这个基本上每个浏览器都支持,只是样式有点差别.
有道词典
翻译工具,可以翻译单词和短句.曾经见过一个同事读英文文档,每读一句都是把原文放入翻译器,然后再读中文,然后觉得也很牛*.
程序设计
作为一个it工作者,我觉得不只是完成好coding这个一环节就可以了,虽然coding的能力对每一个程序员都很重要,但它不是全部.每个程序员除了会coding的基本能力,其实多多少少都应该会一些程序设计的东西,因为这会为你的工作加分,更能更加完善你在软件行业的工作的完整性.这里介绍两个设计工具
drawio
drawio是一个用于架构设计的工具,可以用于系统架构设计、流程设计、时序图设计、uml设计等,可以在线使用,github上也有开源的客户端.平时使用客户端版比较多,这里贴一下客户端地址,大家可以试一下.
https://github.com/jgraph/drawio-desktop/releases
还有其他很多软件设计工具,可能比这个使用更方便,但大多都是要收费的.个人觉得这个已经可以满足日常工作使用,而且免费,所以跟大家推荐一下
mysql workbench
这个是安装mysql时自带的一个图形化工具.以前一直没怎么注意,但后来发现还是挺好用的.这个工具的数据库操作方面的功能没怎么用过,因为主要都是使用idea的数据库工具.主要使用了mysql workbench的数据库设计功能,觉得还挺好用的,而且免费,装mysql数据库的时候就可以顺带安装了.相信很多小伙伴都是用navicat的比较多,但这个的数据库设计功能也可以试一下,个人觉得还是不错的!
版本管理
版本管理我觉得对开发人员来说,甚至是对其他行业的工作人员都是很重要的.就算不是开发,也需要维护自己的工作成果的版本,这个事交给工具来办就会大大地提高自己的工作效率.我使用过两个版本管理工具,一个是svn,另一个是git.svn已经忘得差不多了,而且也感觉不是很好用.所以今天推荐是git,有时候觉得这种工具就是个神器,可以解决很多我们日常无法用人来完成的任务.当然这种神器也是由被称作"神一样的男人"开发出来,他的另一个作品就是现在开发都离不开的linux系统
git
git是一个源代码管理工具,可以记录开发阶段中的各个提交版本,提供记录、回滚、合并不同版本等功能.这里又要啰嗦两句.从我工作两年多的经历来看,我所接触到的开发人员没有几个能把git用明白的...我也不知道为啥.大多都只是知道简单的提交、更新这种简单的操作,对于代码合并、版本对比、代码回滚这些操作基本上都不会.其实我觉得git的文档已经很详细了,而且在文档中还穿插了很实用的示例,所以说想要系统地学习git其实挺容易的,但不知道大家为什么不去深入学习一下这种很重要的工具.这里贴一下git的官方学习地址
https://git-scm.com/book/zh/v2
远程
介绍两个在日常工作中在用的远程连接工具,一个是用于远程服务器操作的,一个是用于远程服务器文件传输的
xshell
xshell是一个用于连接远程服务器的工具,提供多窗口操作,但免费版的每一个窗口最多支持四个会话.一直用的就是这个远程连接工具,但还有一个看到不少开发和运维也在用叫securecrt,没怎么用过,但看着也还行,大家可以自己选择一下,选个自己喜欢的.
winscp
开始一直用的xshell远程连接工具,传输文件也是通过sz和rz,但这种方式很慢,而且成功率很低,稍微大一点的文件就会传输失败.后来接触了winscp这个软件,发现挺好用的,传输文件十分方便,而且速度很快.
文本
notepad++
这个软件给我的印象就是简洁、快速、易用.启动快,有什么想临时记录的就新建个tab,然后记下来.而且notepad++还有很多插件可以用,这个我只用过compare插件,可以比较两个tab之间的差异,其他的暂时没涉及,大家感兴趣可以自己试下
福晰阅读器
这是一个pdf阅读工具,没什么好说的,我用着还行,看大家自己喜好
笔记
atom
这个是github出品一款文档编辑器,插件丰富,可以满足代码开发、笔记功能等多种需求.而且使用相对简单,容易上手.这里需要提一下最近比较火的另一款编辑器,那就是微软开源的vs code(visual studio code),这也是一款编辑器,但可以安装众多插件,可以很方便地将其打造成一款ide.一直想找机会使用起来,但idea还是挺好用的,一时切换不过去,以后找机会再折腾一下
xmind
这是一款思维导图的软件,可以方便就行知识梳理,突出重点,延伸思路.其实很早就听过这款软件,但一直没有用起来,最近发现用xmind后,可以很好地梳理自己学到的知识,而且还能方便地复习.极力推荐!
通讯
交流软件其实没有什么好介绍的.这里说下我用过的
钉钉
阿里巴巴出品的办公软件,具备即时通讯、流程审批等功能,很方便团队之前的交流和流程管理.它还有一项让人又爱又恨的功能--"夺命连环钉",让你软件、短信、电话无所遁形...
微信
这个相信大家日常生活中也在用,就不多说了
foxmail
这是一款集中管理邮箱的软件,可以配置多个邮箱地址,进行收发邮件.这样就不用打开多个浏览器窗口了
健康
今天的重中之重来了!大家觉得程序员的核心竞争力是什么?
技术?人脉?学习能力?
不,你们都错了.程序员的核心竞争力是"身体健康".没有健康你怎么学习?没有健康你怎么加班?没有健康你怎么和年轻人拼?所以怎么在加班的浪潮中保持身体健康才是程序员最应该关心的.今天这儿就介绍几款改善工作环境的软件
f.lux
这是一款调节屏幕色调的软件.你有没有被网页的白色背景亮瞎眼?有没有因为加班查问题看瞎眼?有就用这款软件吧,它可以让你的屏幕对你更温和.
眼睛护士
这个是最近发现的一个神器.你想拥有一个关爱你眼睛的护士吗?定时提醒你眨眼休息,在你不听话的时候温柔地关闭你的屏幕.没错,这款软件就是这么个存在,赶快拥有一个吧!
mactype
有没有觉得windows的字体很丑,颗粒感很重?这个软件可以改善windows的字体,让你看起来更舒适.不管能不能像mac那样好看,但用了确实有效果!
结语
好了,今天的分享就到这儿了.希望大家多多爱惜生命,提高工作效率!通过分享也是提供一个平台供大家交流,如果大家有什么好的软件也可以在下方留言,我也会去试用.如果好用,也会继续更新此文,分享给更多的人!