同事每天早下班,原来是用了这8个开发工具

news2025/7/28 0:20:07

引言

工欲善其事必先利其器,说的就是工匠要想更加高效的做事情,就得先将工具变得锋利。那么对于程序员来说同样也是如此,如果要想每天早点下班,就必须借助于一些开发工具来提高自己的工作效率,今天慕枫就给大家总结一些工作中常用到的工具。

Everything

不知道大家在日常工作中会不会遇到这样的情况,每次找文件的时候总是为想不起来放在哪个目录而抓狂,但是还好记得文件名字,而window自带的文件搜索简直慢的离谱,另外还经常出现搜索一个文件等了半天却没有这个文件的情况,简直想吐血。如果有一款工具可以搜索本地所有的文件就好了,于是Everything应运而生。

Everything是一款Windows系统的文件搜索工具,通过它可以快速查找电脑中的文件以及文件位置,真正实现全盘搜索,而且它的体积也非常小,仅需要大约 14 MB 的内存以及不到 9 MB 的硬盘空间,搜索文件的效率大概在秒级,比windows自带的文件搜索效率高出很多倍。可以说有了Everything就可以告别到处找文件的尴尬境地,实现文件快速定位,大幅度节约文件搜索时间。

Maven helper

平时我们在进行项目开发的时候,总是不可避免的引入第三方jar包来进行功能集成,但是引入的第三方包中会不会包含和项目中现有jar包存在版本冲突的jar包,实际上我们是不好进行判断的。这就会导致经常出现jar包冲突导致的服务启动失败等异常问题,有的时候费了九牛二虎之力排查问题,结果发现只是小小的jar包版本冲突问题,非常浪费时间和精力。

而Maven Helper就是一款Java开发必不可少的Maven管理插件,没有它之前我们需要人工手动的去分析jar包版本冲突,费时又费力,通过Maven Helper可以一键找到工程中相冲突的jar包,然后通过exclude将冲突的jar包进行排除,在对应的pom文件中会自动添加<exclusion>,如此我们可以快速地去除工程中的冲突的jar包,让技术人员可以更加关注业务功能实现,尽可能的不被这些琐事浪费时间。

ProcessOn

程序员在平时的工作中除了编码实现之外,还包括了架构设计、编写技术方案等。而无论是架构设计还是编写技术方案,画图总是必不可少的,清晰明了的架构图、流程图、时序图可以帮助我们更加直观的理解业务逻辑以及架构原理。因此一款功能强大的画图软件就显得尤为重要了。

ProcessOn是一款功能十分强大的在线绘图工具,支持流程图、思维导图、UML、网络拓扑等多种结构图形绘制,甚至还支持团队协作绘制,另外由于它是在线绘图工具,屏蔽了系统间使用差异,可以随时随地进行图形绘制创作。在ProcessOn上面还囊括了海量的各行各业都可能用到的画图模板,有的时候自己没有画图思路的时候完全可以借鉴模板中的画图结构。

Apipost

在程序员的日常工作中,接口联调测试是最重要的研发工作之一,通过和别的同学进行联调测试可以发现我们的接口定义问题、检查接口调用的正确性等等。市面上的接口测试工具多入牛毛,但是都总觉得缺点意思,能测试接口的不能生成接口文档,能生成接口文档的不能进行性能测试,总之就是不能覆盖程序员所有的接口开发使用场景。

而Apipost的出现完美解决了以上问题,官方宣称Apipost = Postman + Swagger + Mock + Jmeter,,也就是说它将这几个工具的能力都整合到了一起。实际上一言一概之,Apipost是API接口一揽子解决方案。通过它可以定义接口、共享接口、测试接口、Mock接口、生成文档等等,基本覆盖了和接口相关的所有研发场景。其中支持项目团队中的接口共享我觉得是非常实用的一个能力,以前我们开发接口和别人对接的时候要么是接口文档满天飞传来换取,要么是Swagger连接发来发去,而Apipost完美解决这些问题,录入接口只有项目组的成员都可以看得到,同时还支持自动生成API文档,不要太方便。

另外接口还支持查看接口状态,主要包括开发中、已完成、需修改三种接口状态,团队中的前后端同事可以清晰明了的看到各个接口的实现状态,方便大家及时了解各个接口开发进度。同时协作日志可以查看接口的修改记录,非常实用。

MAT

内存溢出大概是程序员最不想遇到的线上异常,但是又不得不面对,因为内存溢出是非常典型的服务异常。快速的定位内存异常原因并进行修复,减少线上异常影响时间,是对程序员比较基本的技能要求。实际上在分析内存溢出的时候,我们可以借助于内存分析工具来进行,提高我们定位问题的效率。

MAT(Memory Analysis Tool)即内存分析工具,它可以帮助开发者分析Java应用的hprof崩溃文件,分析异常堆积对象快速找到内存泄漏的类及其对应的方法,方便技术人员定位分析内存泄漏问题。

Java Stream Debugger

在开发需求的时候,我们经常使用stream()流来简化循环代码,结合lambda表达式可以让变得更加简洁。但是有个问题一直困扰着技术人员就是stream()流内部不好进行debug,没法查看其中的值循环操作情况,而Java Streanm Debugger可以帮助我们解析stream()流内部数据赋值情况,方便程序员查看各个值的执行流程以及数据最终结果。

Wireshark

Wireshark是一款网卡抓包分析工具,通过它可以抓取指定网卡的所有网路数据包。主要可以应用在分析网络数据正确性、网络底层通信机制以及到底是客户端主动断开连接还是服务端断开等网络数据分析的场景。

Arthas

Arthas是阿里巴巴开源的一款线上Java应用异常定位诊断工具,不需要重启应用可以实现动态跟踪java代码,通过Arthas我们可以在线上实时查看应用内存、CPU占用等负载情况、JVM GC以及线程状态信息等等,同时它还支持不必重启服务在线进行代码热修改,这在定位线上问题测试修改后代码的执行情况的场景下非常实用,大大提高了技术人员分析问题解决异常的效率。

Arthas启动后可以attach到指定的java进程,以下便是Arthas启动后的交互界面。

 Arthas提供了丰富的命令交互,这里输入dashboard命令,可以查看当前java应用的各个线程的cpu、运行状态等信息,同时可以查看JVM中堆、年轻代、元空间以及老年代等区域的使用情况,方便我们理解java应用的内存垃圾回收情况。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/368118.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【手撕源码】vue2.x双向数据绑定原理

&#x1f431; 个人主页&#xff1a;不叫猫先生 &#x1f64b;‍♂️ 作者简介&#xff1a;前端领域新星创作者、阿里云专家博主&#xff0c;专注于前端各领域技术&#xff0c;共同学习共同进步&#xff0c;一起加油呀&#xff01; &#x1f4ab;系列专栏&#xff1a;vue3从入门…

Teradata在华落幕,国产化崛起,袋鼠云数栈会是更好的选择吗?

2月15日&#xff0c;数仓软件巨头Teradata宣布根据其对中国当前和未来商业环境的慎重评估&#xff0c;将逐步结束在中国的直接运营&#xff0c;后续进入中国公司的关闭程序。 一石激起千层浪&#xff0c;这一消息&#xff0c;在国内的To B市场引起了广泛关注。Teradata这家进入…

mongoDB的安装与使用

MongoDB安装MongoDB官方网站&#xff1a;https://www.mongodb.com/try/download/community-kubernetes-operator2软件安装权限不足&#xff1a;https://www.javaclub.cn/database/56541.htmlstep1:打开安装包直接点击Nextstep2&#xff1a;继续点击Nextstep3&#xff1a;点击自…

Oracle 12C以上统计信息收集CDB、PDB执行时间不一致问题

文章目录前言一、统计信息窗口期调查二、时区调查三、查询alert记录四、why Database Statistic Collection Job is running two times inside a Maintenance Window?五、Default Scheduler Timezone Value In PDB$SEED Different Than CDB六、总结前言 在实际工作中发现一个…

Tina_Linux_功耗管理_开发指南

Tina Linux 功耗管理开发指南 1 概述 1.1 编写目的 简要介绍tina 平台功耗管理机制&#xff0c;为关注功耗的开发者&#xff0c;维护者和测试者提供使用和配置参考。 1.2 适用范围 表1-1: 适用产品列表产品名称内核版本休眠类型参与功耗管理的协处理器R328Linux-4.9NormalS…

ESP32设备驱动-MLX90393磁场传感器驱动

MLX90393磁场传感器驱动 文章目录 MLX90393磁场传感器驱动1、MLX90393介绍2、硬件准备3、软件准备4、驱动实现1、MLX90393介绍 MLX90393 磁场传感器可以在运行时重新编程为不同的模式和不同的设置。 该传感器使用 Melexis 专有的 Triaxis 技术提供与沿 XYZ 轴感应的磁通密度成…

Matplotlib之画图模块

目录 matplotlib简介 条形图 折线图 散点图 matplotlib简介 Matplotlib 是 Python 的绘图库&#xff0c;它能让使用者很轻松地将数据图形化&#xff0c;并且提供多样化的输出格式。 Matplotlib 可以用来绘制各种静态&#xff0c;动态&#xff0c;交互式的图表。 Matplotli…

OpenCV-PyQT项目实战(9)项目案例04:视频播放

欢迎关注『OpenCV-PyQT项目实战 Youcans』系列&#xff0c;持续更新中 OpenCV-PyQT项目实战&#xff08;1&#xff09;安装与环境配置 OpenCV-PyQT项目实战&#xff08;2&#xff09;QtDesigner 和 PyUIC 快速入门 OpenCV-PyQT项目实战&#xff08;3&#xff09;信号与槽机制 …

mars3d对geojson图层分属性设置样式

开发中可能会遇到如下需求&#xff0c;在全省的数据中按某个属性⾼亮展示某市区。此时就需要使⽤分属性样式的api了。⽂档如下。GeoJsonLayer - Mars3D API文档属性是根据⽮量数据的属性进⾏匹配。可以通过 layer.graphics[0]?.attr ⽅式获取。 指导有哪些属性之后先设置…

Spark3 新特性之AQE

文章目录Spark3 AQE一、 背景二、 Spark 为什么需要AQE? (Why)三、 AQE 到底是什么&#xff1f;(What)四、AQE怎么用&#xff1f;(How)4.1 自动分区合并4.2 自动数据倾斜处理4.3 Join 策略调整五、对比验证5.1 执行耗时5.2 自动分区合并5.3 自动数据倾斜处理六、结论Spark3 AQ…

电脑录屏怎么操作,操作步骤详解,2023新版

在日常的学习、生活和工作中&#xff0c;当小伙伴想要分享一段游戏视频或者教学视频时&#xff0c;电脑录屏就显得尤为重要了。但是小伙伴你是否知道电脑录屏怎么操作&#xff1f;今天小编就分享电脑录屏操作步骤的详细教程&#xff0c;一起来看看吧。 电脑录屏怎么操作1&#…

【剑指Offer】重建二叉树(递归+迭代)

重建二叉树一、递归法二、迭代法题目链接 题目描述&#xff1a; 输入某二叉树的前序遍历和中序遍历的结果&#xff0c;请构建该二叉树并返回其根节点。 假设输入的前序遍历和中序遍历的结果中都不含重复的数字。 示例 1: Input: preorder [3,9,20,15,7], inorder [9,3,15,…

C进阶:7.程序环境和预处理

目录 1.程序的翻译环境和执行环境 2.详解编译 链接 2.1翻译环境 2.2编译本身也分为几个阶段&#xff1a; 2.3运行环境 3.预处理详解 3.1预定义符号 3.2 #define 3.2.1 #define 定义标识符 3.2.2 #define 定义宏 3.2.3 #define 替换规则 3.2.4 # 和 ## 3.2.5带副…

大规模食品图像识别:T-PAMI 2023论文解读

美团基础研发平台视觉智能部与中科院计算所展开科研课题合作&#xff0c;共同构建大规模数据集Food2K&#xff0c;并提出渐进式区域增强网络用于食品图像识别&#xff0c;相关研究成果已发表于T-PAMI 2023。本文主要介绍了数据集特点、方法设计、性能对比&#xff0c;以及基于该…

Unreal Engine 虚幻引擎,性能分析,优化(二)

一、CPU 性能分析 如渲染线程中出现 CPU 受限&#xff0c;原因可能是绘制调用过多。这是一个常见问题&#xff0c;美术师通常会将绘制调用进行组合&#xff0c;从而减少消耗&#xff08;如&#xff1a;将多个墙壁组合为一个网格体&#xff09;。实际消耗存在于多个区域中&…

Ubuntu 22.04.2 发布,可升级至 Linux Kernel 5.19

Ubuntu 22.04 LTS (Jammy Jellyfish) Ubuntu 22.04.2 发布&#xff0c;可升级至 Linux Kernel 5.19 请访问原文链接&#xff1a;Ubuntu 22.04 LTS (Jammy Jellyfish)&#xff0c;查看最新版。原创作品&#xff0c;转载请保留出处。 作者主页&#xff1a;www.sysin.org 发行说…

file_get_contents 打开本地文件报错: failed to open stream: No such file or directory

php 使用file_get_contents时报错 failed to open stream: No such file or directory (打开流失败&#xff0c;没有这样的文件或目录) 1. 首先确保文件路径没问题 最好是直接复制一下文件的路径 2. windows电脑可以右键该文件 → 属性→安全 →对象名称 选中后复制一下 3. 然后…

【数据存储】浮点型在内存中的存储

目录 一、存储现象 二、IEEE标准规范 1.存储 2.读取 三、举例验证 1.存储 2.读取 浮点型存储的标准是IEEE&#xff08;电气电子工程师学会&#xff09;754制定的。 一、存储现象 浮点数由于其有小数点的特殊性&#xff0c;有很多浮点数是不能精确存储的&#xff0c;如&#…

【unittest学习】unittest框架主要功能

1.认识unittest在 Python 中有诸多单元测试框架&#xff0c;如 doctest、unittest、pytest、nose 等&#xff0c;Python 2.1 及其以后的版本已经将 unittest 作为一个标准模块放入 Python 开发包中。2.认识单元测试不用单元测试框架能写单元测试吗&#xff1f;答案是肯定的。单…

UNIAPP实战项目笔记58 注册成功信息存储到数据库

UNIAPP实战项目笔记58 注册成功信息存储到数据库 注册时候验证手机验证码 验证码通过后讲用户信息存入数据库 实际案例图片 后端接口文件 index.js var express require(express); var router express.Router(); var connection require(../db/sql.js); var user require(…